Dataformを用いた分析クエリの一元管理
ファインディ株式会社 / ktagashira
メンバー / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
ツールの利用開始時期 | 事業形態 |
---|---|
2024年2月 | B to B B to C |
ツールの利用開始時期 | 2024年2月 |
---|---|
事業形態 | B to B B to C |
アーキテクチャ
アーキテクチャの意図・工夫
source/staging/intermediate/martの4層構造でデータ基盤を構成しています。
- source層: プロダクトのDBやGoogle AnalyticsからのRawデータが格納される層
- staging層: 下流で使うためのクレンジングやデータ形式を揃える処理を行う層
- intermediate層: martで使いやすくするためにstagingを結合する層
- mart層: SpreadsheetやLooker Studioに繋いで可視化を行う層
また、開発環境には1日1回本番環境からsource層を同期するようにしています。 開発環境で作成されたクエリは、毎日リリース作業を行なって本番環境に反映しています。
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
SpreadsheetやGASから利用されているBigQueryへのクエリが管理できておらず、データエンジニア側で処理が追いづらい状態になっていました。
どのような状態を目指していたか
Bizサイドで作成したクエリをデータエンジニア・データアナリストが適切にレビューできる状態を目指しました。
比較検討したサービス
- dbt
比較した軸
- クエリ開発者のキャッチアップが容易か
- 運用を簡単にできるか
選定理由
- Dataformで利用するSQLXがSQLとほとんど差分がないこと
- Googleのマネージドサービスなので、簡単に運用が始められること
導入の成果
改善したかった課題はどれくらい解決されたか
Dataform導入で、Bizサイドが作成したクエリをアナリスト・データエンジニアが適切にレビューできる体制を構築できました。
どのような成果が得られたか
Bizサイドも巻き込んで開発が進められた結果、mart層のモデル数はDataform導入後約4倍に増えました。
導入に向けた社内への説明
上長・チームへの説明
ツール選定の権限はチームにあったので、特に求められた要件はありませんでした。
活用方法
よく使う機能
- ワークフロー機能
特定のタグが付与されたテーブルでワークフローを構成し、データを更新しています。
- テスト
クエリ内にnonNullやuniqueKey等のテストを入れることで、データの信頼性を担保しています。
- 権限制御
Google CloudのIAMと連携してカラム単位で権限を制御しています。
ツールの良い点
- BigQueryと連携して簡単に始めることができる点
ツールの課題点
- 周辺ツールが充実していない点
- 日本語記事が少ない点
ファインディ株式会社 / ktagashira
メンバー / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
ファインディ株式会社 / ktagashira
メンバー / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法