Azure-Samples / modern-data-warehouse-dataops

DataOps for the Modern Data Warehouse on Microsoft Azure. https://aka.ms/mdw-dataops.
MIT License
570 stars 451 forks source link

Rewrite ADF Pipelines to Synapse Data Pipelines #395

Closed devlace closed 2 years ago

devlace commented 3 years ago

Description

Using the Parking Sensor ADF Data Pipelines as a base, update this to work for Synapse pipelines. Changes include, but not limited to:

Original Parking Sensor ADF artifact definitions: https://github.com/Azure-Samples/modern-data-warehouse-dataops/tree/main/e2e_samples/parking_sensors/adf

image

Dependencies

DoD

icchan commented 3 years ago

In the most recent version of the engagements' synapse archi, I rewrote the linked service to be a key vault reference. It makes the CD slightly easier since we don't need to override this linked service (only the KV one)

Do we want to do that for this sample too?

e.g.

{
    "name": "pipelineADLS",
    "type": "Microsoft.Synapse/workspaces/linkedservices",
    "properties": {
        "type": "AzureBlobFS",
        "annotations": [],
        "typeProperties": {
            "url": {
                "type": "AzureKeyVaultSecret",
                "store": {
                    "referenceName": "keyvault",
                    "type": "LinkedServiceReference"
                },
                "secretName": "Synapse-PipelineAdls-Url"
            }
        },
        "connectVia": {
            "referenceName": "AutoResolveIntegrationRuntime",
            "type": "IntegrationRuntimeReference"
        }
    }
}
devlace commented 2 years ago

In the most recent version of the engagements' synapse archi, I rewrote the linked service to be a key vault reference. It makes the CD slightly easier since we don't need to override this linked service (only the KV one)

Do we want to do that for this sample too?

e.g.

{
  "name": "pipelineADLS",
  "type": "Microsoft.Synapse/workspaces/linkedservices",
  "properties": {
      "type": "AzureBlobFS",
      "annotations": [],
      "typeProperties": {
          "url": {
              "type": "AzureKeyVaultSecret",
              "store": {
                  "referenceName": "keyvault",
                  "type": "LinkedServiceReference"
              },
              "secretName": "Synapse-PipelineAdls-Url"
          }
      },
      "connectVia": {
          "referenceName": "AutoResolveIntegrationRuntime",
          "type": "IntegrationRuntimeReference"
      }
  }
}

The existing Parking Sensor sample should already be using KV as the go-to secret store where possible. I will just expand the scope of this story to update the ADF Data Pipelines in general from the Parking Sensor solution including the LinkedServices to work for the Synapse version of the solution.