Spark メトリクス

Spark メトリクスは、 Grafana で利用できるデフォルトのホームで、以下に説明する標準的なメトリクスを示します。 カスタムメトリクスは、 Spark アキュムレーターを使用して有効化できます。

Spark アキュムレータ

Spark では、アキュムレーターを使用してカスタム数値メトリクスを作成できます。 Apache Spark を使用したバッチパイプラインでは、数値アキュムレーターのタイプがサポートされています。 これらのアキュムレータが作成されると、 Grafana がクエリーを実行してダッシュボードに追加できる名前付きメトリクスとして利用できるようになります。 一般的 spark_accumulators_に、メトリック名の先頭には語句が付きます。

アキュムレーターの使用について詳しく は、カスタムメトリクスおよび Spark アキュムレーターのドキュメントを参照してください。

パイプラインの Spark メトリクス

メートル法 説明
driver_DAGScheduler_job_allJobs パイプラインジョブの数
driver_DAGScheduler_job_activeJobs 実行中のパイプラインジョブの数
executor_threadpool_activeTasks 実行中のジョブあたりの作業者数
executor_threadpool_completeTasks 実行中のジョブごとに完了した Spark タスクの数
driver_DAGScheduler_job_allJobs パイプラインジョブあたりの Spark ジョブ数
driver_DAGScheduler_stage_failedStages パイプラインジョブごとの失敗したステージの数
driver_accumulators_.* アキュムレーターの値

パイプラインの追加の Spark メトリクス

次のメトリクスは、既定のホームには表示されませんが、カスタムダッシュボードで使用できます。

コンテナメトリクス

メートル法 単位 説明
container_cpu_usage_seconds_total コンテナ使用済み合計 CPU
container_memory_working_set_bytes バイト数 使用されているコンテナメモリ

Spark ドライバーメトリクス

メートル法 単位 説明
driver_jvm_total_committed バイト数 ドライバの JVM で使用できるメモリ。
driver_jvm_total_init バイト数 ドライバの初期化時に JVM が使用できるメモリ量。
driver_jvm_total_max バイト数 ドライバの JVM で使用できるメモリの最大量。
driver_jvm_total_used バイト数 ドライバが現在使用しているメモリの量。
driver_jvm_heap_used バイト数 ドライバが現在使用しているメモリの量。
driver_jvm_non_heap_used バイト数 現在ドライバーが使用している非ヒープメモリの量。

Spark 実行者メトリクス

メートル法 単位 説明
executor_threadpool_activeTasks カウント アクティブな実行タスクの数
executor_threadpool_completeTasks カウント 完了した実行タスクの数
jvm_G1_Young_Generation_time G1 世代のガーベッジコレクション時間
jvm_G1_Old_Generation_time G1 古い世代のガーベッジコレクション時間
jvm_G1_Young_Generation_count カウント G1 世代のガベージコレクションのカウント
jvm_G1_Old_Generation_count カウント G1 古い世代のガベージコレクションの数
jvm_heap_usage バイト数 実行者が現在使用しているメモリ量。
jvm_non_heap_usage バイト数 実行者が現在使用している非ヒープメモリの量。

パイプラインメトリクスのフィルタリング

次の Prometheus フィルタを使用して、パイプラインのメトリクスをフィルタリングできます。

フィルタ条件 キーを押します
パイプライン ID PieLineId PipeLineId="00112233-4455-667-8899-aabbccddeeff"
ジョブ ID 配布 ID DeploymentId="00112233-4455-667-8899-aabbccddeeff"
ポッド名 pod_name="job--worker-" pod_name="job-00112233-4455-667-8899-aabbccddeeeff-worker-0"
実行者 ID 実行者 ID executorId="0"

たとえば、特定のパイプライン ID およびジョブ ID のすべての実行者の G1 若い世代のガベージコレクションを取得するには、次のフィルタを使用します。

jvm_G1_Young_Generation_time{DeploymentId="ffeeddcc-bbaa-9988-7766-554433221100",PipeLineId="00112233-4455-6677-8899-aabbccddeeff"}

ノートブックの Spark メトリクス

メートル法 説明
実行者あたりの平均メモリ エグゼキューターおよび Spark ドライバーごとの平均メモリー
すべてのユニットの Spark メモリ使用量の平均値と合計 エグゼキューターおよびドライバーごとの平均メモリの合計。 クラスタのすべてのメモリも集約します
アクティブなコア アクティブなコアの数
ステージ 実行中、保留中、失敗などのステージ
すべての実行者によるタスク 実行者、アクティブ、プール別のタスク。 これは、アクティブで利用可能なコアを監視するもう 1 つの方法です
メッセージ処理時間 平均メッセージ処理時間
各実行者が完了したタスク 実行者およびカウンタによって完了したタスク
ファイルシステムは、実行者によって読み取り / 書き込みを行います ファイルシステムの読み取りおよび書き込みがバイト単位で行われます ( ファイルシステムがジョブ内でのみ使用されている場合 )

」に一致する結果は 件です

    」に一致する結果はありません