2015-03-04 3 views
26

версия Scala из SparkContext обладает свойствомКак установить параметры конфигурации Hadoop от pyspark

sc.hadoopConfiguration 

Я успешно использовал это, чтобы установить свойства Hadoop (в Скале ..)

например

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

Однако версия Python SparkContext не имеет этого доступа. Есть ли способ установить значения конфигурации hadoop в конфигурацию Hadoop, используемую контекстом pyspark?

ответ

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

должен работать

+3

Это решение также относится и к тех, кто пытается получить их AWS AccessKeyId/SecretAccessKey быть приняты при использовании S3N: // адреса. 'sc._jsc.hadoopConfiguration(). Set ('fs.s3n.awsAccessKeyId', '')' –

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() 
Смежные вопросы