如何将源中的行键映射到接收器中的行键?未按预期工作



我正在使用 Azure 数据工厂来转换 blob,然后尝试将其复制到 Azure 表存储中。我正在使用复制活动。管道由数据流组成,然后是复制活动。

除了映射我的行键外,一切都运行良好。我使用转换活动基于产品 SKU 生成行键。当我转到接收器并选择"使用源列"时,它在"行键列"下显示"选择选项",但我唯一的选择是"添加动态内容",我没有获得任何列选项。

我在源代码中的行键是通过映射函数映射的,但似乎在没有指定动态内容的情况下,默认情况下它会被唯一标识符覆盖。由于这些是产品 SKU,并且我想合并数据,因此我绝对需要自己的行键。

我是 ADF 的新手,我尝试使用动态内容引用我的行键,但它只会生成未找到的错误。我不确定在编写表达式时是否引用了源代码。

我已联系 Azure 支持人员,正在等待回复,但我们拭目以待。

{
"name": "BlobTransformsToTable",  
"properties": {  
"activities": [  
{
"name": "TransformThenCopyToTable",  
"type": "Copy",  
"dependsOn": [  
{  
"activity": "MyVendorCatalog",  
"dependencyConditions": [  
"Succeeded"  
]  
}  
],  
"policy": {  
"timeout": "7.00:00:00",  
"retry": 0,  
"retryIntervalInSeconds": 30,  
"secureOutput": false,  
"secureInput": false  
},  
"typeProperties": {  
"source": {  
"type": "DelimitedTextSource",  
"storeSettings": {  
"type": "AzureBlobStorageReadSetting",  
"wildcardFileName": "*.*"  
},  
"formatSettings": {  
"type": "DelimitedTextReadSetting"  
}  
},  
"sink": {  
"type": "AzureTableSink",  
"azureTableInsertType": "merge",  
"azureTableDefaultPartitionKeyValue": "CatalogItem",  
"writeBatchSize": 10000  
},  
"enableStaging": false,  
"translator": {  
"type": "TabularTranslator",  
"mappings": [  
{  
"source": {  
"name": "PartitionKey",  
"type": "String"  
},
"sink": {  
"name": "PartitionKey"  
}  
},  
{  
"source": {  
"name": "RowKey",  
"type": "String"  
},  
"sink": {  
"name": "RowKey"  
}  
},  

截图1 截图2

我希望它将源中的行键映射到接收器中的行键。它仍在生成唯一值。我愿意通过使用动态内容来解决这个问题,但我不确定如何让它工作。

我遇到了类似的问题,并能够按如下方式解决。

编辑管道并导航到 [接收器] 选项卡

  • [行键值选择]应指定为"使用接收器列">
  • 打开[添加动态内容选择]屏幕时,[行键列]应指定为"行键">

然后在映射屏幕上,您可以将源字段映射到"RowKey"列,它将得到尊重

行键列屏幕截图

相关内容

  • 没有找到相关文章

最新更新