case-kの備忘録

日々の備忘録です。最近はGCPやデータ分析系のことを呟きます

Cloud Schedulerのパイプライン制御における活用用途について

Cloud Schedulerとは

GCPが管理するフルマネージドでサーバレスなクーロンサービスです。

どのような時に使うか?

通常のcronサービスと同じで、単純なバッチ処理の実行に使えます。こちらの例ではcronでHTTPをトリガーにCloud Functionsを実行。Dataflowテンプレートをキックしています。
f:id:casekblog:20191011111125p:plain
www.casleyconsulting.co.jp

Cloud Composerとの違い

単純なバッチ処理ならCloud Schedulerで十分ですが、逐次処理など複雑なパイプライン制御にはCloud Composerを使う必要があります。Cloud Composerについては以下の記事を確認してください。
www.case-k.jp

パイプライン制御におけるトリガーとしての役割

複雑なパイプラインを形成する場合はCloud Composerが必要ですがデメリットとしてコスト面が考えられます。特に実行頻度が少ない場合、使ってない間はCloud Composerの費用を抑えたいです。Cloud Schedulerを使えば必要なタイミングでのみCloud Composerを利用することができます。

運用フローを考慮したトリガー選定

頻度の少ない不定期にくるファイルや手動であげたファイルをトリガーに、最小限のコストでパイプラインを実行したいならCloud Schedulerよりも、Cloud Functions からCloud Composerを利用した方がコストを抑えることができます。運用フローを考慮し適切な方法を選ぶ必要があるかと思います。