はじめに
こんにちは。私はRSSでデータ分析基盤のエンジニアをしているY.R.です。
私の所属するチームではデータ分析基盤を運用しています。
チームとしては2024年10月に以下の記事を出しています。
データ分析基盤チームの紹介と取り組み内容
この記事の最後に以下のような記述があります。
「Cloud Composer」をETLプロセスの実行ツールとして活用しているものがあります。これは学習コストを最小限に抑えることを重視した結果ですが、Cloud Composerはあくまでもオーケストレーションツールであり、本来はETLジョブを構成するタスクを管理するのに適したサービスであるため、当該用途での使用は適切ではありません。」

今回はこの技術的負債解消のお話です。
課題
改修に至った背景には、いくつかの理由があります。 主な課題として、以下の3点が挙げられます。
- 1. 運用負荷が高い
- 2. 利用頻度と依存関係の単純さの割には高いコスト
- 3. スケーラビリティへの備えが難しい
課題1. 運用負荷が高い
従来はスパイク状の負荷の発生によってAirflowサーバーがダウンすることがあり、その復旧に手間がかかるため、処理を安心して任せられない状態でした。
Cloud Composerは、裏側で複数のGoogle Cloudサービスが連携しています。
具体的にはGKE、Cloud SQL、App Engineなどが利用されています。それゆえ、エラーの原因特定と復旧が毎回困難でした。
復旧するまで、Cloud Composerによる200を超えるデータ処理がすべて停止しました。
課題2. 利用頻度と依存関係の単純さの割には高コスト
Cloud Composerはデータパイプライン用途でのみ使用していました。
しかし、BigQuery全体のコストとCloud Composer単体のコストは同程度でした。
Composerで管理するテーブルは300前後です。
一方、BigQuery全体のテーブル数は6000以上でした。この差を考慮すると、局所的にコストがかかりすぎていることがわかります。
複雑なパイプライン処理や高い利用頻度であれば許容できます。しかし、私たちの利用状況はそこまでではありませんでした。
にもかかわらず、インスタンスを常時起動する必要があり、費用が高止まりしていました。
課題3. スケーラビリティへの備えが難しい
スパイク状の負荷への対策は必要でした。また、今後のデータパイプラインの増加も考慮する必要がありました。
そのため、スケールアウトやスケールアップが求められます。しかし、コストの問題でそのような対処がしづらい状況にありました。
解決
設計
結論として、構成を以下のように変更しました。 この変更により、①運用負荷、②コスト、③スケーラビリティの課題を解決しました。
Before

After

この設計の利点
利点1. シンプルなサーバレスサービス採用による運用負荷低減
構成をシンプルなサーバレスサービスの組み合わせに変更しました。
これにより、エラー発生時でもデータ取り込みの処理が復旧しやすくなりました。
この結果、「課題1. 運用負荷が高い」を解消しました。
利点2. コスト低減
月20万円程度かかっていた処理を月1,000円未満に抑えることができました。
これにより、「課題2. 利用頻度と依存関係の単純さの割には高コスト」を解消しました。
利点3. スケーラビリティ向上
コストのネックが解消され、データパイプラインを増やしやすくなりました。
これにより、「課題3. スケーラビリティへの備えが難しい」を解消しました。
展望
今後は、自然言語でBigQueryのデータが分析可能な状態を目指します。
そのためにAI-agentの検証を進め、データ分析基盤の品質を向上させます。
参考資料
Google Cloud Scheduler の料金
https://cloud.google.com/scheduler/pricing?hl=ja
Cloud Scheduler について
https://cloud.google.com/scheduler/docs/overview?hl=ja
Workflows overview
https://cloud.google.com/workflows/docs/overview
Dataform の概要
https://cloud.google.com/dataform/docs/overview?hl=ja
プライベート IP 環境のアーキテクチャ
https://cloud.google.com/composer/docs/concepts/architecture?hl=ja#private-ip
Google Cloud のデータ パイプライン サービスの紹介と選び方
https://lp.cloudplatformonline.com/rs/808-GJW-314/images/Data_Analytics_%20OnAir_q1_0212_Session.pdf
レイスシステムソリューションズ株式会社のソフトウェア開発や、
採用に関するお問い合わせについては、下記のリンクにてお問い合わせください。

-1.png)


