| ColumnName |
Definition |
| SourceName |
Name of the Source Table or view |
| SourceSchema |
SchemaName of the Source Table or view |
| SourceQueryCustom |
Your own custom select querie to load data, do casting or just get a subset of columns |
| DataLakeCatalog |
Name of the datalake folder to store raw parquet files |
| Worker |
To divide and order the workload, a source can be assigned to 6 workers. These unassigned sources running parallel in batches of 30 (1-6) |
| WorkerOrder |
The loading order for the sources assigned to workers 1 till 6. |
| TableDestinationName |
Name of the datastore table to store source data |
| TableDestinationSchema |
Name of the datastore schema to store source data |
| IsActive |
Activate or disable the source from loading (1|0) |
| IsIncremental |
Set to 1 if the source needs to be delta loaded (1|0) |
| IsIncrementalColumn |
If above setting is set to 1, on which datetime column do we need to base the incremental load |
| LastLoadtime |
This field is updated on runtime when the source is loaded. |
With the Worker we can define the workload, we can add a same set of tables, a mix of small and large tables, together. This worker can be changed any time.
Once we have filled the configuration we can start creating our Linked Services for the connections.
Create Linked Services
For these 2 Pipelines we need to create 4 different Linked Services.
Azure Key Vault (LS_AKV_OXGN), if you haven't created a Linked Service for Azure Key Vault before please read this page.
Azure Data Lake Storage Gen2 (LS_ADLS_DLS2), linked to your Azure Data Lake.

Grant workspace service managed identity access to your Azure Data Lake Storage Gen2.
Azure SQL Source database (LS_ASQL_SOURCE)

Create a entry in your Azure Key Vault secrets for the connection string =>
integrated security=False;encrypt=True;connection timeout=30;data source=xxxxxxxxxx.database.windows.net;initial catalog=WideWorldImporters;user id=xxxxxx;password=xxxxxx
Grant workspace service managed identity access to your Azure SQL Database or create a read-only account in your Source Database
Azure SQL Configuration database (LS_ASQL_CONFIG)
Create a entry in your Azure Key Vault secrets for the connection string =>
Integrated Security=False;Encrypt=True;Connection Timeout=30;Data Source=demoekeuwdvlmmssqloxgn01.database.windows.net;Initial Catalog=your configurationdatabase
Integration Datasets
Before we can start building our Pipeline we need to create the Integration Datasets.
Source database (DS_ASQL_SOURCE_DEMO)

Leave the Table Schema and Name empty,
Sink Datalake (DS_ADLS_RAW_PARQUET)
Parameters
Metadata DB (DS_ASQL_CONFIG)

Leave the Table Schema and Name empty,
Pipeline
The last step is to create 2 Pipelines, which you can both download over here.

Command Pipeline
Name: (PL_COMMAND_COPY_ASQL_TO_ADLS_WORKER_DEMO)
Lookup Activity
Lookup activity can retrieve a dataset from any of the Azure Data Factory / Azure Synapse -supported data sources. For this case we use a query to load the Metadata from the control table so that we know which tables we need to extract.

For above Query I've created a view, in the view I have defined the name of the folder and the Filename with the DataLake based on the metadata from the control table.