<?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: Loading data with append option using dataflow and problem with the deleted rows in Dataflow</title>
    <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4141811#M3789</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for the input. I end up with three elements in my pipeline.&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;The first dataflow extracts the latest transactions and appends them to the table in the Lakhouse.&lt;/P&gt;&lt;P&gt;The second dataflow is getting the deleted transactions IDs or transactions in the source table and not in the destination lakehouse and saving them in the staging Lakehouse.&lt;/P&gt;&lt;P&gt;In the third step, Notebook is cleaning the deleted id's first and then deleting the duplicated rows based on the latest date field for the primarykey.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I thought of changing the first dataflow, before appending the new transactions into Lakhouse check for the duplication, but I cannot find the solution. Let me know if you find any further improvement steps in this process.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 10 Sep 2024 02:49:54 GMT</pubDate>
    <dc:creator>anusha_2023</dc:creator>
    <dc:date>2024-09-10T02:49:54Z</dc:date>
    <item>
      <title>Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137585#M3767</link>
      <description>&lt;P&gt;Working on the dataflows and have encountered a couple of challenges that I would like to seek your advice on.&lt;/P&gt;&lt;P&gt;Current Setup:&lt;BR /&gt;Initial Dataflow: I constructed a dataflow to load necessary tables via the On-Premises Gateway. Every day, we truncate and reload the tables, which is consuming significant time and capacity in Microsoft Fabric.&lt;BR /&gt;Incremental Dataflow: To address the load issue, I developed a second dataflow to capture only updated information based on the max date column from the Lakehouse table. This data is appended to the existing tables in the Lakehouse.&lt;BR /&gt;Problems:&lt;BR /&gt;Duplicate Rows: Despite implementing incremental loading, I am ending up with duplicate rows in the Lakehouse tables, which I am currently managing using a notebook for deduplication.&lt;/P&gt;&lt;P&gt;Deleted Rows: I need a way to track and handle deleted rows from the source, ensuring that the same deletions are reflected in the destination tables in the Lakehouse.&lt;/P&gt;&lt;P&gt;Proposed Solution:&lt;BR /&gt;I am considering setting up a third dataflow to extract only the primary keys from the source, loading them into a staging table in the Lakehouse. I would then handle the deletion logic inside a notebook by comparing the staging table against the existing data.&lt;/P&gt;&lt;P&gt;Request for Feedback:&lt;BR /&gt;Could you please provide your thoughts on the following:&lt;/P&gt;&lt;P&gt;Is this approach of using a third dataflow and notebook-based deletion tracking an optimal solution?&lt;BR /&gt;What are the best practices or more efficient ways to reduce computational overhead when handling updates and deletions in such scenarios?&lt;BR /&gt;Any guidance or suggestions on how to streamline this process would be highly appreciated.&lt;/P&gt;&lt;P&gt;Thank you for your time and support.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 12:37:11 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137585#M3767</guid>
      <dc:creator>anusha_2023</dc:creator>
      <dc:date>2024-09-06T12:37:11Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137765#M3768</link>
      <description>&lt;LI-CODE lang="markup"&gt;Deleted Rows: I need a way to track and handle deleted rows from the source, ensuring that the same deletions are reflected in the destination tables in the Lakehouse.&lt;/LI-CODE&gt;
&lt;P&gt;Power BI cannot modify individual rows. The lowest level available is the partition. You need to process the entire partition even if there is a change only in a single column/single row.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 13:50:47 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137765#M3768</guid>
      <dc:creator>lbendlin</dc:creator>
      <dc:date>2024-09-06T13:50:47Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137836#M3770</link>
      <description>&lt;P&gt;&lt;SPAN&gt;This is not inside Power BI. Loading data inside the Fabric environment workspace using dataflow gen2 through on-premises gateway connection.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 14:18:40 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4137836#M3770</guid>
      <dc:creator>anusha_2023</dc:creator>
      <dc:date>2024-09-06T14:18:40Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138166#M3772</link>
      <description>&lt;P&gt;Can you use a Notebook and do Upsert (Merge) instead of using Dataflow Gen2?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://delta.io/blog/2023-02-14-delta-lake-merge/" target="_blank"&gt;https://delta.io/blog/2023-02-14-delta-lake-merge/&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 17:59:32 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138166#M3772</guid>
      <dc:creator>frithjof_v</dc:creator>
      <dc:date>2024-09-06T17:59:32Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138180#M3773</link>
      <description>&lt;P&gt;I need to get the current state of source primary keys. In order to get the data I do have only option connect through dataflow gen2 beacuse of on-premises data in IFS BI tool through on-premises gateway.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 18:03:17 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138180#M3773</guid>
      <dc:creator>anusha_2023</dc:creator>
      <dc:date>2024-09-06T18:03:17Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138189#M3775</link>
      <description>&lt;P&gt;Could you copy the data into a staging table by using Data Pipeline Copy Activity, and then use the Notebook to do the upsert?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hopefully Data Pipeline supports on-prem gateway.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Or you could try to use the Dataflow Gen2 to write to a destination staging table, and then use the Notebook to do the upsert from the staging table into the final destination table.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anyway, for doing upserts and handling deletes for a Lakehouse table, you will need to use Notebook. I think you are on the right track.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dataflow and Data Pipeline can only do full overwrite or append. So for your need, you will need to include a Notebook (if full overwrite is not an option for you).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;About the performance / resource utilization - I have no idea. I would just try it out and try to make it as efficient as possible.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2024 18:14:52 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4138189#M3775</guid>
      <dc:creator>frithjof_v</dc:creator>
      <dc:date>2024-09-06T18:14:52Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4139603#M3780</link>
      <description>&lt;P&gt;&lt;FONT&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="643716" data-lia-user-login="anusha_2023" class="lia-mention lia-mention-user"&gt;anusha_2023&lt;/a&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you very much frithjof_v&amp;nbsp;and lbendlin&amp;nbsp;for your prompt reply.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Your plan for handling stream updates and deletions is comprehensive.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Some suggestions for reducing computing overhead:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Make sure your Lakehouse table has a primary key constraint, which will prevent duplicate rows from being inserted.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Deduplication logic can be implemented directly in the data flow. Use Power Query to remove duplicates based on the primary key before loading the data into Lakehouse.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The separation of ETL processes into staging and transforming data streams can help optimize refresh times and reduce computational overhead.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Periodically monitor the performance of data streams and optimize queries to ensure efficient data processing.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://learn.microsoft.com/en-us/power-query/dataflows/best-practices-for-dimensional-model-using-dataflows#staging-dataflows" target="_blank"&gt;Best practices for creating a dimensional model using dataflows - Power Query | Microsoft Learn&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Nono Chen&lt;/P&gt;
&lt;P&gt;If this &lt;STRONG&gt;&lt;EM&gt;post&lt;/EM&gt;&lt;/STRONG&gt;&amp;nbsp;helps, then please consider&amp;nbsp;&lt;STRONG&gt;&lt;EM&gt;Accept it as the solution&lt;/EM&gt;&lt;/STRONG&gt;&amp;nbsp;to help the other members find it more quickly.&lt;/P&gt;</description>
      <pubDate>Mon, 09 Sep 2024 02:24:39 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4139603#M3780</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-09-09T02:24:39Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4141811#M3789</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for the input. I end up with three elements in my pipeline.&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;The first dataflow extracts the latest transactions and appends them to the table in the Lakhouse.&lt;/P&gt;&lt;P&gt;The second dataflow is getting the deleted transactions IDs or transactions in the source table and not in the destination lakehouse and saving them in the staging Lakehouse.&lt;/P&gt;&lt;P&gt;In the third step, Notebook is cleaning the deleted id's first and then deleting the duplicated rows based on the latest date field for the primarykey.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I thought of changing the first dataflow, before appending the new transactions into Lakhouse check for the duplication, but I cannot find the solution. Let me know if you find any further improvement steps in this process.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2024 02:49:54 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4141811#M3789</guid>
      <dc:creator>anusha_2023</dc:creator>
      <dc:date>2024-09-10T02:49:54Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4141866#M3790</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="643716" data-lia-user-login="anusha_2023" class="lia-mention lia-mention-user"&gt;anusha_2023&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps you can consider configuring incremental refreshes.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Make sure your data extraction process is incremental, meaning it only gets new records or changed records since the last load.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Nono Chen&lt;/P&gt;
&lt;P&gt;If this &lt;STRONG&gt;&lt;EM&gt;post&lt;/EM&gt;&lt;/STRONG&gt;&amp;nbsp;helps, then please consider&amp;nbsp;&lt;STRONG&gt;&lt;EM&gt;Accept it as the solution&lt;/EM&gt;&lt;/STRONG&gt;&amp;nbsp;to help the other members find it more quickly.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2024 03:14:25 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4141866#M3790</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2024-09-10T03:14:25Z</dc:date>
    </item>
    <item>
      <title>Re: Loading data with append option using dataflow and problem with the deleted rows</title>
      <link>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4142648#M3791</link>
      <description>&lt;P&gt;I think in the long run it would be better to use Parquet time travel, or proper CDC.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Sep 2024 11:21:51 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Dataflow/Loading-data-with-append-option-using-dataflow-and-problem-with/m-p/4142648#M3791</guid>
      <dc:creator>lbendlin</dc:creator>
      <dc:date>2024-09-10T11:21:51Z</dc:date>
    </item>
  </channel>
</rss>

