Book Image

ETL with Azure Cookbook

By : Christian Cote, Matija Lah, Madina Saitakhmetova
Book Image

ETL with Azure Cookbook

By: Christian Cote, Matija Lah, Madina Saitakhmetova

Overview of this book

ETL is one of the most common and tedious procedures for moving and processing data from one database to another. With the help of this book, you will be able to speed up the process by designing effective ETL solutions using the Azure services available for handling and transforming any data to suit your requirements. With this cookbook, you’ll become well versed in all the features of SQL Server Integration Services (SSIS) to perform data migration and ETL tasks that integrate with Azure. You’ll learn how to transform data in Azure and understand how legacy systems perform ETL on-premises using SSIS. Later chapters will get you up to speed with connecting and retrieving data from SQL Server 2019 Big Data Clusters, and even show you how to extend and customize the SSIS toolbox using custom-developed tasks and transforms. This ETL book also contains practical recipes for moving and transforming data with Azure services, such as Data Factory and Azure Databricks, and lets you explore various options for migrating SSIS packages to Azure. Toward the end, you’ll find out how to profile data in the cloud and automate service creation with Business Intelligence Markup Language (BIML). By the end of this book, you’ll have developed the skills you need to create and automate ETL solutions on-premises as well as in Azure.
Table of Contents (12 chapters)

Generating a mass change to stored procedures

If we want to automatically generate the sample SSIS package for the WideWorldImporters solution, as we intended to do in the beginning, we need to work on some prerequisites. These prerequisites are so interesting and challenging that it is best to dedicate a separate recipe to them. The SSIS package from the sample WideWorldImporters solution uses Get stored procedures in the Data Flow Task OLE DB Source to retrieve data from the source. In the original package, the EXECUTE statement calling each Get stored procedure uses the RESULT SET clause to specify data types and column names for the return result set. This is necessary for SSIS to work correctly because all Get stored procedures use temp tables and since temp tables are resolved at runtime, SSIS is unable to retrieve metadata for every output column of the result dataset.

The use of temp tables is a challenge for Biml as well, and in addition to the RESULT SET clause, we need...