Web APIでのログ収集におけるCloud Runの利用
会員限定コンテンツです。無料登録すると制限なしでお読みいただけます。
レビュー投稿日の情報になります
株式会社リブセンス / 富士谷康
EM / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 51名〜100名
最終更新日投稿日
ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|
10名以下 | 2020年2月 | B to B B to C |
ツールの利用規模 | 10名以下 |
---|---|
ツールの利用開始時期 | 2020年2月 |
事業形態 | B to B B to C |
アーキテクチャ
会員限定コンテンツ無料登録してアーキテクチャを見る
アーキテクチャの意図・工夫
- できるだけ他のデータ基盤のシステム構成と合わせ、シンプルな構成にした
- Redshiftはそのままにバックエンドだけを移行したことで、データ利用者のクエリ改変などの負担をなくした
- Redshiftの長期メンテナンスによる停止、将来のBigQuery移行などを考え、Redshiftへの定期的な書き込みを避けた
導入の背景・解決したかった問題
導入背景
詳細は「技術的負債解消LT会で「データ基盤の負債解消のためのリプレイス」を発表しました」に記載しています
ツール導入前の課題
- AWS上のデータ分析基盤(収集・蓄積等)と、Google Cloud上のデータ活用基盤(情報推薦・機械学習等)の2つあった
- AWSの分析基盤は負債が蓄積していたため、2022年ごろから、Google Cloudへのリプレイスを進めていた
- 特に、各種ログ(Webログ、ネイティブアプリログ、メール開封ログなど)の収集を行うシステムは、Elastic Beanstalk, Lambdaを中心に構築されていたが、構成が複雑で開発効率の低さが課題だった
- メインのWebログとアプリログはGoogle Analytics 4に移行したが、2024年に、残りのログの収集システムをGoogle Cloudでリプレイスする必要があった
どのような状態を目指していたか
- データ基盤で利用技術が統一されている
- 多くの部分がマネージドでメンテナンスが容易である
- 収集するログの追加を行いやすい
比較検討したサービス
- Google Kubernetes Engine(Autopilot)
- Google App Engine
- Google Cloud Storage(画像などのファイルを配置し使用状況ログを取得)
比較した軸
- フルマネージドで、スケールイン・スケールアウトが高速であること
- コードサイズなどのプラットフォーム上の制約が少ないこと。DockerやFastAPIを選択できること
- POSTメソッドでのログ収集もできること
- カナリアリリースが容易であること
- パフォーマンスモニターのダッシュボード等、利便性が高いこと
選定理由
- Cloud Runは機械学習モデルのサーブなどの目的でデータ活用基盤で2020年ごろから利用しており、一定の知見があった
導入の成果
改善したかった課題はどれくらい解決されたか
- 利用技術の統一により開発体験や開発効率の課題は概ね解決されたと考えている
どのような成果が得られたか
- インフラストラクチャーではなくアプリレイヤー、ログやデータ連携そのものに集中できるようになった
- 2025年中に、新たなSaaSからのログ取得機能の追加を予定しているが、実装・検証が必要な項目が減った
- Google Analytics 4との連携など、他の用途でもCloud Runの利用を広げている
導入時の苦労・悩み
- スケールアウト等を含む性能評価をどの程度実施するか。アプリケーションでの工夫により大きな問題はでないと判断しシビアな事前評価は行えていない
- CloudRun、Pub/Sub、BigQueryのそれぞれの間でのログ欠落の監視。現在も一部未解消
- カスタムドメインのマッピングで、従来、利用してきたCloud Runのドメインマッピングを使うか否か。ロードバランサーが不要で容易だが、プレビュー状態が続いており、レイテンシーがやや大きい
導入に向けた社内への説明
上長・チームへの説明
- 2020年の導入当初は、App Engineと比較し将来性やメリットなどを説明して導入
- 2024年のログ収集へのCloud Runの導入では、すでに利便性を実感しており、大きな論点はなかった
活用方法
- Cloud Runはログ収集、モデルのサーブなどの他にも、ちょっとした検証ツールの稼働でも利用している
よく使う機能
- Web APIのサーブ
- コンソール
ツールの良い点
- フルマネージド
- カナリアリリースが簡単
- パフォーマンスなど一目でわかるコンソール画面が便利
- ゼロスケーリングが可能
- コストが安い
- Cloud IAPが使える
- Cloud Monitoringとの連携が容易
ツールの課題点
以下のように多少注意すべき特性があります
- コールドスタート
- スケールアウト
- 前述のカスタムドメインなど
ツールを検討されている方へ
Cloud RunはWeb API以外にも、Cloud Runジョブ、Cloud Run関数などの機能追加により、様々な用途で利用できるため、Cloud Runをファーストチョイスとし、それで足りない場合に、徐々に他サービスを導入していくのが良いのでは、と思います
今後の展望
- 収集するログの追加
- Cloud Runのドメインマッピングからの移行、Cloud Armorの検証
- Recommenderを利用した設定の最適化
- イベントドリブンなログ収集での活用や、Cloud Runジョブの検証、オンライン機械学習システムの検証など
株式会社リブセンス / 富士谷康
EM / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 51名〜100名
2025年1月現在、株式会社リブセンスにてデータエンジニアとして、データ収集・蓄積・活用システム、情報推薦、機械学習システムなどの開発に従事
よく見られているレビュー
株式会社リブセンス / 富士谷康
EM / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 51名〜100名
2025年1月現在、株式会社リブセンスに...
もっとみる
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法