バッチ処理の実装にLuigiを使う機会があり、少し調べて整理しました。 irisデータセットをダウンロードしてきて、scikit-learnで学習したモデルをS3にアップロードする、簡単なサンプルも作ります。 Luigi Luigiは、データパイプラインを記述するためのPythonフレームワークです。 github.com 特徴 タスク間の依存関係を定型的に定義できる 失敗した(アウトプットが生成できなかった)タスクから再開できる スケジューリングはできない スタートキックは別の誰かが行う必要がある ユースケース 処理間に依存関係があり、各処理が複雑な場合に役立ちます。 例えば、データの前処理やパラメータ最適化などを含む複雑な処理フローを構造化して実装したい 例えば、インプットとなるデータ量が膨大なので、適切に中間生成物を作りながら処理したい 一方で、ジョブのスケジューリングは別の機構(c