2015-09-02 15 views

risposta

9

Quindi, che cosa il vostro vedere è che la SparkConf non è un oggetto Java, questo sta accadendo perché la sua cercando di utilizzare il SparkConf come primo parametro, se invece si usa sc=SparkContext(conf=conf) si dovrebbe usare la configurazione. Detto questo, potrebbe essere preferibile avviare un normale programma python piuttosto che arrestare il contesto di scintilla predefinito & riavviarlo, ma sarà necessario utilizzare la tecnica dei parametri denominata per passare nell'oggetto conf in entrambi i casi.

+0

Grazie, ho appena perso – MARK

+0

Anch'io quando ho per prima cosa ho dato un'occhiata (sfortunatamente non riusciamo a fare lo stesso tipo di trucchi in Python che possiamo fare con Scala per renderlo difficile da abbinare all'API a meno che non aggiungiamo un codice veramente brutto). – Holden

2

Il modo corretto di modificare le impostazioni di scintilla in linea per un determinato contesto Spark richiede che il contesto sia chiuso. Per esempio:

from pyspark import SparkContext 
SparkContext.setSystemProperty('spark.driver.maxResultSize', '10g') 
sc = SparkContext("local", "App Name") 

fonte: https://spark.apache.org/docs/0.8.1/python-programming-guide.html

P.S. se avete bisogno di chiudere la SparkContext basta usare:

SparkContext.stop(sc) 

e di raddoppiare controllare le impostazioni attuali che sono stati impostati è possibile utilizzare:

sc._conf.getAll() 
Problemi correlati