Datastreamの導入経緯と、導入後の死活監視について
会員限定コンテンツです。無料登録すると制限なしでお読みいただけます。
レビュー投稿日の情報になります
株式会社クロスビット / Shoya Mizuno
EM / EM / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
最終更新日投稿日
ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|
10名以下 | 2023年4月 | B to B |
ツールの利用規模 | 10名以下 |
---|---|
ツールの利用開始時期 | 2023年4月 |
事業形態 | B to B |
アーキテクチャ
会員限定コンテンツ無料登録してアーキテクチャを見る
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
主要サービスで扱ってるデータを定期的にクリーンアップ(DELETE)したかったが、
将来のデータ活用に向け、削除対象のデータを含めた全データに一定の加工を行った状態でデータレイク(BigQuery)に格納・退避させておきたかったです。
どのような状態を目指していたか
- 取りこぼしなく、Near-Realtimeで変換〜格納が行えること
- 変更差分(最新の状態ではなく、データの断面として)全てデータレイクに格納される
比較検討したサービス
以下のCDCソリューションと比較して決定
- BigQuery("外部データソースへの接続"機能)
比較した軸
- マネージドサービスであること
- 最終的にはBigQueryに書き出したいが、その前に独自のデータ変換処理(ETL)が可能であること
- ソースとなるRDBのバイナリログレベルの記録(INSERT, UPDATE, DELETEの区別、更新日時)も含めてエクスポートできる
導入の成果
最終的には、
「1. Cloud SQL」→「2. Datastream」→「3. GCS」→「4. 変換処理(※割愛)」→「5. BigQuery」のような構造となったが、
"2→3"の部分でRDBの変更差分を全てエクスポートできたため、このアーキテクチャで構築することができました。
導入に向けた社内への説明
上長・チームへの説明
GoogleCloudの複数サービスを組み合わせたデータ変換処理を実現する中で、なるべくRDBからのキャプチャ部分にはコストはかけられませんでした。
マネージドで運用しやすく、ランニングコストも15000円/月程度と決して高くないという点で納得してもらえました。
活用方法
よく使う機能
導入後、Datastreamの停止や障害を即時通知する必要があったため、以下の改善を施しました。
※アーキテクチャ図は、この部分の説明を表現した図となります。
- DatastreamのStatusをチェックするCloud Functionsを用意
- 「1.」のFunctionsをCloud Schedulerで定期実行
- Statusの異常を検知したら、Slackへ通知
ツールの良い点
- マネージドサービス
- 書き出し形式が「JSON形式」「AVRO形式」から選択できる
- データキャプチャの頻度が高い
ツールの課題点
- データキャプチャ後の部分に関して、GCSやBigQueryへの接続はサポートしてますが、他のデータ基盤への接続も容易になると尚良いです。
- 通知サービス(Monitoringの"アラート"機能など)に繋げて、Statusの状態を元に通知ができると便利になると思います。
株式会社クロスビット / Shoya Mizuno
EM / EM / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
よく見られているレビュー
株式会社クロスビット / Shoya Mizuno
EM / EM / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法