如何有效地将压缩的 json 数据推送到 azure 事件中心并在 azure 流分析中处理?

Posted

技术标签:

【中文标题】如何有效地将压缩的 json 数据推送到 azure 事件中心并在 azure 流分析中处理?【英文标题】:How to efficiently push compressed json data into azure event hub and proccess in azure stream analytics? 【发布时间】:2017-11-10 09:03:30 【问题描述】:

我们有一个后端应用程序,它必须将遥测数据发送到事件中心。所有数据都必须序列化为 JSON 并压缩。

我们是否应该将所有序列化对象收集到一个以换行符分隔的 JSON 中,还是最好为每个对象使用一个 EventData 包装器并将其作为批处理发送?使用换行符分隔的 json 压缩可能会更好。但是 ASA 能够处理它吗?

【问题讨论】:

【参考方案1】:

Asa 支持 gzip 和 deflate 压缩。每条 eventthub 消息最多可达 256 kb,包括元数据。在处理方面,每条消息都有一些开销。因此,对于相同数量的记录,更少的 eventthub 消息更好。但是,这通常意味着在发送端有一些缓冲。根据您对发送方的总体延迟要求和内存占用要求,您应该将多条记录批处理到每个 eventthub 消息中,并进行压缩。

【讨论】:

asa 是否支持换行分隔的 JSON? 是的,确实如此。换行符分隔的常规对象数组

以上是关于如何有效地将压缩的 json 数据推送到 azure 事件中心并在 azure 流分析中处理?的主要内容,如果未能解决你的问题,请参考以下文章

我如何决定是不是应该使用 Power BI API 将数据推送到我的流数据集或 Azure 流分析?

计划的 SQL Server 实例推送到 Azure SQL 数据库

如何正确地将具有多个元素的新对象推送到数组中?

从外部附件输入流中读取并推送到 s3 的最有效方法?

如何将 Json 数据推送到 UITableView 中的标签?

如何将 JSON 数据发布到 PubSub,然后推送到 BigQuery?