【发布时间】:2017-01-07 08:14:57
【问题描述】:
我在 Windows 7 上运行带有 Python 2.7 的 Spark 1.6.1。 HDFS 上的根暂存目录:/tmp/hive 是可写的,我当前的权限是:rwxrwxrwx(使用 winutils 工具)。
我想从一个目录流式传输文件。根据文档,函数 textFileStream(directory):
创建一个监控 Hadoop 兼容文件系统的输入流 新文件并将它们作为文本文件读取。文件必须写入 通过从另一个位置“移动”受监控的目录 相同的文件系统。以 . 开头的文件名被忽略。
当我启动 Spark Streaming 命令时:
lines = ssc.textFileStream(r"C:/tmp/hive/")
counts = lines.flatMap(lambda line: line.split(" "))\
.map(lambda x: (x, 1))\
.reduceByKey(lambda a, b: a+b)
counts.pprint()
ssc.start()
然后在我的目录中创建要流式传输的文件,没有任何反应。
我也试过这个:
lines = ssc.textFileStream("/tmp/hive/")
和
lines = ssc.textFileStream("hdfs://tmp/hive/")
这与 HDFS 路径相关,但没有再次发生。
我做错了吗?
【问题讨论】:
标签: python apache-spark pyspark spark-streaming