SQL Server Integration Services (SSIS) Tutorial

The SQL Server Integration Services, SSIS, is a powerful ETL tool. Although it is the most powerful tool, you can quickly learn SSIS tutorials in 28 days (Maximum). Remember, it is the second-largest tool for performing Extraction, Transformation, and Load (ETL process) operations.

The SSIS ETL tool Extracts data from different sources and transforms that data according to user requirements. And then loads data into various destinations. This SSIS page covers all the topics on Connection Managers, Data Sources, Transformations, Control Flow, and Data flow tasks.

What is SSIS?

Firstly, this SSIS ETL tool helps build enterprise-level data transformation and data integration solutions. It is beneficial in loading data from regular transactional data into Data Warehouse. So you can create reports using the transformed data with the help of SSRS, Tableau, etc.

Apart from the Data Warehouse application, you can also use SQL Server Integration Services to work on typical data integration applications. Before learning the SSIS tutorial, I suggest learning SQL Server basics, at least SELECT Statements.

SSIS is the shorter version of SQL Server Integration Services, a Microsoft ETL product. It performs three operations, and for the sake of understanding, I will take a Walmart example. It has multiple stores around the world, and the data from all stores comes to the USA (data may differ based on the local market).

  1. Step 1: Extract: Get data from multiple sources, such as EXCEL, TEXT, CSV, SQL, ORACLE Database, etc.
  2. Step 2: Transformation: It helps to transform the extracted data into a meaningful or required format. For example,sorting and calculating profit from sales, sum, average, etc.
  3. Step 3: Load: Once the data comes into the required format, load the data into the Destination tables. It may be EXCEL, TEXT, CSV, SQL, ORACLE Database, etc.

What is SSIS used for?

To work with the SSIS packages, you need a development environment and a Management Studio. The Microsoft SQL Server provides two options to develop the package, first using BIDS or SSDT. However, the second option is the Import and Export wizard.

You can use the second option to perform the basic data loading because it does not need a different environment. As a result, it uses the wizard to select all the sources, transformations, and destinations.

Remember, you also need one more item called SQL Management Studio. It helps to monitor and manage the developed packages in a production environment. The SSIS Integration Service Includes the following

  • A graphical user interface to develop packages without writing any code.
  • It has many transformations and control flow tasks to clean or transform data.
  • It has a catalog database that we configure at the beginning to deploy packages, run, and manage them from SSMS. The SSIS Integration Services relies on SQL Server Agent to schedule the operations.

SSIS Tutorial Introduction

The Microsoft SQL Server Integration Services included many built-in tasks and transformations. Use them to solve complex business problems by building high-performance data integration packages. One can use this SSIS tutorial to update warehouses, data mining, and download or copy files. Next, extract and transfer data from XML to SQL, etc.

To develop or create an integration package, you need Data Tools or BIDS. Therefore, I suggest you install the SQL Server Data Tools, Visual Studio, or Business Intelligence Development Studio (BIDS) to practice this SSIS.

  1. Install Data Tools or BIDS
  2. Create a New Integration Services Project
  3. Create a New Package

SSIS Tutorial on Data Flow Task

There are three types of SSIS SQL Server Integration Services data flow components: Sources, Transformations, and Destinations. Each data flow component has an output. Use the result to connect with other members. For instance, connect the source output to transformations and then connect the transformation output to the destination.

While working with the SSIS tutorial on data flow components, you always have to check the column mappings. And this is a place where you might end up with errors. I mean wrong column mapping or no column mapping, etc.

NOTE: I suggest you download Adventure Works, and Adventure Works DW databases to practice these SSIS examples. Because we use these two databases in this entire section. Please refer to Install Adventure Work and SELECT Statements in the SQL Server.

SSIS Tutorial on Connection Managers

This SQL SSIS extracts data from different sources, transforms it, and loads it to a completely different destination. Firstly, we need a connection manager to establish the connection between the package and source and package and destination.

In addition, the connection manager contains the physical connection string properties to create or establish a connection at a run time. In SSIS Integration Services, there are two types of connection managers. And they are Package Level (designed in a 5th window) and Project Level (created in the Solution Explorer window).

The project level connection managers shared among all the packages in that project. It is available at the project deployment. This section covers establishing connections between this SQL SSIS and different data sources.

Learn everything about SSIS Connection Managers in the First two days. Generally, it takes one day to cover this topic. Most of the steps in those links are the same. I think the maximum of 2 to 3 steps may differ.

  1. Connection Managers Introduction
  2. OLE DB Connection Manager
  3. ADO Connection Manager
  4. ADO.NET Connection Manager
  5. Cache Connection Manager
  6. EXCEL Connection Manager
  7. File Connection Manager
  8. FTP Connection Manager
  9. SMO Connection Manager

SSIS Tutorial on Sources

For the next two days, concentrate on learning the SSIS tutorial on Sources & Destinations. As I said before if you know the connection managers, you are good with Destinations and Sources.

The following tutorial lists common sources used in the SSIS package development.

  1. Source Asst.
  2. ADO.NET Source
  3. Excel Source
  4. OLE DB Source
  5. Flat File Source
  6. Raw File Source

SSIS Destinations

  1. ADO.NET Destination
  2. OLE DB Destination
  3. FLAT FILE Destination
  4. Raw File Destination

The main motive of the SQL Server Integration Services package is to transfer data from various sources to a destination. It means you need a Source to get the data from and a Destination to load into it.

  1. Export Data From the Database to an Excel File
  2. Export Data From the Database to a Flat File
  3. Export SQL Table Data to Colon Delimiter Text File
  4. Export SQL Data to Fixed Width Flat File
  5. Export Data to Fixed Width with Row Delimiters File
  6. Export Table Data to Pipe Delimiter Text File
  7. Export SQL Data to Ragged Right Fixed Width File
  8. Export Table Data to Semicolon Delimiter Text File
  9. Export Table Data to Tab Delimiter Text File
  10. Export Table Data to a Flat File with a Text Qualifier
  11. Load Data From Pipe Delimiter File to SQL Server
  12. Load Data From Tab Delimiter File to SQL Server
  13. Load Flat File Blank spaces as SQL Server Nulls
  14. Load Fixed Width Flat File Data to SQL Server
  15. Load Fixed Width With Row Delimiter File to SQL
  16. Load Ragged Right Fixed Width File to SQL
  17. Load Multiple Flat Files to SQL

SSIS tutorial on Transformations

The SQL SSIS Integration Service is all about Sources, Transformations, and Destinations. You need Connection Managers to connect with sources (SQL server database, CSV, etc.) and destinations. So, if you know the connection Manager, you do not have to think about the Sources and Destinations.

Spending the next ten days is all about transformations. I don’t think; you need 10 days to complete the transformations. In all the SSIS tutorial examples, we explained each transformation along with the Source and Destination. However, you can skip those steps.

The Transformations modify or clean the SQL Server database data, perform data conversions, perform data aggregations, etc. The following section shows the list of available transformations. Please click on the link to see the definition and a practical example of each SQL Server Integration Services transformation.

SSIS Transformations List

  1. List of Transformations
  2. Audit Transformation
  3. Aggregate Transformation Basic Mode
  4. Aggregate Advanced Mode – Configure Multiple Outputs
  5. Cache Transformation
  6. Character Map Transformation
  7. Conditional Split Transformation
  8. Copy Column Transformation
  9. Data Conversion Transformation
  10. Derived Column Transformation
  11. Export Column Transformation
  12. Fuzzy Grouping
  13. Fuzzy Lookup
  14. Import Column
  15. Lookup Introduction
    1. Use OLE DB Connection Manager for Lookup Transformation
    2. Lookup Transformation in Full Cache Mode
    3. Lookup Transformation Case Sensitivity
  16. Merge Transformation
  17. Merge Join Transformation
    1. Inner Join Using Merge Join
    2. Left Outer Join Using Merge Join
    3. Right Outer Join by using Merge Join
    4. Full Outer Join
  18. Multicast Transformation
  19. OLE DB Command Transformation
    1. Delete Operations
    2. Update Operations
  20. Percentage Sampling
  21. Pivot Transformation in 2008R2
  22. Pivot Transformation in 2014
  23. Row Count
  24. Row Sampling
  25. Script Component As Source
  26. Use Script Component as Transformation
  27. Script Component as Destination
  28. Slowly Changing Dimension
    1. SCD Type 0
    2. Slowly Changing Dimension Type 1
    3. SCD Type 2
  29. Sort Transformation
  30. Term Lookup Transformation
  31. Term Extraction: This page covers the process of Extract Nouns Only, Extracting Noun Phrases Only, Extract Nouns and Noun Phrases, and Exclusion Tab.
  32. Union All
  33. Unpivot

By the 15th day of this SSIS tutorial, you might learn the Connection Managers, Sources, Destinations, and Transformations. Similarly, learn containers and the Control Flow tasks from the 15th to the 20th.

SSIS Tutorial on Control Flow Tasks

Every Integration Services package consists of a control flow tab. You can optionally use the SSIS control flow tasks within this control flow tab, as well as one or more data flow tasks. Perhaps, you can use the combination of both the control flow task and data flow tasks.

It is where we design the complete data flow. Furthermore, it is the place where we perform all the SSIS transformations.

SSIS Containers Tutorial

This section of the SSIS covers the containers available in this ETL tool. The following containers provide the structure of the package or provide looping functionality.

  1. For Loop Container
  2. ForEach Loop Container
    1. ADO.NET Schema Rowset Enum
    2. File Enum
    3. NodeList Enum
    4. SMO Enum
    5. Variable Enum

SSIS Control Flow Tasks tutorial

This section of the SSIS explains everything about the control flow tasks. It includes file system tasks, FTP operations, execute package, execute process, send mail task, etc.

  1. Bulk Insert Task
  2. Data Profiling Task
  3. Execute T-SQL Statement Task
  4. Execute SQL Task: Within the result sections, we cover the available three options such as Truncate Table – Result Set None, Single Row Result Set, and Full Result Set.
  5. Execute Package Task: It covers the process of calling or Executing Packages in the Local File System, Execute Packages in SQL Server, and Executing Packages in the Same Project.
  6. File System Task: It includes all the operations, such as Copy Directory, Copy File, Delete Directory Content, Move Directory, Delete Directory, Move a single File, Move Multiple Files, Deleting Files, Rename File, and Set Attributes.
  7. FTP Task: It covers all the operations including Send Files, Send Multiple Files, Receive Files, Receive MultipleFiles, Deleting Local Files, Creating a Remote Directory, Deleting a Remote Directory, Creating a Local Directory, Deleting a Local Directory, and Deleting Remote Files.
  8. Script Task to Send Emails.
  9. Transfer SQL Server Objects Task: It covers all the critical features such as Transferring SQL Server Tables with Data, transferring table Structures without Data, Transferring Stored Procedures, Transfer User Defined Functions, and Transferring Views.
  10. Web Service Task
  11. XML Task to Validate XML File, Transform XML File Using XSLT, and finding the difference between XML Files.

SSIS Deployment Tutorial

After the building or development of the SQL Server integration package, the next step is to deploy the package into the production environment. Spend your last two days learning the SSIS catalog and deployment methods.

Deploying the SQL SSIS Integration Services project is where we should decide the package execution time and the authorized user to perform the same. There are different ways that you can deploy your packages. It starts using BIDS/SQL data tools, Import and Export Data wizard, and Management Studio.

Therefore, you can use either of these options to deploy packages to Server. This SSIS catalog section covers the essential topics beneficial for the production environment.

  1. Creating Integration Service Catalog
  2. Deploy Projects using BIDS
  3. Deploy Project using SQLServer
  4. Use Deployment Wizard to Deploy Project
  5. Breakpoints
  6. Checkpoints
  7. Error Handling
  8. Event Handlers
  9. Logging
  10. Parameters
  11. Package Configurations Introduction
    1. Environment Variable
    2. Parent-Child Package Configuration
    3. Registry Entry
    4. Server Configuration
    5. XML Configuration File
    6. XML Configuration File in Environment Variable
  12. Package Protection Levels
  13. System variables
  14. Transactions

SQL SSIS Tutorial on Import and Export Data Wizard

If you quickly want to move or load from source to destination, you can use the Import and Export wizard. You can perform the following import and export operations using a Wizard. This wizard might be a starting point for SSIS package development.

  1. Export from Database to Flat File using Import & Export Wizard
  2. Import from Flat File to Database using Import Export Wizard
  3. Export Data from DB to Excel using Wizard
  4. Import from Excel to Database using Import Export Wizard

SSIS Interview Questions

The following is the list of a few SSIS tutorial interview questions that you might face apart from regular Transformation questions.

  1. Incremental Load
    1. Incremental Load
    2. Better Approach – Incremental Load
  2. Query Builder
  3. How to remove Double Quotes in Excel Sheet
  4. How to remove Double Quotes in Flat or CSV File
  5. Text Qualifier Property
  6. Difference between Project Level and Package Level Connection managers
  7. Project Parameters Vs. Package Parameters
  8. Best Practices
  9. Functions

What is the SSIS Package Work environment?

It is a business intelligence tool that provides data transformation solutions for various organizations. The screenshot below shows the SSIS work environment and how it is used to create and learn SQL Server Integration Services projects.

SSIS Tutorial

From the above SSIS tutorial screenshot, we had divided the window into different parts

  1. Solution Explorer: It is a combination of project-level connection managers, actual packages, and project parameters.
  2. Properties: Use this window to change the properties of every task.
  3. Toolbox: SSIS provides a lot of built-in tasks, containers, transformations, sources, destinations, and administrative tasks to solve complex business problems. Use these graphical tools by dragging and dropping those tasks in the work environment. It means we do not have to write a single line of code to perform most of the operations.
  4. Information: Shows the information about SSIS toolbox items and this tutorial covered all of them.
  5. Connection Managers: Use this window to create package-level connection managers
  6. Package Designer window.

What is the Project Development Model?

The SSIS project combines Connections Managers, Packages, and project parameters (optional). Furthermore, the SQL Server Integration Services is an ETL (Extract, Transform, and Load) tool. That means you can follow this SSIS tutorial to extract data from various sources such as Excel Files, Flat Files, XML Files, and Relational databases. Furthermore, transform (slice and dice) them according to your requirements and load the data into the destination.

SSIS Advantages

You can also deploy SSIS packages to the cloud platform Azura. Also, you can schedule the deployment of the package to Azura.

We have to deploy the whole project to add one additional SSIS package, but this is not the case with the Integration services tutorial. Instead, it allows you to add one or more packages to the existing project, called incremental package deployment.

You can restrict the SSIS Integration Services access to specific users. And. Therefore, the administrator has to run the DCOM configuration tool to grant permission.

The SSIS catalog database has an option to add the Always On Availability groups option. So, whenever a database failover happens, one of the secondary nodes becomes the primary node automatically.

SSIS supports the Always Encrypted feature. Therefore, it allows you to load data to encrypted database columns.

By redirecting the wrong data to an error output, you can see what columns are throwing errors, find erroneous data, and effectively diagnose the issue.

Important SSIS Components

Although there are many built-in components in the SSIS Integration Services, there are some situations where we need a custom task to perform some business-centric operations. There are two most powerful SSIS components to fulfill this: Script Task and Script Component. 

  • If you want the custom control flow task, use SSIS Script Task along with C# or VB that we mentioned in this tutorial and write your functions.
  • Use the script component as the Source, Destination, or Transformation for the custom data flow task.

You can also create, run, and deploy an SSIS package without opening the interface. For instance, with the .Net application, you can create a package. Next, perform some operations, and deploy them to the catalog.

Disadvantages of SSIS

In order to configure the SSIS event logging, you have to edit the registry keys, and we convert them in this tutorial.

Upgrading the SQL Server instance will not automatically upgrade the package to the current release. You have to do it on your own manually. When it comes to SSIS script components, you have to update the assembly versions referenced by the members manually.

Comments are closed.