2016-07-18 9 views
0

私はavroデータを読み込んで処理する必要があるsparkプログラムに取り組んでいます。私はsparkアプリケーションのためにジョブIDがどのように作成されるのかを理解しようとしています。私はavroデータを読み込むために以下のコード行を使用します。Spark UIのジョブタブを理解しようとしています

sqlContext.read.format(「com.databricks.spark.avro」)。負荷(パス)私の知る限りは、ジョブIDがプログラムで発生したアクションに基づいて作成されます知っているよう

。私の仕事は30分ごとに実行される予定です。このアプリケーションのsparkヒストリサーバーを見ると、ロード操作のためにジョブIDが作成されているのがわかります。それはたまにしか起こらず、ログは大丈夫です。私はspark 1.6.1を使用しています

私はロード操作がアプリケーションで新しいジョブIDを作成するかどうか知りたいですか?

答えて

0

一般的に、Spark SQLでのデータ読み込み操作は、DataFrameReaderのスキーマを提供しない限り、怠惰ではありません。ソースの範囲に応じて、単純なメタデータアクセスからフルデータスキャンまでの影響は異なります。

この特定のケースでは、it is pretty much limited to file system scanおよびa single file accessはスキーマを読み込みます。

+0

私のアプリケーションでは、2つのロード操作があります。 1つは寄木細工データをロードし、もう1つはavroデータをロードする。ジョブIDは寄木細工のデータ読み込み操作で作成されますが、ジョブIDの作成はavroデータの読み込み操作と一致しません。場合によってはavroデータの読み込み操作でジョブIDが表示されないことがあります。なぜこれが起こっているのだろうかと思います。アイデアがある場合は、この動作について詳しく説明できますか? – srujana

+0

なぜそれが矛盾しているのかを理解するために調べてデバッグしようとしましたが、データフレームを返すロードステップにも同じように追加されました。それでも、Spark UIのジョブは矛盾しています。 – srujana

+0

[mcve]がなければ私は尋ねることさえしません。 – zero323

関連する問題