【发布时间】:2018-06-06 04:43:49
【问题描述】:
假设我们有一个实例,其配置如下,并在商店中维护状态。
主题 - 1
分区 - 6
num.stream.threads - 6
拓扑
来源 - 1
低级处理器 - 3 个(每日、每月和每年各一个处理器
聚合)
水槽 - 3
- 使用上述拓扑和主题分区可以执行多少个并行任务?
-
如果为 Daily 处理器分配了 2 个并行任务,并且如果标点符号计划每 30 分钟运行一次,并且在我们将所有存储转发到接收器 1 的覆盖中,键值存储会是两次发布到接收器,因为 2 个并行任务共享同一个存储,或者每个任务都有自己的存储,并且只会发布与它们分配的分区相对应的数据,这些分区被持久保存在各自的存储中?
KeyValueIterator<String, House> keyValueIterator = houseStore.all(); while (keyValueIterator.hasNext()) { KeyValue<String, House> next = keyValueIterator.next(); context.forward(next.key, next.value); } keyValueIterator.close(); 如果我们改为使用 KTable(每天、每月和每年聚合一个)高级 DSL,将会有多少任务?是否可以有两个并行任务更新同一个 KTable(比如每天)?
【问题讨论】:
标签: apache-kafka apache-kafka-streams