Azure流分析 - CosmosDB输出包含多行,每个分区键只包含一行

时间:2017-09-04 10:12:03

标签: azure-stream-analytics azure-cosmosdb

使用Azure流分析作业,将IoTHub作为输入,将文档DB作为输出,经常收到警告 -

警告:CosmosDB输出包含多行,每个分区键只有一行。如果输出延迟高于预期,请考虑选择每个分区键至少包含数百条记录的分区键。为获得最佳性能,请考虑为输入和输出选择相同的分区键列。

我使用分区密钥和每秒IoTHub接收的大量数据用于相同的分区密钥。

1 个答案:

答案 0 :(得分:0)

首先,这是警告,它不会导致您的流分析失败。

它建议您考虑更改cosmosdb设计。

正确的分区键设计,可以在使用时提高cosmosdb的性能。

来自article

  

选择具有许多不同值的分区键属性非常重要,并允许您在这些值之间均匀分配工作负载。作为分区的自然工件,涉及相同分区键的请求受到单个分区的最大吞吐量的限制。此外,属于同一分区键的文档的存储大小限制为10GB。理想的分区键是在查询中经常显示为过滤器的键,并且具有足够的基数以确保您的解决方案可扩展。

     

分区键也是DocumentDB存储过程和触发器中事务的边界。您应该选择分区键,以便在事务中一起出现的文档共享相同的分区键值。

关于如何设计分区,您可以参考此article