<?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: Reading from mqueue in a controlled manner in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283012#M57032</link>
    <description>&lt;P&gt;We are using WebShphere MQ.&lt;/P&gt;
&lt;P&gt;Is there anyway we can design our process to read limited number of messages?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was thinking to create multiple files with limited messages in each file but not very lucky..&lt;/P&gt;</description>
    <pubDate>Fri, 22 Feb 2019 01:30:39 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2019-02-22T01:30:39Z</dc:date>
    <item>
      <title>Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283010#M57030</link>
      <description>&lt;P&gt;Hi All&lt;/P&gt;
&lt;P&gt;In a mqueue we are receiving continuous stream of data. I need to unload the data into a file.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I have created a batch job to unload the data into a file and continuous job to call the batch job every 2 mins.&lt;/P&gt;
&lt;P&gt;Now there could be a situation since the data is coming into the mqueue continuously the unload process might never end.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is there a way to just unload messages in a controlled manner?&lt;/P&gt;
&lt;P&gt;If not how can i handle this scenario more effectively?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For example: if there are 100 K messages&lt;/P&gt;
&lt;P&gt;unload 20K messages ---&amp;gt; Sleep for 2 mins ---&amp;gt;&amp;nbsp;unload 20K messages --&amp;gt;&amp;nbsp;Sleep for 2 mins ........etc....&lt;/P&gt;</description>
      <pubDate>Thu, 21 Feb 2019 18:34:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283010#M57030</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-21T18:34:30Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283011#M57031</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;which MQ do you use?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;limit number of received messages is possible for ActiveMQ&lt;/P&gt;</description>
      <pubDate>Thu, 21 Feb 2019 21:32:03 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283011#M57031</guid>
      <dc:creator>vapukov</dc:creator>
      <dc:date>2019-02-21T21:32:03Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283012#M57032</link>
      <description>&lt;P&gt;We are using WebShphere MQ.&lt;/P&gt;
&lt;P&gt;Is there anyway we can design our process to read limited number of messages?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I was thinking to create multiple files with limited messages in each file but not very lucky..&lt;/P&gt;</description>
      <pubDate>Fri, 22 Feb 2019 01:30:39 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283012#M57032</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-22T01:30:39Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283013#M57033</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; You need to use a Route for your use case as it is the best way to call a Talend job based on the input data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp; Please refer the details below to read about Routes.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.talend.com/reader/TKUQ4WRBbYZRnl9OyAgr5w/sKkTT1kP7~AWAEv2EsZFhw" target="_blank" rel="nofollow noopener noreferrer"&gt;https://help.talend.com/reader/TKUQ4WRBbYZRnl9OyAgr5w/sKkTT1kP7~AWAEv2EsZFhw&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Warm Regards,&lt;BR /&gt;Nikhil Thampi&lt;/P&gt;
&lt;P&gt;Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 Feb 2019 04:01:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283013#M57033</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-22T04:01:05Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283014#M57034</link>
      <description>&lt;P&gt;Hi Nikhil,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;not sure - is it correct way in this case or not?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;- first of all current task based not on input data, but on input data count&lt;/P&gt; 
&lt;P&gt;- second, author want write messages content into separate files up to&amp;nbsp;10k (an example) messages per file, but not wait till tomorrow if only 9k of messages ready right now&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;for ActiveMQ it is simple - component has both parameters - number of messages for consuming and timeout for wait before end&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;with WebsphereMQ&amp;nbsp;it is only 1 parameter - timeout&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;in theory, it is possible to count processed messages and finishing job (tDie) after receiving the expected number of messages but needs to test&lt;/P&gt; 
&lt;P&gt;but if there more efficient&amp;nbsp;way - would be good to share it!&lt;/P&gt;</description>
      <pubDate>Sat, 23 Feb 2019 06:26:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283014#M57034</guid>
      <dc:creator>vapukov</dc:creator>
      <dc:date>2019-02-23T06:26:33Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283015#M57035</link>
      <description>&lt;P&gt;&lt;A href="https://community.qlik.com/s/profile/005390000067LRbAAM"&gt;@vapukov&lt;/A&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I agree with your thoughts.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I was thinking to avoid the scenario where we are trying to make a batch job to do the work of a polling operation indirectly.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;But the option outlined should work in theory.&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Warm Regards,&lt;BR /&gt;Nikhil Thampi&lt;/P&gt; 
&lt;P&gt;Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 23 Feb 2019 12:05:44 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283015#M57035</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-23T12:05:44Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283016#M57036</link>
      <description>&lt;P&gt;Thanks for the suggestions.&lt;/P&gt;&lt;P&gt;Actually I have created a counter and for every 10000 messages I and increasing the counter by one and creating a global variable.&lt;/P&gt;&lt;P&gt;So my file name is like this and after reaching 10000 messages it's creating a new file until the complete mqueue is drained.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;By another job will continuously looks for these files and will trigger the load job to DB tables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Let me know if you see any issue with this design.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;context.OUTPUT_DIR+"/"+"fal_mqueue_extract."+(Integer)globalMap.get("seq")+"."+((String)globalMap.get("curr_time"))&lt;/P&gt;</description>
      <pubDate>Sun, 24 Feb 2019 11:36:48 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283016#M57036</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-24T11:36:48Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283017#M57037</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp; &amp;nbsp; Could you please use a tDie command to come out of the flow once you get 10k messages?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp; &amp;nbsp; You can modify the schedule to start the job again.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Could you please also try Memory run of the job (under Run tab in Studio) to analyse whether there is any memory related issues?&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Warm Regards,&lt;BR /&gt;Nikhil Thampi&lt;/P&gt; 
&lt;P&gt;Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Feb 2019 04:40:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283017#M57037</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-02-25T04:40:30Z</dc:date>
    </item>
    <item>
      <title>Re: Reading from mqueue in a controlled manner</title>
      <link>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283018#M57038</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I previously had this issue with Websphere MQ, when you look at the generated code within Talend, the looping mechanism checks&amp;nbsp; the queue depth every time around, so a constant stream of data in the queue never completes. In the end I copy/created a new custom component that checked the queue depth once at the start of the component and only looped that number of times before exiting.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;It was at a previous company where I don't have access to the code base, but that was essentially how I resolved it.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 26 Feb 2019 11:20:08 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/Reading-from-mqueue-in-a-controlled-manner/m-p/2283018#M57038</guid>
      <dc:creator>David_Beaty</dc:creator>
      <dc:date>2019-02-26T11:20:08Z</dc:date>
    </item>
  </channel>
</rss>

