使用Azure流分析作业,将IoTHub作为输入,将文档DB作为输出,经常收到警告 -
警告:CosmosDB输出包含多行,每个分区键只有一行。如果输出延迟高于预期,请考虑选择每个分区键至少包含数百条记录的分区键。为获得最佳性能,请考虑为输入和输出选择相同的分区键列。
我使用分区密钥和每秒IoTHub接收的大量数据用于相同的分区密钥。
答案 0 :(得分:0)
首先,这是警告,它不会导致您的流分析失败。
它建议您考虑更改cosmosdb设计。
正确的分区键设计,可以在使用时提高cosmosdb的性能。
来自article。
选择具有许多不同值的分区键属性非常重要,并允许您在这些值之间均匀分配工作负载。作为分区的自然工件,涉及相同分区键的请求受到单个分区的最大吞吐量的限制。此外,属于同一分区键的文档的存储大小限制为10GB。理想的分区键是在查询中经常显示为过滤器的键,并且具有足够的基数以确保您的解决方案可扩展。
分区键也是DocumentDB存储过程和触发器中事务的边界。您应该选择分区键,以便在事务中一起出现的文档共享相同的分区键值。
关于如何设计分区,您可以参考此article。