2017-11-20 10 views
0

私はConfigParserを実装して、config.propertiesファイルからいくつかの設定をロードするプロジェクトをpysparkに持っています。ローカルのIT作業の罰金で、これまでどんな問題なし PysparkクラスターでConfigParserのセクションエラーが発生しません

...

しかし、クラスタ上で、それは何のセクションのエラーをスローしません。

私は「SparkFiles.get(」ファイルを「)」を使用してファイルパスを取得​​

の執行スロー--files引数にファイル私は、インターネットをクロールし、プロパティをprovideingのいくつかの解決策を見つけました。

config = ConfigParser.SafeConfigParser(os.environ) 
config.read(SparkFiles.get('file')) 

config.get("SECTION","name")を使用して関数内の変数にアクセスすると、No Sectionエラーがスローされます。

ここにコードフローがあります。 main.py iは、SparkContextを初期化します。

config = ConfigParser.SafeConfigParser(os.environ) 
config.read(SparkFiles.get('file')) 

そして、次に私はconfig.get("SECTION","name")にアクセスしようUtility.pyから関数を呼び出す:

は、その後、私は私はこれを行う上にありUtility.pyをインポートするimport文を使用して。エラーが発生します。

+0

こんにちは!あなたがMVCEを投稿する必要があるのを助けることができるようにしたい場合。ここで作成する方法については、https://stackoverflow.com/help/mcveを参照してください。 – eliasah

答えて

0

sparkでジョブを実行依頼しているときに--filesにファイルを渡す場合は、プロパティファイルをconfig.read(SparkFiles.get( 'file'))として読み込まないでください。

config.read( 'file')を読んでみてください。それは糸クライアントモードで私のために動作します

+0

は糸のこの特殊なケースです。それ以外の場合でも実行されます。 –

関連する問題