Kafka wordcount不更新计数

时间:2017-08-30 12:09:49

标签: apache-kafka apache-kafka-streams

我开始尝试Kafka Streams。我关注https://kafka.apache.org/0110/documentation/streams/quickstart

我的沙盒是一个运行Ubuntu 16.04.2 LTS,Kafka 0.11.0.0和Scala 2.11.11的盒子。

正如Kafka Streams快速入门指南中所述,以下是我遵循的步骤:

echo -e "all streams lead to kafka\nhello kafka streams\njoin kafka summit" > file-input.txt

bin/kafka-topics.sh --create \
    --zookeeper localhost:2181 \
    --replication-factor 1 \
    --partitions 1 \
    --topic streams-file-input

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic streams-file-input < file-input.txt

bin/kafka-run-class.sh org.apache.kafka.streams.examples.wordcount.WordCountDemo

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 \
    --topic streams-wordcount-output \
    --from-beginning \
    --formatter kafka.tools.DefaultMessageFormatter \
    --property print.key=true \
    --property print.value=true \
    --property key.deserializer=org.apache.kafka.common.serialization.StringDeserializer \
    --property value.deserializer=org.apache.kafka.common.serialization.LongDeserializer

使用后一个命令查看streams-wordcount-output时,我的标准输出显示以下内容:

all 1
streams 1
lead    1
to  1
kafka   1
hello   1
kafka   2
streams 2
join    1
kafka   3
summit  1

然后,在不中断bin / kafka-console-consumer.sh命令的情况下,我重新运行控制台生成器,如下所示:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic streams-file-input < file-input.txt

我很惊讶标准输出没有改变以反映这个新增加所产生的变化。根据我的理解,file-input.txt用于生成附加数据,因此单词count应该刷新(所有令牌现在应计算两次)。 我的推理出了什么问题?

1 个答案:

答案 0 :(得分:2)