我正在使用kafka处理器api,我从一个包含3个分区(我有3个代理)的主题创建一个状态存储,我有一个stream示例。我想知道我什么时候到了当地的国营商店,我能拿到所有的钥匙吗?为什么有些钥匙能用,有些却不行?正常吗?谢谢您
sdnqo3pr1#
如果应用程序示例的数量与此情况无关。因为输入主题有3个分区,所以状态存储是用3个分区创建的。处理发生在3个并行任务中。每个任务示例化一个拓扑副本,处理一个输入主题分区,并使用一个shard。比较:https://kafka.apache.org/21/documentation/streams/architecture如果要访问不同的shard,可以使用“交互式查询”功能对所有shard进行键/值查找(以及查询的键范围)。另外,全局状态存储的概念是将所有分区中的数据加载到单个存储中(而不是分片)。但是,它提供了与“常规”存储不同的语义,因为存储更新与其他处理不同步。
1条答案
按热度按时间sdnqo3pr1#
如果应用程序示例的数量与此情况无关。因为输入主题有3个分区,所以状态存储是用3个分区创建的。处理发生在3个并行任务中。每个任务示例化一个拓扑副本,处理一个输入主题分区,并使用一个shard。
比较:https://kafka.apache.org/21/documentation/streams/architecture
如果要访问不同的shard,可以使用“交互式查询”功能对所有shard进行键/值查找(以及查询的键范围)。
另外,全局状态存储的概念是将所有分区中的数据加载到单个存储中(而不是分片)。但是,它提供了与“常规”存储不同的语义,因为存储更新与其他处理不同步。