https://learn.microsoft.com/en-us/azure/event-hubs/event-hubs-scalability
我从文档中了解到的是,1 TU在事件中心命名空间中提供了1 MB/秒的入口,建议以这样的方式设置分区,即每个分区在消费时可以处理高达1 MB/秒的数据。
所以,如果我有1 TU单位作为一个规模,有1个事件集线器和3个分区,如果每个分区可以处理(消耗)高达1 MB/秒,那么这是否意味着并行处理总共3 MB/秒的数据,或者不管我们有多少分区,它都将只处理1 MB/秒,因为我们已经设置了限制,只有1 TU?
1条答案
按热度按时间ql3eal8s1#
是的。您说的对,1 TU在事件中心命名空间中提供1 MB/秒的入口,建议设置分区,以便每个分区在消费时可以处理高达1 MB/秒的数据。
为了确保最佳吞吐量,如果您的用例要求20 MB/s,建议至少选择20个分区。
由于分区是一种数据组织机制,允许您以并行方式发布和消费数据,因此我们建议您平衡缩放单元(TU,PU或CU)和分区以实现最佳规模。通常,我们建议每个分区的最大吞吐量为1 MB/s。因此,计算分区数的经验法则是将最大预期吞吐量除以1 MB/s。例如,如果您的用例需要20 MB/s,则建议至少选择20个分区以实现最佳吞吐量。
在创建EventHub时,您可以选择吞吐量最小值1到最大值40,如下图所示,您还可以启用自动充气。您的吞吐量单位(TU)可以使用自动充气选项进行扩展。这意味着您可以从购买廉价的TU开始,并在您的入口上升时自动扩展它们。它让您完全控制要处理的TU数量和一个具有成本效益的选择。
感谢@Kamal Pathak。请参考他的博客,以更好地理解Azure Event Hub - Understanding & Designing of Partitions and Throughput Unit。您也可以参考这个SO问题,这可能会有所帮助。