Home
Blog
ETL in SSIS
Enterprise
Data-Analytics

How to Set up ETL Pipeline with Microsoft SSIS: A Step-by-Step Guide (7 Updated Steps)

Boltic creates ETL tools for ERP and BI platforms, including ETL for SQL Server and no-code pipelines to bring real-time data into your warehouse.

August 23, 2021
2 mins read

Are you looking for an efficient way to extract, transform and load data from one Source to another? With Microsoft SSIS ETL (Extract, Transform and Load), you can make this process faster and easier than ever.

This step-by-step guide will show you how to set up your ETL pipeline with Microsoft SSIS in the most efficient way possible.  

 

Microsoft SSIS (SQL Server Integration Services) is a powerful platform for data integration and workflow applications. It provides a graphical environment for designing, debugging, deploying, and managing ETL solutions. With it, you can create complex data transformations with minimal coding and effort.

What is ETL?

Process of ETL Explain with Different ETL Tools

ETL stands for Extract, transform, and LoadLoad. It is a process that involves extracting data from various sources, transforming it into a format that can be loaded into a target database, and then loading it into the database.

  • Extract: The first step in ETL is to extract the data from its Source, which can be done manually or using an automated tool.

  • Transform: Once the data is extracted, it needs to be transformed into a format that can be loaded into the target database. It may involve converting it from one file type to another or performing some Transformation of the data itself.

  • Load: The final step in ETL is to load the transformed data into the target database. This can be done manually or using an automated tool.

What are the Advantages of ETL Tools?

An Illustration of ETL Tools

1. ETL tools can help you save time by automating the data extraction and transformation process.

2. ETL tools can help you improve data quality by providing an easy way to validate and cleanse data before it is loaded into the target system.

3. ETL tools can help you reduce costs by eliminating the need for manual data entry and reducing the number of errors in your data.

4. ETL tools can help you increase efficiency by allowing you to reuse existing data transformation logic across multiple projects.

5. ETL tools can help you improve decision-making by providing visibility into your data through reports and dashboards.

6. ETL tools can help you ensure data security by providing access control and encryption features.

What is Microsoft SSIS ETL?

Microsoft SSIS ETL SQL Server Logo

Microsoft SSIS (SQL Server Integration Services) is a tool that enables you to perform Extract, transform, and load (ETL) operations. It is a component of the Microsoft SQL Server database software.

SSIS is used to build data warehouses and data marts. It can also be used for data cleansing and data migration. SSIS includes a graphical user interface (GUI) that enables you to create ETL packages.

The GUI makes it easy to drag and drop objects onto the canvas and connect them. You can also use the GUI to edit package properties and variables.

SSIS packages are made up of tasks. Tasks are individual units of work that are executed one after the other to complete the ETL process. For example, a task might extract data from a source database, transform the data, and then load it into a destination database.

Tasks can be connected so that the output of one task becomes the input of another task. This enables you to create complex ETL processes that would be difficult or impossible to achieve with other tools.

SSIS also includes a powerful scripting language that can add custom package functionality. The scripting language is based on Microsoft Visual C# .NET.

History of SSIS

Microsoft SSIS is a platform for data integration and workflow applications. It was first introduced in 2005 as an upgrade to the Data Transformation Services (DTS) feature in SQL Server 2000. 

Since its initial release, SSIS has undergone several changes. The most significant change came in 2014 with the SQL Server Integration Services' released in 2014. This version included a major overhaul of the SSIS designer interface and several new features and improvements. 

Despite these changes, SSIS remains one of the market's most popular data integration platforms. It is used by businesses of all sizes in various industries to move, transform, and manage their data. 

 

Microsoft continues to improve and upgrade SSIS, ensuring it remains one of the most effective and reliable data integration solutions.  

In recent years, Microsoft has also released cloud-based versions of SSIS, allowing customers to benefit from a pre-configured environment for running their ETL jobs without managing the underlying infrastructure.

Additionally, SQL Server Integration Services makes it easy to deploy packages to different environments and manage multiple ETL jobs simultaneously.

In 2020, Microsoft announced the preview of Azure Data Factory V2, built on top of SSIS. This new version brings together data integration capabilities from Azure and on-premises sources in a single platform. 

Most Important Features of SSIS

A few key features make SSIS an attractive tool for ETL pipelines.

  • First, SSIS has a rich set of built-in connectors that support various data sources and destinations. This means that you can use SSIS to read from and write to databases, files, web services, and more.

  • Second, SSIS includes a powerful transformation engine that can be used to perform all sorts of data manipulation tasks. This includes things like data cleansing, data aggregation, and more.

  • Third, SSIS provides a robust scripting environment for those who need more control over their ETL process. This allows you to write custom code to handle complex situations or to integrate with other systems.

  • Fourth, SSIS is highly scalable and can be used to build massive ETL pipelines. This is thanks to its ability to run in parallel on multiple servers.

  • Finally, SSIS includes many other features that make it a complete ETL solution. These include things like CDC (change data capture), package deployment and management, security, auditing, and more.

Lets deep dive into features now in detail:

1. Built-in Data Connectors

Microsoft SSIS includes a variety of built-in data connectors that make it easy to connect to a wide range of data sources. In this section, we'll take a look at some of the most popular data connectors and how to use them.

ODBC Connector: The ODBC connector allows you to connect to any ODBC-compliant database, such as Microsoft SQL Server, Oracle, or IBM DB2. To use the ODBC connector, you'll need to have an ODBC driver installed on your computer.

ADO Connector: The ADO connector allows you to connect to any ADO-compliant database, such as Microsoft SQL Server or Oracle. You'll need to have an ADO driver installed on your computer to use the ADO connector.

OLEDB Connector: The OLEDB connector allows you to connect to any OLEDB-compliant database, such as Microsoft SQL Server or Oracle. To use the OLEDB connector, you'll need to have an OLEDB driver installed on your computer.

File System Connector: The file system connector allows you to connect to any file system, such as a local hard drive or a network share. You can use the file system connector to read from or write to files in any format, including text files, CSV files, and Excel workbooks.

FTP Connector: The FTP connector allows you to connect to an FTP server to read from or

2. Transformations and Functions

In any data transformation process, it is essential to understand the input data sources and the desired output format. The first step is to select the needed Transformation or function from SSIS.

The second step is configuring the properties of the selected Transformation or function. The third and final step is mapping the input and output columns.

Some of the most common transformations and functions that are used in ETL pipelines include:

Conversion of data types: This Transformation is used to convert data from one type to another. For example, you may need to convert an integer value into a string.

Derivation of new columns: This Transformation is used to create new columns based on existing columns. For example, create a new column containing an existing column's square.

Filtering of rows:

This transformation removes rows that do not meet specific criteria. For example, remove all rows that contain null values.

Sorting of rows: This Transformation is used to sort rows based on one or more columns. For example, you can sort rows by their numeric value or by their alphabetical order.

Joining of tables: This Transformation is used to combine two or more tables into one table. For example, join a table of customer information with a table of order information.

3. Fuzzy Grouping and Lookup Transformation

The Fuzzy Grouping and Lookup transformations in SSIS are used to group data based on similarity and to lookup and retrieve data from a reference table, respectively.

Fuzzy grouping is functional when your data is not perfectly clean and you need to group similar but not identical records. For example, you might have a list of customer names that contain typos or variations (e.g., "Smith" and "Smithers"). Fuzzy grouping can be used to group these so that they can be treated as the same customer.

Lookup transformation is used to look up and retrieve data from a reference table based on a specified key column. This is useful when you need to enrich your data with additional information from another source.

For example, you might have a list of customer IDs and want to look up and retrieve the corresponding customer name from a reference table. 

Fuzzy grouping and lookup transformation are helpful for data cleansing and enrichment and essential tools in the ETL process.

4. Data Profiling Tools

Many different data profiling tools are available on the market, but Microsoft SSIS is one of the most popular and widely used. In this article, we'll take a look at how to set up your ETL pipeline using Microsoft SSIS.

Microsoft SSIS is a powerful tool that can help you streamline your ETL process. It offers a wide range of features and options that can be customised to fit your specific needs. One of the most valuable features of SSIS is its data profiling capabilities.

Data profiling is the process of analysing data to extract information about its structure, content, and quality. It can be used to assess the fitness of data for a particular purpose or to identify problems that may impact the accuracy or completeness of data.

Several types of data profiling tools are available, but Microsoft's SSIS package includes some of the most comprehensive and user-friendly options. With SSIS, you can profile data at multiple levels, including columns, tables, and databases.

At the column level, you can profile individual columns in a table to assess their content, structure, and quality. This information can be used to determine if the column is suitable for its intended purpose or if any problems need to be addressed.

You can profile an entire table to understand its overall structure and contents at the table level. This information can be used to assess the suitability of the table for its

Steps to Set up an ETL Package in SSIS ETL

Step 1: Creating a New Project and Package in SSIS ETL

Dashboard of Set up an ETL Pacakage in SSIS ETL

In SSIS, a project is a collection of packages that you use to control the Extract-Transform-Load (ETL) process. A package is an instance of an Integration Services package that stores all data the package uses and its child objects. You can think of a project as a container for your ETL solution and each package as an individual task within that solution.

To create a new project and package in SSIS:

1. Open Microsoft SQL Server Management Studio and connect to your SQL Server instance.

2. In the Object Explorer pane, expand the folder for your SQL Server instance, expand theIntegration ServicesCatalog folder, right-click on the Projects folder, and select New Project… from the context menu.

3. In the New Project dialogue box, specify a name and location for your project, then click OK to continue.

4. In the Solution Explorer pane, right-click on your project name and select Add New Package… from the context menu.

5. In the Add New Package dialogue box, specify a name for your package and click OK to add it to your project.

Step 2: Configuring the Flat File Connection Manager in SSIS ETL

Dashboard of Flat File Connection Manager in SSIS ETL

Configuring the Flat File Connection Manager is a simple task that can be completed in a few clicks. The first thing you need to do is open SSIS and create a new package. Once the package has been created, double-click on the Data Flow Task to open it.

Next, drag and drop the Flat File Source onto the Data Flow canvas. Then, double-click on it to open the Flat File Source Editor. Click the New button on the Connection Manager tab to create a new connection manager.

In the Add SSIS Connection Manager window, select FLAT FILE from the list of connection managers and click OK.

On the next screen, you will need to specify the name of your flat file and its location. You can also specify whether or not your file has a header row. Once you have specified all of this information, click OK to close the window.

Your Flat File Connection Manager is now configured and ready to use!

Step 3: Configuring the OLE DB Connection Manager in SSIS ETL

Configuring the OLE DB Connection Manager in SSIS ETL‍

This step will vary depending on which data source you are using. For this tutorial, we will assume that you are using an OLE DB connection manager. 

1. Right-click on the Connection Manager area in your SSIS package and select "New Connection."

2. In the "Add SSIS Connection Manager" window, select "OLE DB" from the list of connection managers and click "Add."

3. In the "Configure OLE DB Connection Manager" window, select the data source you want to use from the dropdown list and click "OK."

4. If prompted, enter the credentials for your data source and click "OK."

Step 4: Configuring the Data Flow Task in SSIS ETL

Dashboard of How to Configuring the Data Flow Task in SSIS ETL

The Data Flow Task in SSIS is responsible for Extracting, Transforming, and Loading data from various sources to your desired Destination. In this step, we will configure the Data Flow Task to extract data from a source database, transform it, and then load it into a destination database.

1. Open up the SSIS Toolbox and drag the Data Flow Task onto the Control Flow canvas.

2. Double-click on the Data Flow Task to open up the Data Flow tab.

3. Click the Source dropdown arrow on the Data Flow tab and select your source database connection.

4. Click the Destination dropdown arrow and select your destination database connection.

5. Underneath that, click on "Data Transformation Services" to expand it out, then check the "Enable Data Profiling" and "Enable SQL Server Integration Services transactions" options as shown below:

6. Finally, click OK to close out of this dialogue box and return to the Control Flow canvas

Step 5: Configuring the Source in SSIS ETL

Dashboard of How to Configuring the Source in SSIS ETL

The most important part of configuring your SSIS ETL pipeline is specifying your data source. This is where you will need to provide the connection information for your data source, which can be either a local file or a remote database.

If you are using a local file, you will need to specify the path to the file in the Connection Manager dialogue box. If you are using a remote database, you must provide the server name, database name, and credentials for connecting to the database.

Once you have specified the Source of your data, you will need to select the appropriate data provider from the list of available providers.

For most relational databases, such as Microsoft SQL Server, Oracle Database, and MySQL, the Microsoft OLE DB Provider for SQL Server should be used. For flat files, such as CSV files and Excel spreadsheets, the Microsoft Jet OLEDB Provider should be used.

After selecting the appropriate data provider, you will need to configure the connection settings for your data source. The specific settings that need to be configured will vary depending on the type of data source that you are using. 

For most relational databases, you will need to specify the server name, database name, and credentials for connecting to the database. You will need to specify the file's path and other required settings for flat files, such as delimiter characters and text qualifiers.

Once you have configured all of the necessary settings for your data source connection, you will need to specify the table or query containing the data you want to extract.

If you use a relational database, write an SQL query to retrieve the desired data. For flat files, you will need to specify the file name and provide any additional information required by your data provider.

Once you have specified the Source of your data, you can proceed with configuring the other components of your SSIS ETL pipeline. This includes configuring transformations and destinations, loading data into staging tables, writing custom scripts, and more.

Step 6: Configuring the Lookups Transformations in SSIS ETL

The Lookups Transformations in SSIS ETL are used to join data from two sources. The first Source is called the reference table, and the second Source is called the input table. The Lookups Transformation can be used to join data from multiple sources, but we will use two sources for this example.

The first thing you need to do is connect to the Reference Table and the Input Table. To do this, click on the Connection Manager tab in SSIS and double-click on each table you want to connect to.

Next, you need to select which columns you want to join together. To do this, click on the Columns tab in SSIS and then check the box next to each of the columns you want to join.

After you have selected the columns you want to join, click on the Join Type dropdown menu and select Inner Join. This will ensure that only rows with matching values in both tables are returned.

Finally, click the OK button, and your Lookups Transformation will complete!

Step 7: Configuring the Destination in SSIS ETL

Dashboard of How to Configuring the Destination in SSIS ETL

The final step in configuring your SSIS ETL pipeline is to specify the Destination for your data. In SSIS, destinations can be defined as flat files, relational databases, or custom .NET assemblies. For our example, we will use a flat file destination.

Click on the "Destination" icon in the SSIS Toolbox and drag it onto the canvas. Then double-click on the Destination to open the editor.

In the Destination editor, select "Flat File Destination" from the dropdown list and click "New…" to create a new flat file connection manager.

In the Flat File Connection Manager dialogue, please specify the location of the file you want to create and give it a name. Then click "OK" to close the dialogue and return to the Destination editor.

In the Destination editor, select the newly created connection manager from the Connection dropdown list and choose "Table or view – fast load" from the Data access mode dropdown. This will ensure that data is inserted into the file using a fast bulk insert operation.

Finally, click "Columns" to map input columns to output columns. In our example, we will map all of the columns from our input dataset to columns in our output file. When you have finished mapping columns, click "OK" to close the dialogue and return to your package canvas.

Pros and Cons of SSIS

There are many factors to consider when setting up an ETL pipeline, and each company's needs will differ. However, Microsoft's SSIS tool is widely used, so it's essential to understand its pros and cons before deciding.

Pros:

  • Widely used, so lots of online resources and support are available

  • Can easily connect to many different data sources

  • Offers a variety of transformation options

  • GUI makes building packages easy

  • Can deploy packages in multiple ways

  • Scaleable and extensible

Cons:

  • Complexity can make troubleshooting difficult

  • Not always the best-performing option

  • Can be expensive to license

  • Limited in certain areas, such as cloud integration

  • Not easy to use for non-technical users

Why is SSIS a Good ETL Tool for You?

There are many reasons why SSIS is a great ETL tool for you. Here are some key reasons:

1. SSIS can be used to load data from various sources, including flat files, relational databases, and XML files.

2. SSIS includes a rich set of transformation components that can be used to cleanse, transform, and aggregate data.

3. SSIS supports traditional ETL (extract-transform-load) and ELT (extract-load-transform) processing paradigms.

4. SSIS can be used to load data into various destination formats, including relational databases, flat files, and OLAP cubes.

5. SSIS includes a powerful scheduling engine that can be used to automate the execution of ETL jobs.

 

6. SSIS can monitor the status of ETL jobs and take corrective action if needed.

7. SSIS includes graphical tools for designing, debugging, and testing ETL processes.

 

8. SSIS is highly scalable, allowing you to efficiently process large volumes of data.

 

9. SSIS is cost-effective, with a low total cost of ownership, making it an excellent option for all data integration projects.

  

10. SSIS is backed by Microsoft, giving you access to a reliable and well-supported product.

Conclusion

As you have seen, setting up an ETL pipeline with Microsoft SSIS is easier than it may seem. With the proper preparation and guidance, anyone can create a powerful data-driven application to help them make better business decisions.

All it takes is knowledge about how to use the platform and creativity to use its capabilities in new ways. Now get out there and start creating your ETL pipelines with Microsoft SSIS!  

Once you have set up your ETL pipeline with Microsoft SSIS, make sure to monitor the application's performance. Ensure all the data is extracted, loaded, and transformed promptly and followed by all necessary rules. This will help you ensure that your application is always running smoothly and efficiently.

Create the automation that
drives valuable insights

Organize your big data operations with a free forever plan

Schedule a demo
Schedule a demo
Thank you!
We have received your request and will get back to you soon. Meanwhile you can follow us on @bolticHQ for updates
Oops! Something went wrong while submitting the form.

Create the automation that drives valuable insights