After my first day of SSIS training my boss walked into the office and said to me, “how was the first day of class”. To which I responded, “great!” Then asked me, “so what is the difference between the control flow and data flow?” This posed a simple, but foundational concept, of SSIS. There are a few key things to remember when talking about the differences between control flow and data flow, and not just the completely obvious statement: data flow deals with data. Hopefully if you are beginning in SSIS there will be something in the information below that will help you understand the differences just a little bit better.
- Process is the key: precedence constraints control the project flow based on task completion, success or failure
- Task 1 needs to complete before task 2 begins
- Smallest unit of the control flow is a task
- Control flow does not move data from task to task
- Tasks are run in series if connected with precedence or in parallel
- Package control flow is made up of containers and tasks connected with precedence constraints to control package flow
- Unlink control flow, multiple components can process data at the same time
- Smallest unit of the data flow is a component
- Data flows move data, but are also tasks in the control flow, as such, their success or failure effects how your control flow operates
- Data is moved and manipulated through transformations
- Data is passed between each component in the data flow
- Data flow is made up of source(s), transformations, and destinations.
[…] algorithms (eg. in Scripting), in fact this represents a slightly different concept. According to Bradley Schacht, Control Flow: Process is the key: precedence constraints control the project flow based on task […]
As far as I know, Control flow are the main task or sub routines of any project and inside the control task you have ETL process this is called Data Flow. And Packages are basically the DTS, XML files that you can execute + packages are compromise of Data flow + Control flow.
Is this right, please let me know?