#!/user/bin/env python3
from __future__ import print_function
import sys
from pyspark import SparkContext
from pyspark.streaming import StreamingContext
from pyspark.streaming.kafka import KafkaUtils
if __name__ == "__main__":
if len(sys.argv)!=3:
print("Usage:KafkaWordCount.py<zk><topic>", file = sys.stderr)
exit(-1)
sc = SparkContext(aapname = "PythonStreamingKafkaWordCount")
ssc = StreamingContext(sc,1)
zkQuorum,topic = sys.argv[1:]
kvs = KafkaUtils.createStream(ssc,zkQuorum,"spark-streaming-consummer",{topic:1})
lines = kvs.map(lambda x:x[1])
counts = lines.fatMap(lambda line:lines.split(" ")).map(lambda word:(word,1)).reduceByKey(lambda a,b:a+b)
counts.pprint()
ssc.start()
ssc.awaitTermination()
Kafka作为源数据进行数据流计算
最新推荐文章于 2024-07-01 08:45:00 发布
本文介绍如何使用 Apache Spark Streaming 框架从 Kafka 中读取实时数据流,并实现词频统计功能。具体包括:创建 SparkContext 和 StreamingContext;配置 Kafka 参数;从 Kafka 中读取数据;对数据进行词频统计;最后打印统计结果。

1万+

被折叠的 条评论
为什么被折叠?



