カイポケデータプラットフォームにおける Datastream の活用
株式会社エス・エム・エス / k12u
メンバー / データエンジニア / 従業員規模: 1,001〜5,000名 / エンジニア組織: 101名〜300名
ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|
10名以下 | 2024年7月 | B to B |
ツールの利用規模 | 10名以下 |
---|---|
ツールの利用開始時期 | 2024年7月 |
事業形態 | B to B |
アーキテクチャ
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
新規で導入しました。
新しいカイポケのデータプラットフォームの構築にあたり、Amazon Aurora PostgreSQL 上に存在している既存のデータベースからBigQueryを中心とするGoogle Cloud のデータ基盤へデータをコピーする手段の一つとして検討しました。
どのような状態を目指していたか
データプラットフォームの構築にあたりGoogle Cloud 上に構築された BigQuery を中心としたデータ基盤にデータをコピーする手段として、チーム内で運用可能で支払い/運用コストがリーズナブルな範囲で収まっている状態
比較検討したサービス
比較対象となりうる手段は以下がありますが費用面や運用工数の面で大きな差があり詳細な比較は行なっていません。
- TROCCO
- debezium (セルフホスティング)
比較した軸
データプラットフォームには潤沢な人的リソースはないため、マネージドな手段で変更データキャプチャ(CDC)が行えることが主要な条件となっていました。当然ですが費用が高額すぎないことやセキュリティやガバナンス上の懸念などもベースラインとしてクリアしている必要があります。
選定理由
Google Cloud のデータスタックを利用するにあたり標準的な構成であり、他のデータスタックを決めた時点で半ば自動的に決まっていく構成であり、それほど大きな論点はありませんでした。
導入の成果
改善したかった課題はどれくらい解決されたか
新しいカイポケのデータプラットフォームの構築は概ね順調に進んでおり、プラットフォームの新規構築手段としての成果には満足しています。
どのような成果が得られたか
カイポケのデータプラットフォーム自体がまだ正式な運用が始まっていないため、運用が始まっている段階での評価ではありませんが、構築・テスト段階における現在までの運用コストは期待通り低いものに治っていると考えています。
マイナーなトラブルは生じているものの、Google Cloud のサポートの十分な助けを得ることができているためトラブルに対する強い不安は感じていません。
導入時の苦労・悩み
Datastreamそのものに対するものではないですが、導入時に必然的に必要になる連携先のコンポーネントであるPostgreSQLやネットワーク構成上依存関係にあるクラウド間のVPNなどに対する担当者のノウハウ不足があり、これをキャッチアップしながら構築を進行するのに時間を要するケースがありました。
導入に向けた社内への説明
上長・チームへの説明
データスタック全体の主要部であるGoogle Cloud, BigQuery の選定の方が圧倒的にインパクトが大きいものでした。Datastream 自体のインパクトは相対的にとても小さいサービスで、選定にあたっては特に細かい説明は不要でした。
活用方法
よく使う機能
データ同期サービスであり、能動的に動かす機能は特にありません。
ツールの良い点
- 連携するコンポーネントと併用する前提ではあるものの、Datastream自体は比較的安価で提供されていると評価しています
- 多くのケースでデータベースに対する変更は自動的に追随可能でデータベースの運用に対する影響が比較的少ないです
ツールの課題点
(注:以下の記載のいくつかは Amazon Aurora PostgreSQL と連携して利用する場合を前提としているものがあります。)
- 利用事例が充実しておらず不明点やトラブル対応に関するリソースがインターネット上では潤沢とは言えない
- 多くのデータベースイベントに問題なく追随できるがいくつか対応していないイベントがある
- drop table, alter table (カラムの順番変更、カラムの型変更) では明示的なbackfillが必要になったり、ストリームの再作成が必要になったりする
- range 型など一部のデータ型には対応していないので fedarated query できる環境など回避手段を別途構築する必要がある
ツールを検討されている方へ
Datastream自体の概念は難しいものでも複雑なものでもないと思いますが、周辺のシステム・サービスと連携を行う際にはそれぞれに対する知識やノウハウ、例えばPostgreSQLのレプリケーションの仕組み、レプリケーションに関する権限構成の仕組み、VPN接続を使ったネットワーク構成といったものです。
株式会社エス・エム・エス / k12u
メンバー / データエンジニア / 従業員規模: 1,001〜5,000名 / エンジニア組織: 101名〜300名
よく見られているレビュー
株式会社エス・エム・エス / k12u
メンバー / データエンジニア / 従業員規模: 1,001〜5,000名 / エンジニア組織: 101名〜300名
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法