代码之家  ›  专栏  ›  技术社区  ›  MAK

使用ADF时在cosmos db中序列化数组

  •  1
  • MAK  · 技术社区  · 6 年前

    我的Cosmos数据库文档中有以下格式。

    "Tag": "SPEEDSTER",
        "data": [
            {
                "timestamp": "2018-09-05T13:55:09.297Z",
                "jsonVersion": 1,
                "speed": 404
            }
        ]
    

    在ADF复制管道中导入架构时,不支持该数组。我有什么办法可以做到吗?

    2 回复  |  直到 6 年前
        1
  •  1
  •   Jay Gong    6 年前

    您需要在“复制”活动中使用SQL查询来设计您的cosmos db源数据模式。

    我根据您的示例数据测试了上面的SQL,它已成功复制到blob存储中的txt文件中。

    select c.id,c.tag,data.timestamp,data.jsonversion,data.speed from c
    < /代码> 
    
    

    输出:

    希望它能帮助你。

    enter image description here

    我基于您的示例数据测试了上面的SQL,并成功地将其复制到blob存储中的一个txt文件中。

    select c.id,c.Tag,data.timestamp,data.jsonVersion,data.speed from c
    

    输出:

    enter image description here

    希望对你有帮助。

        2
  •  0
  •   Fang Liu    6 年前

    什么是水槽数据存储?

    例如,如果要将文档按原样导出到JSON格式文件,可以使用导出JSON原样功能。为了实现这一点,您可以删除数据集中的结构,以及复制活动中的转换器。 https://docs.microsoft.com/en-us/azure/data-factory/connector-azure-cosmos-db#importexport-json-documents

    如果要从数组中提取数据,可以编写自己的查询来进行一些转换。