Forum Discussion

XhevahirMehalla's avatar
5 days ago

Difference between data flow gen and Pipeline Data Flows

For some reason I yet want to understand the difference between 

Fabric Data Flow gen 2 and Pipelines Data Flows in Fabric.

 

Which want to use?

8 Replies

  • Thanks this helps a bit.

    We have 94 Pipelines in Synapse and all have copy activity to start and then many steps to transformw which uses Mapping data flow. 

    We are planning to migrate to fabric and some data flows are so large and we 100s of steps and I am thinking how can we deal with them. 

    Will they migrate the Data flow gen 2 or we need to conver them into Spark/Notebooks.

     

    Any tips here?

  • Hi XhevahirMehalla,

    I think the earlier replies already cover the basics, so I will add the part that usually decides which one to pick in practice.

    The two are not really competing options. A Dataflow Gen2 is a Power Query transformation item, while a pipeline is the orchestrator and its Copy activity is the bulk mover. A pipeline can also call a Dataflow Gen2 through the Dataflow activity, so they are often used together.

    The choice normally comes down to transformation shape, data volume and who will maintain it. Microsoft summarizes the trade-offs in its Fabric decision guide

    A simple way to think about it is like this

    move data as is, large volume
    -> pipeline Copy activity
    
    reshape, join, clean with a low code UI
    -> Dataflow Gen2
    
    heavy custom logic or very large transforms
    -> notebook, called from a pipeline

    Two practical points are worth checking. A Dataflow Gen2 consumes capacity based on the Power Query engine run time, so a heavy refresh can cost more than a Copy activity doing the same movement, and staging also adds storage and an extra hop. It also helps a lot if your source steps fold back to the source, because then the work happens upstream and not in the mashup engine.

    So I would start with a pipeline Copy activity for ingestion, add a Dataflow Gen2 only for the shaping steps that really need Power Query, and move that part to a notebook if the volume grows.

    AI-assisted drafting: AI was used to help structure and phrase this response. I reviewed and validated the technical content before posting.

  • They solve different problems, so you usually pick one based on what you need rather than one being better than the other.

    Dataflow Gen2 is a transformation tool. It uses Power Query online, so you work visually with steps (filter, join, pivot, custom columns, M code). It is best when you need to shape data, clean it, combine sources, or expose a reusable transformed table. It writes results into a Lakehouse, Warehouse, SQL DB, or back as a dataflow queryable from Power BI. It is slower per row than a pipeline copy, but far easier to author transformations in.

    Pipelines in Fabric Data Factory are an orchestration tool, almost identical to Azure Data Factory. The main data-moving activity inside a pipeline is Copy Data, which does source-to-sink movement at very high throughput but with little or no transformation. Pipelines also run notebooks, stored procedures, Dataflow Gen2 activities, foreach loops, triggers, and so on.

    In practice: if you are just moving data from A to B with no reshaping, use a pipeline with the Copy Data activity because it is the fastest. If you need to shape, join, or cleanse before loading, use Dataflow Gen2. If you need both, use a pipeline that first runs Copy Data for bulk ingestion, then calls a Dataflow Gen2 (or a notebook) for transformations.

    Also note the two write differently to a Lakehouse. Dataflow Gen2 writes to the Delta table through the Power Query engine, while a pipeline Copy writes files or Delta directly. For very large volumes, a pipeline Copy or a notebook is usually faster than a Dataflow Gen2.

     

    If this helped, a thumbs up and marking it as the accepted solution would be appreciated.

     

    Thanks,
    Shai Karmani

     

    Let's connect in LinkedIn

  • Hi XhevahirMehalla​ 

    When you are saying "Pipeline Data Flows" do you mean the Dataflow activity you drop onto a Data Factory pipeline canvas in Fabric. That activity has no transformation engine of its own, it just points at and triggers a Dataflow Gen2 item you've already built. Same Power Query engine, just orchestrated inside a bigger workflow alongside Copy, Notebook, Stored Procedure, and so on. There is no standalone "Mapping Data Flow" activity in a Fabric pipeline.

     

    Did I answer your question, please mark the post as a solution or consider a like.

  • Can you be more specific on what you mean by data flow in Pipeline?
    Basically Dataflow gen2 is low code way of doing transformations within MSFT Fabric with underlying transformation across Power Query. You can explicitly trigger/schedule a dataflow gen2 but you can also trigger it via dataflow activity within Fabric data pipeline.