一般的なワークフローの問題

これがあなたの週のように聞こえますか?

これらはエッジケースではありません。それは、複数のツールでOCIデータフローのワークロードを実行しているチームにとっての通常の運用条件です。Control-Mがそれぞれどのように処理するかは以下の通りです。

オブジェクトストレージ到着

オブジェクトストレージデータが遅れて到着しました。あなたのSparkの実行はそれでも開始されました。

Control-MはOCIデータフロージョブを上流のデータ依存関係が満たされるまで保持し、その後ワークフローの適切なポイントでSparkの実行を解放します — 不適切な実行、未完成の入力、および下流の再処理を回避します。

クロスサービス依存関係

OCIデータ統合が遅れて完了しました。データフローはまだ待機しています。

Control-MはOCIデータ統合、OCIデータフロー、および周辺ジョブ間の依存関係を1つのワークフローで調整します。上流の成功した完了がSparkの実行を自動的に解放し、切り離されたスケジュールや手動の引き渡しを排除します。

障害回復

あなたのSparkの実行は午前2時13分に失敗しました。下流のジョブは待機し続けました。

Control-MはOCIデータフロージョブのステータス、結果、および出力を監視し、失敗した実行を特定し、依存する作業の進行を防ぎます。設定可能なワークフローの回復とアラートにより、オペレーターは障害が連鎖する前に解決への制御された経路を提供します。

ランタイム構成

今日のSparkの実行は異なる引数とエグゼキュータの容量が必要です。

Control-Mは追加のOCIデータフロー実行の詳細を渡すことができ、引数、パラメータ、構成、ドライバおよびエグゼキュータの形状、エグゼキュータの数を含みます。チームはSparkの実行をエンドツーエンドのワークフローから切り離すことなく、変化するランタイム要件を運用化できます。

SLAリスク

午前7時の分析の引き渡しが近づいています。Sparkはまだ実行中です。

Control-MはOCIデータフロージョブをエンドツーエンドのワークフローSLAに接続し、重要な締切の周りで集中監視とアラートを提供します。チームはビジネスプロセスの文脈でSparkの実行を確認し、下流の納品が逃された前に介入できます。

統合事実

Control-M + OCIデータフロー

ワークロードタイプ

Apache Sparkアプリケーション · バッチ処理 · Spark SQL · PySpark · Java/Scala Spark · 機械学習ワークロード · Spark Streaming

トリガータイプ

アップストリームジョブの完了 · オブジェクトストレージデータの到着 · API駆動のワークフロー · 時間スケジュール · Control-Mイベント · 依存関係条件

クロスツール依存関係

OCIデータ統合タスク · OCIオブジェクトストレージの配信 · Apache Airflow DAG · データベースジョブ · REST API呼び出し · ダウンストリーム分析ジョブ

クラウドプラットフォーム

Oracle Cloud Infrastructure · OCIデータフロー · OCIオブジェクトストレージ · OCIデータ統合 · Control-M SaaS

エラーハンドリング

ステータスポーリング · 障害耐性 · ダウンストリームカスケード防止 · ワークフローの回復 · SLA監視 · Control-Mアラート

スループット

大規模データセット · サーバーレスSpark処理 · バッチワークロード · 長時間実行されるSpark Streaming · 設定可能なエグゼキュータ · 設定可能なドライバとエグゼキュータの形状

可観測性

実行状況 · 実行情報 · ジョブ結果 · ジョブ出力 · エンドツーエンドワークフローモニタリング · SLA可視性 · Control-M監査コンテキスト

エンドツーエンドオーケストレーション

1つのプロダクションワークフロー。スタック内のすべてのツール。

Control-Mは、OCIデータフロー、OCIデータ統合、OCIオブジェクトストレージ、Airflow、データベース、およびクラウドサービス全体でワークフローをオーケストレーションします—依存関係の追跡、SLAの可視性、および自動回復をすべてにわたって行います。

  • クロスツール依存関係: OCIオブジェクトストレージ → OCIデータ統合 → OCIデータフロー → 分析の引き渡し
  • データ対応トリガー: オブジェクトストレージの到着、APIイベント、アップストリームジョブの完了、依存関係条件

OCIデータフロー

Spark実行をトリガーする · 実行構成を渡す · ステータスを監視する · 実行情報を取得する · SLAを調整する

OCIデータ統合

データタスクをトリガー · 上流変換を調整 · ワークフロー依存関係を管理

OCIオブジェクトストレージ

データ到着を調整 · アプリケーションアーティファクト · Sparkの入力と出力

Apache Airflow

DAGをトリガー · DAGの完了を調整 · DAGをエンタープライズ依存関係に接続

データベース

抽出を調整 · Spark処理のゲート · 下流ロードをトリガー

REST API

サービスを呼び出す · API駆動の依存関係を調整 · 外部アプリケーションに接続

Airflow共存

Control-MはあなたのAirflow DAGを置き換えません。上位のレイヤーを実行します。

よくある異議:"私たちはすでにAirflowを使用しています。" 問題はAirflowが何をするかではなく、Airflowが実行される前後に何が起こるかです。パイプラインが実際に失敗するのはそこです。

AirflowはそのDAGを管理します。Control-Mはその周りのすべてを管理します。

Airflowが処理

DAGレベルのオーケストレーションがデータパイプライン内で行われます

  • データパイプライン内でのDAGレベルのタスクオーケストレーション
  • Pythonオペレーター、センサー、およびタスク依存関係
  • パイプライン内で実行されるジョブの実行グラフ
  • 単一のDAGコンテキスト内での再試行を管理

Control-Mは追加します

DAGの周りのコーディネーションレイヤー

  • DAGの周りのコーディネーションレイヤー — 上流の条件:ファイルの到着、APIイベント、他のツールの完了に基づいてAirflowをトリガーします。
  • 各DAGのSLA貢献を、単独のルーチンだけでなく、エンドツーエンドのワークフロー全体で追跡します。
  • Airflowが開始される前に上流の依存関係が失敗した場合の障害回復を管理します。
  • 既存のDAGを再作成したり移行したりする必要はありません。

パイプラインを監視

ワークフローコンテキスト内でOCI Data Flowの実行を監視します。

OCI Data Flowはネイティブな実行レベルの監視を提供しますが、プロダクションパイプラインはSparkで停止することはめったにありません。Control-Mは周囲のワークフロー全体にわたる集中ビューを追加し、Data Flow実行を上流の依存関係、下流のジョブ、および運用結果に接続します:

  • OCI Data Flow実行状況

  • ジョブ結果と出力

  • 上流および下流の依存関係

  • エンドツーエンドワークフロー状況

  • 集中型運用アラート

SLA保証

OCI Data Flowパイプラインをスケジュール通りに保つ

成功したSparkの実行でも、そのプロセスに依存している場合、遅れて到着することがあります。Control-Mは、チームがOCI Data FlowワークロードにSLAジョブを添付し、上流および下流の依存関係と実行を調整して、重要なパイプラインをスケジュール通りに保つことを可能にします:

  • Data FlowのSLA監視

  • ジョブ間依存関係の調整

  • 高度なスケジューリング基準

  • 集中型ワークフロー状況

  • 制御された下流の実行

複雑なワークフローに秩序をもたらす

Control-Mがチームに、より大きな可視性、調整、制御で複雑なプロセスをオーケストレーションする方法を学ぶ。