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.
SSIS Tutorial Introduction
The Microsoft SQL Server Integration Services or SSIS 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, mine data, and downloading or copy files. Next, extract and transfer data from XML to SQL, etc.
You need Data Tools or BIDS to develop or create an SSIS integration package. Therefore, I suggest you install the SQL Server Data Tools, Visual Studio, or Business Intelligence Development Studio (BIDS) to practice this SSIS tutorial.
This SSIS tutorial covers all the topics on Connection Managers, Data Sources, Transformations, Control Flow, and Data flow tasks.
What is SSIS?
Firstly, the SSIS ETL tool Extracts data from different sources and transforms that data according to user requirements. And then loads data into various destinations.
Secondly, 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.
Requirements for the SSIS project
You need a development environment and a Management Studio to work with the SSIS packages tutorial. And the Microsoft SQL Server provides two options to develop the package, first using BIDS or SSDT. But the second option is Import and Export wizard.
You can use the second option to perform the basic data loading because SSIS 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 SSIS packages in a production environment.
What is the SSIS Package Work environment?
The tutorial screenshot below shows the SSIS work environment and how it is used to create SQL Server Integration Services projects and learn.
From the above screenshot, we divided the SSIS window into different parts.
- Solution Explorer is a combination of project level connection managers, actual packages, and project parameters.
- Properties: Use this window to change the properties of every task.
- 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.
- Information: This shows the information about SSIS toolbox items, and this tutorial covered all of them.
- Connection Managers: Use this window to create a package level connection managers
- Package Designer window.
What is SSIS 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.
Whare are 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. The two most powerful components 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 a package without opening the SSIS interface. For instance, with the .Net application, you can create a package. Next, perform some operations, and deploy them to the SQL Server catalog.
This section of the SSIS article explains everything about the control flow tasks. It includes file system tasks, FTP operations, execute package, execute process, send mail task, etc.
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 tutorial examples. Because we use these two databases in this entire section. Please refer to Install Adventure Work and SELECT Statements in Server.
SSIS Tutorial on Connection Managers
This SQL SSIS tutorial extracts data from different sources, transforms 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 SSIS connection manager contains the physical connection string properties to create or establish a connection at a run time. In SQL Server 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 SSIS project level connection managers shared among all the packages in that project. It is available at the project deployment. This section of the tutorial covers establishing connections between this SQL SSIS and different data sources.
Learn everything about the SSIS Connection Managers tutorial 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.
- Connection Managers Introduction
- OLE DB Connection Manager
- ADO Connection Manager
- ADO.NET Connection Manager
- Cache Connection Manager
- EXCEL Connection Manager
- File Connection Manager
- FTP Connection Manager
- SMO Connection Manager
SSIS Tutorial on Sources
The next two days concentrate on learning the SSIS tutorial on Source & Destinations. As I said before, if you know the connection managers, you are good with Destinations and Sources.
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. The following tutorial lists common sources used in the SSIS package development.
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. Because in all the SSIS tutorial examples, we explained each transformation along with Source and Destination. However, you can skip those steps.
The Transformations modify or clean the SQL Server databases data, performs 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
- List of Transformations
- Audit Transformation
- Aggregate Transformation Basic Mode
- Aggregate Advanced Mode – Configure Multiple Outputs
- Cache Transformation
- Character Map Transformation
- Conditional Split Transformation
- Copy Column Transformation
- Data Conversion Transformation
- Derived Column Transformation
- Export Column Transformation
- Fuzzy Grouping
- Fuzzy Lookup
- Import Column
- Lookup Introduction
- Merge Transformation
- Merge Join Transformation
- Multicast Transformation
- OLE DB Command Transformation
- Percentage Sampling
- Pivot Transformation in 2008R2
- Pivot Transformation in 2014
- Row Count
- Row Sampling
- Script Component As Source
- Use Script Component as Transformation
- Script Component as Destination
- Slowly Changing Dimension
- Sort Transformation
- Term Lookup Transformation
- Term Extraction Introduction
- Union All
By the 15th day of this course, 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 control flow tasks within this control flow tab, 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 transformations.
SSIS Containers Tutorial
This section covers the containers available in this ETL tool. The following containers provide the structure of the package or provide looping functionality.
- For Loop Container
- ForEach Loop Container
SSIS Control Flow Tasks tutorial
- Bulk Insert Task
- Data Profiling Task
- Execute T-SQL Statement Task
- Execute SQL Task
- Execute Package Task
- File System Task
- FTP Task
- Script Task
- Transfer SQL Server Objects Task
- Web Service Task
- XML Task – Validate XML File
SSIS Deployment Tutorial
After building or developing the SQL 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 tutorial.
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.
- Creating Integration Service Catalog
- Deploy Projects using BIDS
- Deploy Project using SQLServer
- Use Deployment Wizard to Deploy Project
- Error Handling
- Event Handlers
- Package Configurations Introduction
- Package Protection Levels
SQL SSIS Tutorial on Import and Export Data Wizard
You can use the SSIS Import and Export wizard if you quickly want to move or load from source to destination. You can perform the following import and export operations using a Wizard. This wizard might be a starting point for package development.
- Export from Database to Flat File using Import & Export Wizard
- Import from Flat File to Database using Import Export Wizard
- Export Data from DB to Excel using Wizard
- 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.
- Incremental Load
- Export From Database to Excel File
- Export From DB to Flat File
- Query Builder
- How to remove Double Quotes in Excel Sheet
- How to remove Double Quotes in Flat or CSV File
- Text Qualifier Property
- Difference between Project Level and Package Level Connection managers
- Project Parameters Vs. Package Parameters
- Send Emails using Script Task
You can also deploy packages to the cloud platform Azura. And also, you can schedule the deployment of the package to Azura.
We have to deploy the whole project to add one additional package, but it is not the case with the Integration services. 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 catalog database has the 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.
It supports the Always Encrypted feature. Therefore, it allows you to load data to encrypted database columns.
You can see what columns are throwing errors, find erroneous data, and effectively diagnose the issue by redirecting the wrong data to the error output.
Disadvantages of SSIS
To configure the SSIS event logging, you have to edit the registry keys, which we cover 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 script components, you have to update the assembly versions referenced by the members manually.
It is a business intelligence tool that provides data transformation solutions for various organizations. It accepts all kinds of data sources (text, CSV, Excel, XML, database, etc.), transforms data, and loads data warehouse, text, excel CSV, etc.
It is an ETL tool (Extract, Transform, and Load) helpful for loading data into the data warehouse.
The Microsoft SQL Server is a relational database engine. In contrast, the SSIS is an integral part of the SQL and an ETL tool.
As it supports the Microsoft .NET framework, developers can use their choice of supporting languages to build tasks.
It depends upon the personal choice or the company’s requirements. Fortunately, there are a lot of ETL tools available in the current market, and Informatica is one of the tough competitors.
Yes. Although it performs powerful transformations and heavy lifting, the tasks are easy to understand. The best part is you don’t need any programming knowledge. All you have to do is understand each task or transformation functionality.
Yes. It comes free with the SQL Server license and is an easy and powerful tool for any company.
Yes. It is still one of the leading ETL tools in the market. The wide variety of data flows, and control flow tasks are straightforward to implement and powerful to transfer data.
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 Integration Services rely on SQL Server Agent for scheduling the operations.
No. You can only execute the package with the SQL Server license.
Most of the control flow tasks and data flow tasks do not require any coding. However, you can choose between vb.net and C# while working with script tasks.