小编pit*_*erd的帖子

如何从 Jupyter 在 HDInsight Spark 群集上提交 python 字数统计

我正在尝试在 Spark HDInsight 集群上运行 python wordcount,我正在从 Jupyter 运行它。我实际上不确定这是否是正确的方法,但我找不到任何关于如何在 HDInsight Spark 群集上提交独立 python 应用程序的有用信息。

编码 :

import pyspark
import operator
from pyspark import SparkConf
from pyspark import SparkContext
import atexit
from operator import add
conf = SparkConf().setMaster("yarn-client").setAppName("WC")
sc = SparkContext(conf = conf)
atexit.register(lambda: sc.stop())

input = sc.textFile("wasb:///example/data/gutenberg/davinci.txt")
words = input.flatMap(lambda x: x.split())
wordCount = words.map(lambda x: (str(x),1)).reduceByKey(add)

wordCount.saveAsTextFile("wasb:///example/outputspark")
Run Code Online (Sandbox Code Playgroud)

我收到但不明白的错误消息:

ValueError                                Traceback (most recent call last)
<ipython-input-2-8a9d4f2cb5e8> in <module>()
      6 from operator import add
      7 import atexit
----> 8 sc = SparkContext('yarn-client') …
Run Code Online (Sandbox Code Playgroud)

python apache-spark pyspark jupyter-notebook azure-hdinsight

5
推荐指数
1
解决办法
1414
查看次数

pyspark - 将多个输入文件合并为一个RDD和一个输出文件

我在Python中有一个wordcount,我希望在Spark上运行多个文本文件并获得一个输出文件,所以这些单词在所有文件中都被计算在内.我尝试了一些解决方案,例如这里这里找到的解决方案,但它仍然提供与输入文件数量相同数量的输出文件.

rdd = sc.textFile("file:///path/*.txt")
input = sc.textFile(join(rdd))
Run Code Online (Sandbox Code Playgroud)

要么

rdd = sc.textFile("file:///path/f0.txt,file:///path/f1.txt,...")
rdds = Seq(rdd)
input = sc.textFile(','.join(rdds))
Run Code Online (Sandbox Code Playgroud)

要么

rdd = sc.textFile("file:///path/*.txt")
input = sc.union(rdd)
Run Code Online (Sandbox Code Playgroud)

不工作.任何人都可以建议如何制作一些输入文本文件的RDD?

提前致谢...

python hadoop mapreduce apache-spark pyspark

4
推荐指数
1
解决办法
6488
查看次数