Azure cosmosdb Azure数据工厂如何将地理空间数据从Azure CosmosDB复制到文本文件?
我现在需要使用Azure data factory将地理空间数据从Azure CosmosDB复制到Azure data lake store中的文本文件 cosmos DB中的空间数据如下所示:Azure cosmosdb Azure数据工厂如何将地理空间数据从Azure CosmosDB复制到文本文件?,azure-cosmosdb,Azure Cosmosdb,我现在需要使用Azure data factory将地理空间数据从Azure CosmosDB复制到Azure data lake store中的文本文件 cosmos DB中的空间数据如下所示: { "Longitude": "5.2926", "Latitude": "60.2219", "Location": { "type": "Point", "coordinates": [ 5.2926, 60.2219 ] } }
{
"Longitude": "5.2926",
"Latitude": "60.2219",
"Location": {
"type": "Point",
"coordinates": [
5.2926,
60.2219
]
}
}
首先,我试图通过ADF直接加载“位置”数据,但失败了,因为ADF不支持空间数据格式
然后在ADF的数据集中添加结构,将其指定为字符串:
{
"properties": {
"structure": [
{
"name": "Location.type",
"type": "String"
},
{
"name": "Location.coordinates",
"type": "String"
}
]
}
}
管道工作,但是Location.coordinates导出为NULL
显然,ADF无法识别空间数据,并为导出指定NULL
有人熟悉这次转移吗?或者如何从空间格式转换为字符串?根据这一点,数据工厂支持以下值来提供结构中的类型信息:Int16、Int32、Int64、Single、Double、Decimal、Byte[]、Bool、string、Guid、Datetime、Datetimeoffset和Timespan。它不支持空间数据(数组)格式。此外,我们无法在数据工厂中转换类型。当您将数据插入到COSMODB中时,是否考虑将类型更改为String?在COSMODB中可以将空间数据转换为String,但需要在COSMOS侧进行更多的工作。无论如何,空间数据似乎不能自动转换成字符串。我同意你的看法。我建议您可以先将空间数据转换为字符串,然后再插入cosmosDB。然后您可以使用ADF将数据复制到文本文件。@BrandoZhang MSFT,我还有一个关于cosmosdb的问题,您能帮我看一下吗?