ワークフロー管理についてメモ
WEB+DB PRESS plusの「ビッグデータを支える技術」という本の180ページから書かれているワークフロー管理について ワークフロー周りを開発している身としては忘れないようにしたい内容だと思ったので、備忘録として雑に残します。 ワークフロー管理 ワークフロー管理ツール 主な役割としては「定期的にタスクを実行すること」と「異常を検知してその解決を手助けすること」。 例えば以下のようなものがある 名称 種類 開発元 Airflow スクリプト型 Airbnb Azkaban 宣言型 Linkedin Digdag 宣言型 TreasureData Oozie 宣言型 The Apache Software Foundation Luigi スクリプト型 Spotify Prefect スクリプト型 Prefect Technologies Metaflow スクリプト型 Netflix Dagster スクリプト型 Dagster 基本機能とビッグデータで求められる機能 タスクを定期的なスケジュールで実行し、その結果を通知する タスク間の依存関係を定めて、決められた順にもれなく実行する タスクの実行結果を保持し、エラー発生時には再実行できるようにする 宣言型とスクリプト型 宣言型のメリット 最小限の記述でタスクを定義できる スクリプト型のメリット 柔軟性 ETLのプロセスにはスクリプト型のツール、SQLの実行には宣言型のツールをなどと使い分けるのも一つの方法。...