天蓝色流分析是不是读取来自所有分区的数据
Posted
技术标签:
【中文标题】天蓝色流分析是不是读取来自所有分区的数据【英文标题】:Does azure stream analytics read data coming from all partitions天蓝色流分析是否读取来自所有分区的数据 【发布时间】:2017-09-09 10:46:37 【问题描述】:Azure 事件中心具有可扩展性的分区功能。使用应用服务读取数据时,一个事件处理器主机只能绑定到一个分区。无法对来自多个分区的数据采取集体行动。 但是在使用流分析时,我们可以根据时间聚合数据。那么,它在聚合数据时会处理所有分区吗?意思是,如果将读数传递给 8 个分区,聚合应在计算中包括所有这些读数。 谢谢
【问题讨论】:
【参考方案1】:是的。基于documentation 有几个场景。
当输出也支持分区时,如另一个事件中心,您可以使用分区方式:
您必须确保您的查询已分区。这要求您在所有步骤中使用 Partition By。允许多个步骤,但它们都必须由相同的键进行分区。目前,必须将分区键设置为 PartitionId 才能使作业完全并行。
当输出不支持分区(如 Power BI)时,在不获取原始分区数据的情况下读取数据(因此它将从所有分区中读取)。
【讨论】:
【参考方案2】:如果您不使用 partitionid by partitionid 分区,则来自所有输入分区的数据将在聚合之前合并。事件的排序将基于时间戳(到达或应用程序)。这确实意味着一个分区中缺少数据会阻塞结果,阻塞的时间量由迟到窗口控制。
[此页面] (https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-out-of-order-and-late-events) 包含有关迟到窗口的其他详细信息以及示例。
【讨论】:
以上是关于天蓝色流分析是不是读取来自所有分区的数据的主要内容,如果未能解决你的问题,请参考以下文章
如何捕获来自事件中心的错误 json 记录到 azure 流分析