如何使用Azure Data Factory V2将JSON数组列从启用了Azure Cosmos DB的Mongo DB文档复制到Snowflake列(字符串/变量)?

oogrdqng  于 2023-08-07  发布在  Go
关注(0)|答案(1)|浏览(98)

我正在尝试使用Azure Data Factory V2将启用Azure Cosmos-DB的Mongo-DB集合文档复制到Snowflake表。Document中的某些列是数组(多个值)。我想:如果我在目标“Snowflake”处使用String或Variant列,Azure Data Factory V2将能够成功复制它,但它失败并出现错误:(ErrorCode=JsonUnsupportedHierarchicalComplexValue,'Type =Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=检索到的数据类型JArray尚不支持。请删除目标列“REQUESTDATE”或启用“跳过不兼容行”以跳过问题行。,Source=Microsoft.DataTransfer.Common,'):
Map:
x1c 0d1x的数据
错误代码:



我尝试了一切,但没有成功。我还注意到,即使是Data Flow也不支持Mongo DB作为源。任何帮助将不胜感激。
谢谢,比拉尔

2q5ifsrm

2q5ifsrm1#

我尝试了同样的方法,但对于相同的JArray数据类型也失败了,可能是它直接将其作为Array来解决这个问题,您可以使用以下解决方法:

*首先,您需要进行复制活动,将数据从Cosmos with mongo db复制到CSV文件,然后在源代码中添加Cosmos with mongo db并选择您的容器。

的数据

  • 在接收器中添加带有CSV文件的Blob存储,以便将数据复制到那里。

  • 导入Map并检查将复杂值Map到字符串

*然后执行另一个Copy活动,将数据从CSV文件复制到snowflake,并在源中添加在先前Copy活动中复制数据的Same CSV文件。

  • 在接收器中添加Snowflake数据集作为目标。

  • 根据您的要求添加Map。

  • 运行管道它将复制 snowflake 中的数据。

相关问题