2016-11-21 5 views
2

スパーク・アプリケーションでどのようにロギングを使用できますか?スパーク・アプリケーション・ロギングの実行方法

スパークコードは書かれたとおりに実行されず、非同期で最適化されています。おそらく異なる順序で。

それがここで私に指摘されたとおりstylish spark dataset transformation 次は動作/必ずしもスパークの最適化されたクエリプランで期待どおりに動作しないでください。

logger.info("first") 
val first = df.someTransformation 
logger.info("second") 
val second = df.otherTransformation 
+1

正確にログしますか?ログに記録するコンテンツの実例を教えてください。 –

+0

いくつかのデータクリーニング手順を実行したいが、進捗状況を監視したい。各ステップごとにログメッセージを出力したい。 –

答えて

2

ログ・ステートメントあなたの例ではそうではありません非常に有意義です。

私は伐採の3つの方法を参照してください。

あなたはあなたの例で示したようあなたは自分の変換の「進歩」を記録したい場合は、後に(例えばcount()を呼び出す)アクションを適用する必要がa)のご変換は、これはスパークUIを使用して不要な計算

b)のモニタスパークを起こし、とUDF/UDAFsの内側に、あなたはのログを収集するためにアキュムレータを使用することができます)出力に

Cを持続するためにspark.eventLog.enabledのように設定に見えますエグゼクティブとドライバにアクセス可能にします。

+0

なので、ロギングUDFを書くことをお勧めしますか? –

+0

@GeorgHeilerいいえ。しかし、UDFを使って複雑な変換を行う場合、このコードにログを追加することができます –

関連する問題