apache-kafka - Kafka - 独立服务器 - 如何决定分区?
问题描述
我有一个带有单个磁盘的独立 Kafka 设置。计划流式传输超过百万条记录。如何为我的主题决定分区以获得更好的吞吐量?必须是1个分区?
是否建议在独立的 Kafka 服务器上为一个主题设置多个分区?
解决方案
是的,即使对于单节点 kafka 集群,您也需要多个分区。那是因为您只能拥有与分区一样多的消费者。如果你有一个分区,那么你只能有一个消费者,这将限制吞吐量。特别是如果您想流式传输数百万行(尽管未指定这些行的周期)。唯一真正的缺点是消息仅在同一分区内按顺序使用。除此之外,您应该使用多个分区。您需要估计单个消费者的吞吐量以计算分区,然后可能会在此基础上添加一个或 2 个。您仍然可以稍后添加分区,但最好先尝试从正确的数量开始,然后随着您了解更多或随着音量的增加/减少而更改。
推荐阅读
- c# - Unity + C#:GameObject.FindGameObjectsWithTag 不起作用?
- python - 如何调整图像大小以最终具有相同的尺寸?
- node.js - 检查 Discord.js 上特定消息的反应?
- php - 可以读取但不能使用 PHP MySQLi 创建/更新
- azure - Azure devops:Monorepo 触发器
- powershell - 查找每月第一个和第二个星期二之间的星期日
- javascript - 如何从跨度中删除一个类并将其提供给另一个
- firebase - 对于大型数据集,firebase 是否按子 O(n) 排序,有没有办法对其进行优化?
- reporting-services - SSRS 比较两个数据集的缺失 ID
- text - 基于 SwiftUI 中的旋转在 ZStack 中对齐文本