【データオーケストレーション】

データオーケストレーション とは?

最終更新:
💡 バラバラなデータ処理をひとつの交響曲にまとめる指揮者
📌 このページのポイント
データオーケストレーション - 指揮者の役割 SaaS API DB ファイル/ログ オーケストレーター 抽出 変換 格納 スケジュール 依存関係管理 リトライ アラート通知 ログ記録 DWH 分析用 ML 学習用 代表的なツール Airflow Dagster Prefect
データオーケストレーションの全体像
ひよこ ひよこ
データオーケストレーションって、データパイプラインと何が違うの?
ペンギン先生 ペンギン先生
データパイプラインは「データを A から B に流す一連の処理」のことで、データオーケストレーションは「複数のパイプラインをいつ・どの順番で実行するか管理する仕組み」だよ。パイプラインが楽器で、オーケストレーションが指揮者というイメージだね
ひよこ ひよこ
cron定期実行するのとは違うの?
ペンギン先生 ペンギン先生
cronは「時間になったら実行する」だけだけど、オーケストレーションは「パイプラインAが完了したらBを実行、Bが失敗したらリトライして通知」みたいな複雑な制御ができるんだ
ひよこ ひよこ
なぜ今こんなに注目されてるの?
ペンギン先生 ペンギン先生
企業が扱うデータソースがどんどん増えているからだよ。SaaSAPIIoTデバイス、ログ、外部データ...これらを手動で管理するのは不可能だから、自動化されたオーケストレーションが必須になったんだ
ひよこ ひよこ
どんなツールがあるの?
ペンギン先生 ペンギン先生
老舗のApache Airflow、データアセット中心のDagsterPythonフレンドリーなprefectが三大ツールだね。クラウドサービスだとAWS Step FunctionsGoogle Cloud Workflowsもオーケストレーションの一種だよ
ひよこ ひよこ
AIのパイプラインにも使えるの?
ペンギン先生 ペンギン先生
もちろん!機械学習の学習パイプライン(データ前処理→学習→評価→デプロイ)もオーケストレーションで管理することが多いよ。MLOps分野ではKubeflow PipelinesやMLflowと連携させるケースも増えているね
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「データオーケストレーション」って出てきたら「データ処理の順序と依存関係を自動管理する仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Data Orchestration」 = データの統合管理・調整
💬 オーケストラの指揮者(コンダクター)のように、各パートを調和させて動かすイメージだよ
← 用語集にもどる