<?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: How to implement Incremental Load logic on the Fact table in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354207#M120232</link>
    <description>&lt;P&gt;Thank You very much. I was able to implement what I needed based on your inputs.&lt;/P&gt;</description>
    <pubDate>Tue, 11 Jun 2019 18:28:41 GMT</pubDate>
    <dc:creator>DEV4</dc:creator>
    <dc:date>2019-06-11T18:28:41Z</dc:date>
    <item>
      <title>How to implement Incremental Load logic on the Fact table</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354205#M120230</link>
      <description>&lt;P&gt;Hello All,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;I have a fact table that is being loaded every day in full load manner meaning truncate and reload every day. (5 million records every day)&lt;/P&gt; 
&lt;P&gt;I have like 14 look up dimension tables which are loading the end fact table.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Now the client asked me to implement incremental logic on this fact table. I was asked not to use the CDC component as&amp;nbsp; the client said they can not make any changes to source tables or on source database because of their policies.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Can some one please help me how to implement this logic as I have never implemented incremental logic on a fact table.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;Below is how my job looks like and FCT_SN_FINAID_OPERATIONS id my final table that is being loaded.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture.PNG" style="width: 999px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M5Sg.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/135106i0D520E156844B74C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M5Sg.png" alt="0683p000009M5Sg.png" /&gt;&lt;/span&gt;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;Thank You&lt;/P&gt;</description>
      <pubDate>Wed, 05 Jun 2019 21:41:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354205#M120230</guid>
      <dc:creator>DEV4</dc:creator>
      <dc:date>2019-06-05T21:41:33Z</dc:date>
    </item>
    <item>
      <title>Re: How to implement Incremental Load logic on the Fact table</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354206#M120231</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp; &amp;nbsp; When you are doing incremental logic, you need to check whether the table is already having the data based on key columns. If the data is present, pick the keys from the records and any change is an update to this fact table. If the data is not present, you can do straight insert.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;Now your query might be how to differentiate the records to insert and update based on key columns. It can be done with following steps.&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;a) Do an inner join between your stage table (where you will have full data from source) and fact table based on key columns. This will give you the records which are already present. Now use this dataset as a lookup for a flow where you need to read the input stage table as the main flow again.&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;b) Do the inner join with both datasets using inner join. But in the output section, select the option to pick only inner join reject records. This means we are picking only those records which are not present in the DB. These records can be send directly for insert.&lt;/P&gt; 
&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="image.png" style="width: 626px;"&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M5U3.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/136684iEB691C2A27726F8C/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M5U3.png" alt="0683p000009M5U3.png" /&gt;&lt;/span&gt;&lt;/SPAN&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;</description>
      <pubDate>Thu, 06 Jun 2019 20:44:01 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354206#M120231</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2019-06-06T20:44:01Z</dc:date>
    </item>
    <item>
      <title>Re: How to implement Incremental Load logic on the Fact table</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354207#M120232</link>
      <description>&lt;P&gt;Thank You very much. I was able to implement what I needed based on your inputs.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Jun 2019 18:28:41 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-implement-Incremental-Load-logic-on-the-Fact-table/m-p/2354207#M120232</guid>
      <dc:creator>DEV4</dc:creator>
      <dc:date>2019-06-11T18:28:41Z</dc:date>
    </item>
  </channel>
</rss>

