一般的なお問い合わせと所在地情報
お問い合わせ一般的なワークフローの問題
これはエッジケースではありません。これらは、複数のツールでSparkジョブを実行しているチームの通常の運用条件です。Control-Mが各ケースをどのように処理するかを示します。
遅延データ
Control-Mは、Sparkジョブをリリースする前に必要なHDFSファイルと最小サイズを監視します。到着条件が定義されたウィンドウ内で満たされない場合、ウォッチャーは不完全なデータに対して処理を開始するのではなく、失敗します。
ジョブの失敗
Control-MはSparkジョブをエンドツーエンドのワークフローの一部として追跡し、失敗後に依存するジョブが進行するのを防ぎ、定義された回復アクションを適用して不完全な処理が下流の配信に波及しないようにします。
AIRFLOW · SPARK
Control-MはAirflow DAGとSpark処理の間の依存関係を調整し、上流の条件が満たされて初めてSparkジョブをリリースします — 切り離されたスケジュールやオーケストレーションレイヤー間の手動ハンドオフに依存することなく。
HDFS準備
Control-MはSpark実行の前後にHDFSコマンドを実行し、コマンドの失敗がジョブを失敗させるべきかどうかを判断できます。準備とクリーンアップは、隠れたスクリプト依存関係ではなく、ワークフローの管理された部分になります。
SLAリスク
Control-Mは完全なビジネスサービス内でSparkワークロードを追跡し、依存するジョブにわたってSLA監視を適用し、エンドツーエンドのワークフローが必要な完了時間を逃す前に遅延を浮き彫りにします。
Control-M + Spark
|
workload.types |
PySparkスクリプト · Javaアプリケーション · Scalaアプリケーション · スパークアプリケーションJAR · アプリケーション引数 · スパークコマンドラインオプション |
|
trigger.type |
HDFSファイル到着 · 最小ファイルサイズ · 上流ジョブの完了 · 時間スケジュール · ワークフロー依存関係 · Control-Mイベント |
|
cross_tool.deps |
Apache Airflow DAG · Hiveジョブ · HDFSコマンド · Snowflakeジョブ · Databricksジョブ · GCP Dataproc · 下流ファイルデリバリー |
|
cloud.platforms |
Hadoop/YARNクラスタ · オンプレミスおよびクラウドホストのHadoop · GCP Dataproc、Azure HDInsight、Amazon EMR、OCI Data Flowのための別々のControl-M統合と一緒に実行 |
|
error_handling |
事前コマンドの失敗処理 · 事後コマンドの失敗処理 · 依存関係ゲーティング · 再実行アクション · 下流カスケード防止 · SLAアラート |
|
throughput |
分散データ処理 · クラスター規模のワークロード · バッチスパークアプリケーション · ジョブレベルのオーケストレーション · レコードごとのワークフローのスケジューリングなし |
|
observability |
ジョブステータス · ジョブ出力 · YARNの集約ログ · ワークフロー依存関係 · SLA監視 · エンドツーエンドのワークフローの可視性 |
エンドツーエンドオーケストレーション
Control-Mは、スパーク、Airflow、HDFS、Hive、Snowflake、ファイル転送、およびクラウドサービス全体でワークフローを調整し、依存関係追跡、SLA可視性、および自動リカバリーを全てのジョブフローで提供します。
|
スパーク |
PySpark実行 · Java/Scalaアプリケーション · 引数 · コマンドラインオプション · ジョブ監視 |
|
HDFS |
ファイル監視 · 最小サイズ基準 · コマンド · 準備 · クリーンアップ |
|
Hive |
スクリプト実行 · パラメーター · 依存関係調整 · ジョブ監視 |
|
Apache Airflow |
DAGトリガー · ステータス監視 · ツール間依存関係調整 |
|
Snowflake |
SQL実行 · データロード · ストアドプロシージャ · 下流ワークフロー調整 |
|
GCP Dataproc |
Sparkバッチ、ワークフローテンプレート、サーバーレスSparkバッチ |
|
Azure HDInsight |
Sparkバッチ実行、アプリケーションパラメーター、Sparkログ |
airflowの共存
反対意見は一般的です: “私たちはすでにAirflowを使用しています。” 問題はAirflowが何をするかではなく、Airflowが実行される前後に何が起こるかです。そこがパイプラインが実際に失敗する場所です。
AirflowはそのDAGを管理します。Control-Mはその周りのすべてを管理します。
airflowが処理します
control-mが追加します
パイプラインを監視する
Sparkはアプリケーション内で何が起こるかを示します。プロダクションパイプラインは通常、ストレージ、変換、オーケストレーション、デリバリーシステムにまたがります。Control-MはデータチームにSparkのジョブと依存関係の周囲を1つの運用ビューを提供します:
Sparkジョブ実行ステータス
上流および下流の依存関係
ジョブ出力とログ
エンドツーエンドワークフローの可視性
障害と回復ステータス
SLA保証
成功したSparkアプリケーションも、依存しているビジネスプロセスにとっては遅すぎる場合があります。Control-MはSpark実行をエンドツーエンドのサービスSLAに接続し、チームが遅延を特定し、納品が遅れる前に依存関係を管理できるように支援します:
エンドツーエンドSLAトラッキング
必要な完了時間
依存関係に配慮したワークフローモニタリング
遅延と障害の可視性
調整された回復アクション
Control-Mがチームにどのように複雑なプロセスを可視化、調整、制御してオーケストレーションするかを学びます。