如何使用Azure数据工厂将json文档解压到SQL数据库
我需要将数据从DocumentDB复制到Azure SQL数据库 Json文档如下所示: { “设备ID”:“D1” “时间”:“2017-07-27T20:00:00” “温度”:25 “人类”:50 } 目标SQL数据库表结构为(设备ID |传感器ID |值|时间) 所以数据是这样的: 设备ID |传感器ID |值|时间 现在该如何实现呢 我认为更改Json文档结构以获得传感器ID和值的列表,这可能是一个糟糕的设计,但数据工厂也拒绝了它,因为列表列不受支持 我现在想创建一个这样的结构化表(DeviceID | Temperature | Humedity | Time)并使用ADF将数据复制到它,然后使用SQL的UNPIVOT子句将数据再次从它复制到我的表中如何使用Azure数据工厂将json文档解压到SQL数据库,json,business-intelligence,azure-cosmosdb,azure-data-factory,azure-sql-database,Json,Business Intelligence,Azure Cosmosdb,Azure Data Factory,Azure Sql Database,我需要将数据从DocumentDB复制到Azure SQL数据库 Json文档如下所示: { “设备ID”:“D1” “时间”:“2017-07-27T20:00:00” “温度”:25 “人类”:50 } 目标SQL数据库表结构为(设备ID |传感器ID |值|时间) 所以数据是这样的: 设备ID |传感器ID |值|时间 现在该如何实现呢 我认为更改Json文档结构以获得传感器ID和值的列表,这可能是一个糟糕的设计,但数据工厂也拒绝了它,因为列表列不受支持 我现在想创建一个这样的结构化表(D
在SQL Azure和SQL Server引擎中实现正确/最佳实施的任何帮助??: 您可以使用OPENJSON将其转换为关系形式。然后,您可以使用SQL PIVOT操作符将行透视到列: 因此,您可以将JSON放在SQL中,然后进行转换
ADF中可能还有其他路径也可以使用。第一眼看到的data factory文档并没有表明它可以映射内置的列 Data factory通过将数据集的类型指定为Json并定义其结构,对Json提供了本机支持 我建议您在门户中使用复制向导,以熟悉data factory的工作方式
然后可以使用映射列,请参见。避免提出主观问题。这个问题没有一个“正确”的答案。第一个URL涵盖了Blop作为datasoruce的情况,但我使用DocumentDB作为datasoruce。我认为类似“jsonPathDefinition”的东西非常有用,但DocumentDB不支持它。
D1 | Temperature | 25 | 2017-07-27 20:00:00
D1 | Humedity | 50 | 2017-07-27 20:00:00