如何处理 Azure 数据湖 Gen2 中的遥测 json 消息?
How to process the telemetry json messages in Azure data lake Gen2?
我有一个模拟设备,它正在向 IoT 中心 blob 存储发送消息,然后我通过使用 Azure 数据工厂创建管道将数据(以 JSON 格式编码)复制到 Azure Data Lake Gen2。
如何将这些 json 输出文件转换为 CSV 文件以供数据湖引擎处理?我不能直接在 Azure 数据湖中处理所有传入的 json 遥测数据吗?
有 3 个官方 built-in extractors 可让您分析 CSV、TSV 或文本文件中包含的数据。
但 MSFT 还在其 Azure GitHub repo 上发布了一些额外的样本提取器,用于处理 Xml、Json 和 Avro 文件。我在生产中使用了 Json 提取器,因为它非常稳定且有用。
The JSON Extractor treats the entire input file as a single JSON document. If you have a JSON document per line, see the next section. The columns that you try to extract will be extracted from the document. In this case, I'm extracting out the _id and Revision properties. Note, it's possible that one of these is a further nested object, in which case you can use the JSON UDF's for subsequent processing.
REFERENCE ASSEMBLY [Newtonsoft.Json];
REFERENCE ASSEMBLY [Microsoft.Analytics.Samples.Formats];
//Define schema of file, must map all columns
@myRecords =
EXTRACT
_id string,
Revision string
FROM @"sampledata/json/{*}.json"
USING new Microsoft.Analytics.Samples.Formats.Json.JsonExtractor();
我有一个模拟设备,它正在向 IoT 中心 blob 存储发送消息,然后我通过使用 Azure 数据工厂创建管道将数据(以 JSON 格式编码)复制到 Azure Data Lake Gen2。
如何将这些 json 输出文件转换为 CSV 文件以供数据湖引擎处理?我不能直接在 Azure 数据湖中处理所有传入的 json 遥测数据吗?
有 3 个官方 built-in extractors 可让您分析 CSV、TSV 或文本文件中包含的数据。
但 MSFT 还在其 Azure GitHub repo 上发布了一些额外的样本提取器,用于处理 Xml、Json 和 Avro 文件。我在生产中使用了 Json 提取器,因为它非常稳定且有用。
The JSON Extractor treats the entire input file as a single JSON document. If you have a JSON document per line, see the next section. The columns that you try to extract will be extracted from the document. In this case, I'm extracting out the _id and Revision properties. Note, it's possible that one of these is a further nested object, in which case you can use the JSON UDF's for subsequent processing.
REFERENCE ASSEMBLY [Newtonsoft.Json];
REFERENCE ASSEMBLY [Microsoft.Analytics.Samples.Formats];
//Define schema of file, must map all columns
@myRecords =
EXTRACT
_id string,
Revision string
FROM @"sampledata/json/{*}.json"
USING new Microsoft.Analytics.Samples.Formats.Json.JsonExtractor();