42

SparkContext 的 Scala 版本具有以下属性

sc.hadoopConfiguration

我已经成功地使用它来设置 Hadoop 属性(在 Scala 中)

例如

sc.hadoopConfiguration.set("my.mapreduce.setting","someVal")

然而,SparkContext 的 python 版本缺少该访问器。有没有办法将 Hadoop 配置值设置到 PySpark 上下文使用的 Hadoop 配置中?

4

3 回答 3

79
sc._jsc.hadoopConfiguration().set('my.mapreduce.setting', 'someVal')

应该管用

于 2015-09-18T21:30:30.353 回答
5

--conf您可以在提交作业时使用该参数设置任何 Hadoop 属性。

--conf "spark.hadoop.fs.mapr.trace=debug"

来源:https ://github.com/apache/spark/blob/branch-1.6/core/src/main/scala/org/apache/spark/deploy/SparkHadoopUtil.scala#L105

于 2017-05-05T04:14:07.640 回答
3

我查看了 PySpark 源代码 ( context.py ) 并没有直接的等价物。相反,一些特定的方法支持发送(键,值)对的映射:

fileLines = sc.newAPIHadoopFile('dev/*', 
'org.apache.hadoop.mapreduce.lib.input.TextInputFormat',
'org.apache.hadoop.io.LongWritable',
'org.apache.hadoop.io.Text',
conf={'mapreduce.input.fileinputformat.input.dir.recursive':'true'}
).count()
于 2015-03-04T00:46:50.133 回答