<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Performance tuning MySQL-tMap-MySQL in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366135#M129659</link>
    <description>Hi all, 
&lt;BR /&gt;I took this further and created a number of different versions of: 
&lt;BR /&gt;MySQLInput -&amp;gt; tMap -&amp;gt; "Output" 
&lt;BR /&gt; 
&lt;BR /&gt;MySQLInput: 
&lt;BR /&gt;is now joining the two tables and outputs only ID of the records mismatching (what I need) 
&lt;BR /&gt;tMap: 
&lt;BR /&gt;is only adding a row (an int flag) 
&lt;BR /&gt;"Output" i did in three version: 
&lt;BR /&gt;a) MySQLBulkOutputExecute 
&lt;BR /&gt;b) MySQLBulkOutput triggering MySQLBulkExec 
&lt;BR /&gt;c) MySQLBulkOutput-&amp;gt;MySQLRow (Disable Index)-&amp;gt;MySQLBulkExec-&amp;gt;MySQLRow (Enable Index) 
&lt;BR /&gt;Results: 
&lt;BR /&gt;a) 16 900 r/s 
&lt;BR /&gt;b) 12 800 r/s 
&lt;BR /&gt;c) 10 000 r/s 
&lt;BR /&gt;To me this sounds wrong. The (c) version with bulk loading AND with indexes switched of during update should be the fastest. 
&lt;BR /&gt;Am I missing something?</description>
    <pubDate>Wed, 18 Jan 2012 09:32:49 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2012-01-18T09:32:49Z</dc:date>
    <item>
      <title>Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366129#M129653</link>
      <description>As a part of a sub-job, I'm 
&lt;BR /&gt;- pulling a limited set of columns (user_id, uuid, crc) of the ca 20 million records. 
&lt;BR /&gt;- For each row I use a tMap looking up another CRC with uuid, from another table (20 million records) 
&lt;BR /&gt;- inside the tMap I compare the two CRCs and outputs a field flagging if the crcs are different. 
&lt;BR /&gt;- this i output/update to the same table as I input from. 
&lt;BR /&gt;MySQLInput -&amp;gt; tMap -&amp;gt; MySQLOutput 
&lt;BR /&gt;The tMap is configured to: 
&lt;BR /&gt;- loading the lookup once 
&lt;BR /&gt;- store temp data on disc (with path set) 
&lt;BR /&gt;- max buffer size is set to 200 000 
&lt;BR /&gt;The MySQL ouptut-component is set to 
&lt;BR /&gt;- update only 
&lt;BR /&gt;- commit every 50 000 
&lt;BR /&gt;- batch size 10 000 
&lt;BR /&gt; 
&lt;BR /&gt;Problem: This is going at a approx 1000 r/s which is tooo slow. 
&lt;BR /&gt;Is there something I can tweak with the current set of components? 
&lt;BR /&gt;Or do I need to use the ELT-components? 
&lt;BR /&gt;Or even write this whole part of the subjob as pure SQL? 
&lt;BR /&gt;Any hints is appreciated!</description>
      <pubDate>Sat, 16 Nov 2024 12:27:52 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366129#M129653</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-11-16T12:27:52Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366130#M129654</link>
      <description>Hi
&lt;BR /&gt;For performance issue, I can't give you a confirmed answer.
&lt;BR /&gt;As you say, you have use "store temp data on disc" and remove tedious columns.
&lt;BR /&gt;But i'm sure pure SQL must be the best way considering performance.
&lt;BR /&gt;Regards,
&lt;BR /&gt;Pedro</description>
      <pubDate>Thu, 12 Jan 2012 06:08:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366130#M129654</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-01-12T06:08:24Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366131#M129655</link>
      <description>Hi geuder
&lt;BR /&gt;pls try this way if u use index keys for ur tables...
&lt;BR /&gt;
&lt;BR /&gt;Before running the job first disable the index and then enable the index after the job is over....design the job as given below...
&lt;BR /&gt;tmysqlrow--&amp;gt;"ALTER TABLE tablename DISABLE KEYS"
&lt;BR /&gt;on subjob ok
&lt;BR /&gt;tmysqlinput--tmap--tmysqlouput
&lt;BR /&gt;on subjob ok
&lt;BR /&gt;tmysqlrow--&amp;gt; "ALTER TABLE tablename ENABLE KEYS"</description>
      <pubDate>Thu, 12 Jan 2012 12:15:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366131#M129655</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-01-12T12:15:20Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366132#M129656</link>
      <description>Thanks! 
&lt;BR /&gt;I haven't yet tried to turn off and on the indexs, 
&lt;BR /&gt;but I moved the join from the tMap to sql in the MySQL input component and loaded the table with the bulk loading components. 
&lt;BR /&gt;Total subjob ran 20 million rows in 21 minutes, which is a great improvement.</description>
      <pubDate>Fri, 13 Jan 2012 16:34:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366132#M129656</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-01-13T16:34:51Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366133#M129657</link>
      <description>Bulk loader is the fastest way for large quantities.&lt;BR /&gt;What condition were you using for your join? If the data is sorted FIRST should be the fastest join as it saves searching the whole table.</description>
      <pubDate>Fri, 13 Jan 2012 16:48:40 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366133#M129657</guid>
      <dc:creator>janhess</dc:creator>
      <dc:date>2012-01-13T16:48:40Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366134#M129658</link>
      <description>Hi, 
&lt;BR /&gt;i think it wont search the whole table if index is defined if index is removed then use a sorter before the join. 
&lt;BR /&gt;try to move joins to the input components and use a bulk execute. 
&lt;BR /&gt;Did i just answer what was just answered in the above posts!!!! 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009MA9p.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/138034i5F552429DA646D6F/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009MA9p.png" alt="0683p000009MA9p.png" /&gt;&lt;/span&gt; 
&lt;BR /&gt;But then that is it! else 
&lt;BR /&gt;you can simply execute a SQL query!!</description>
      <pubDate>Fri, 13 Jan 2012 18:11:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366134#M129658</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-01-13T18:11:00Z</dc:date>
    </item>
    <item>
      <title>Re: Performance tuning MySQL-tMap-MySQL</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366135#M129659</link>
      <description>Hi all, 
&lt;BR /&gt;I took this further and created a number of different versions of: 
&lt;BR /&gt;MySQLInput -&amp;gt; tMap -&amp;gt; "Output" 
&lt;BR /&gt; 
&lt;BR /&gt;MySQLInput: 
&lt;BR /&gt;is now joining the two tables and outputs only ID of the records mismatching (what I need) 
&lt;BR /&gt;tMap: 
&lt;BR /&gt;is only adding a row (an int flag) 
&lt;BR /&gt;"Output" i did in three version: 
&lt;BR /&gt;a) MySQLBulkOutputExecute 
&lt;BR /&gt;b) MySQLBulkOutput triggering MySQLBulkExec 
&lt;BR /&gt;c) MySQLBulkOutput-&amp;gt;MySQLRow (Disable Index)-&amp;gt;MySQLBulkExec-&amp;gt;MySQLRow (Enable Index) 
&lt;BR /&gt;Results: 
&lt;BR /&gt;a) 16 900 r/s 
&lt;BR /&gt;b) 12 800 r/s 
&lt;BR /&gt;c) 10 000 r/s 
&lt;BR /&gt;To me this sounds wrong. The (c) version with bulk loading AND with indexes switched of during update should be the fastest. 
&lt;BR /&gt;Am I missing something?</description>
      <pubDate>Wed, 18 Jan 2012 09:32:49 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Performance-tuning-MySQL-tMap-MySQL/m-p/2366135#M129659</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2012-01-18T09:32:49Z</dc:date>
    </item>
  </channel>
</rss>

