簡體   English   中英

在 ADF 中參數化 Azure Blob 存儲鏈接服務

[英]Parameterize Azure Blob Storage Linked Service in ADF

我想創建一個 Azure 數據工廠管道,將文件復制到多個存儲帳戶。 我的計划是將管道參數中的存儲帳戶連接信息定義為數組,並使用 ForEach 活動循環遍歷數組中的每個對象,將連接信息傳遞給另一個管道。

    [
  {
    "destinationBlob": {
      "connectionString": "Conn1"
    }
  },
  {
    "destinationBlob": {
      "connectionString": "Conn2"
    }
  },
  {
    "destinationBlob": {
      "connectionString": "Conn3"
    }
  }
]

我的問題是,是否可以參數化與 Azure Blob 存儲鏈接服務的連接?

這實際上是可以做到的。 示例 JSON:

{
    "name": "DataLakeBlob",
    "type": "Microsoft.DataFactory/factories/linkedservices",
    "properties": {
        "parameters": {
            "StorageAccountEndpoint": {
                "type": "String",
                "defaultValue": "https://testblobstorage.blob.core.windows.net"
            }
        },
        "type": "AzureBlobStorage",
        "typeProperties": {
            "serviceEndpoint": "@{linkedService().StorageAccountEndpoint}"
        },
        "description": "Test Description"
    }
}

根據文檔,鏈接服務的 ADF 參數化不支持 azure blob 存儲。

在此處輸入圖片說明

因此,到目前為止,您只能將特定文件復制到目標位置。

編輯:這是微軟承認的。 https://docs.microsoft.com/en-us/azure/data-factory/parameterize-linked-services#

對於那些尋找 SAS 令牌參數化的人,您可以使用以下 JSON。 一定要像截圖一樣選中復選框,以便應用 JSON。 在此處輸入圖片說明

{
  "type":"Microsoft.DataFactory/factories/linkedservices",
  "properties":{
  "parameters": {
        "StorageAccountEndpoint": {
            "type": "String",
            "defaultValue": "https://<<yourstorageaccountname>>.blob.core.windows.net/?sv=2018-03-28&ss=b&srt=sco&sp=rwdlac&se=2019-10-20T16:33:57Z&st=2019-09-20T08:33:57Z&spr=https&sig=lDrBjD%2BjM2T1XjRW997VPMqDp99ZxVoReyRK0VEX7zQ%3D"
        }
    },
    "type": "AzureBlobStorage",
    "typeProperties": {
        "sasUri": "@{linkedService().StorageAccountEndpoint}"
    }

}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM