Azure Stream Analytics 是否读取来自所有分区的数据
Does azure stream analytics read data coming from all partitions
Azure 事件中心具有可扩展性的分区功能。使用应用服务读取数据时,一个eventprocessorHost只能绑定一个partition。无法对来自多个分区的数据采取集体行动。
但是在使用 Stream 分析时,我们可以根据时间聚合数据。那么,它在聚合数据时是否处理了所有分区?意味着,如果将读数传递给 8 个分区,则聚合应在计算中包括所有这些读数。
谢谢
是的。基于 documentation 有几个场景。
当输出也支持分区时,就像另一个事件中心一样,您可以使用分区依据:
you must make sure that your query is partitioned. This requires you to use Partition By in all the steps. Multiple steps are allowed, but they all must be partitioned by the same key. Currently, the partitioning key must be set to PartitionId in order for the job to be fully parallel.
当输出不支持分区(如 Power BI)时,读取数据时不接收原始分区数据(因此它将从所有分区读取)。
如果您不使用partition by partitionid,所有输入分区的数据将在聚合之前合并。事件的排序将基于时间戳(到达或申请)。这确实意味着一个分区中缺少数据会阻塞结果,阻塞的时间量由迟到 window 控制。
[此页面] (https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-out-of-order-and-late-events) 包含有关迟到 window 的更多详细信息和示例。
Azure 事件中心具有可扩展性的分区功能。使用应用服务读取数据时,一个eventprocessorHost只能绑定一个partition。无法对来自多个分区的数据采取集体行动。 但是在使用 Stream 分析时,我们可以根据时间聚合数据。那么,它在聚合数据时是否处理了所有分区?意味着,如果将读数传递给 8 个分区,则聚合应在计算中包括所有这些读数。 谢谢
是的。基于 documentation 有几个场景。
当输出也支持分区时,就像另一个事件中心一样,您可以使用分区依据:
you must make sure that your query is partitioned. This requires you to use Partition By in all the steps. Multiple steps are allowed, but they all must be partitioned by the same key. Currently, the partitioning key must be set to PartitionId in order for the job to be fully parallel.
当输出不支持分区(如 Power BI)时,读取数据时不接收原始分区数据(因此它将从所有分区读取)。
如果您不使用partition by partitionid,所有输入分区的数据将在聚合之前合并。事件的排序将基于时间戳(到达或申请)。这确实意味着一个分区中缺少数据会阻塞结果,阻塞的时间量由迟到 window 控制。
[此页面] (https://docs.microsoft.com/en-us/azure/stream-analytics/stream-analytics-out-of-order-and-late-events) 包含有关迟到 window 的更多详细信息和示例。