2016-12-05 3 views
0

Je voulais lire les fichiers .ini (qui sont mes fichiers de configuration/propriétés) dans mon application spark 1.6.0. Pour cela j'utilise ConfigParser pour lire les fichiers de propriétés.Lire le fichier de propriétés dans Pyspark

import ConfigParser 
import os 
config = ConfigParser.ConfigParser() 
config.read(os.path.join(os.path.dirname(__file__), 'config.ini')) 

print 'config sections : ', config.sections() 

Il renvoie la liste vide en conséquence. J'ai essayé de soumettre mon travail à la fois en mode client et en mode cluster, à la fois en raison de l'échec de l'exécution du travail. S'il vous plaît laissez-moi savoir si je fais une erreur ici lors de la lecture des fichiers.

Répondre

0

Il est possible de lire les fichiers de configuration. Vous avez juste besoin soit emballer votre code dans l'oeuf d'annonce ou passer le fichier de configuration lors de l'étincelle soumettre comme:

spark-submit --master yarn --deploy-mode cluster --py-files conf/config.ini my_pyspark_script.py 

Ou si vous utilisez un fichier d'oeuf (qui contiendra vos modules python et le config.ini)

spark-submit --master yarn --deploy-mode cluster files --py-files my.egg my_pyspark_script.py 
configFile = resource_filename(Requirement.parse("myapp"), "conf/config.ini") 
config = ConfigParser.ConfigParser() 
config.read(configFile)