Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dbt_Cloudとdbt_Core併用の試み
Search
Toshiki Tsuchikawa
August 22, 2023
Programming
3
1.2k
dbt_Cloudとdbt_Core併用の試み
https://findy.connpass.com/event/291767/
でのLTになります。
Toshiki Tsuchikawa
August 22, 2023
Tweet
Share
More Decks by Toshiki Tsuchikawa
See All by Toshiki Tsuchikawa
急成長する組織を支えるデータ基盤のこれまで、これから
ttccddtoki
6
670
アジリティの高いデータ基盤を目指して
ttccddtoki
4
1.5k
DMBOKを参考にしたデータマネジメントの取り組み
ttccddtoki
6
2.4k
データ品質を重視したデータ基盤プロダクト開発
ttccddtoki
8
2.3k
タイミーの未来を支えるデータ基盤プロダクト
ttccddtoki
1
720
datatech-jp Casual Talks #3
ttccddtoki
0
1k
Lookerとdbtの共存
ttccddtoki
1
1.4k
[輪読会]実践的データ基盤への処方箋
ttccddtoki
0
260
データ基盤品質向上のための一年
ttccddtoki
0
7.8k
Other Decks in Programming
See All in Programming
nekko cloudにおけるProxmox VE利用事例
irumaru
3
430
CSC305 Lecture 26
javiergs
PRO
0
140
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
360
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
return文におけるstd::moveについて
onihusube
1
1k
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
HTTP compression in PHP and Symfony apps
dunglas
2
1.7k
Symfony Mapper Component
soyuka
2
730
php-conference-japan-2024
tasuku43
0
240
モバイルアプリにおける自動テストの導入戦略
ostk0069
0
110
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
170
Haze - Real time background blurring
chrisbanes
1
510
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Being A Developer After 40
akosma
87
590k
RailsConf 2023
tenderlove
29
940
For a Future-Friendly Web
brad_frost
175
9.4k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Thoughts on Productivity
jonyablonski
67
4.4k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
GraphQLとの向き合い方2022年版
quramy
44
13k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
Six Lessons from altMBA
skipperchong
27
3.5k
Transcript
2023/08/22 土川稔生 dbt Cloudとdbt Core併用の試み @tvtg_24 データ基盤管理の考え方 〜dbtの極意〜 Lunch LT
データ基盤や開発チームの規模 によるdbt構成の事例
土川 稔生 (Tsuchikawa Toshiki) • 株式会社タイミーに2020年入社 • DRE (Data Reliability
Engineering) チーム ◦ データエンジニアとしてデータ基盤プロダク トを構築 ◦ 現在はプロダクトオーナーとして、データ基 盤プロダクト作りに励む 3 自己紹介
目次 • dbtの導入経緯 • dbt Cloudとdbt Coreの併用
1 dbtの導入経緯
現在のデータ基盤概要
7 🔥 ETLのT処理のツール依存性、肥大化、不透明性 - データ量の増加に伴いマスキングなどの加工処理を 行っているembulk内のT処理コードの実行時間が肥大 化してきた - troccoなどのembulk以外のデータパイプラインの導入 があるが、T処理がembulkに依存している
- embulkのコードを読まないと T処理の内容が把握でき ず、分析者からすると不透明な処理である 💡 dbt Cloudの導入によって期待すること - dbt Cloudを用いてembulkで行っていたT処理を代替 - データパイプラインに用いているツールに依存せずに、 BigQueryに収集したデータに対して様々な加工が可能 になる - SQL記述ができることによる DWH, DM開発メンバーの 増加 マスキングを含めた加工処理 ❌ dbtの導入理由
8 dbt Cloudの選定理由 要件 • DAG構成で記述できる • スケジューラ機能がある • 事例が豊富である
• メンテ・導入コストが少ない • 費用面での制約... など 比較したサービス • Panoply • cloud dataflow • data fusion • Dataform • dbt Cloud 選定日時: 2021年9月 データ基盤チーム: 2人
9 dbt Cloudの選定理由 → 費用より事例の豊富さの方が要件として優先度が高いので、dbt Cloudに選定
2 dbt Cloudとdbt Coreの併用
dbt Cloudを導入して...! 導入前期待していたことはほとんど達成できた • 加工処理をembulkから剥がすことで、スケーラブルなパイプラインを構築できた • dbtのパッケージによりテストや品質チェックも楽になった • インフラ準備する必要がないため、少人数チームでも問題なく運用ができた •
加工処理が見やすく、開発効率が上がった • 加工処理を開発できるメンバーが増えた (DWH, DM開発)
新しく出てきた課題 • 他チームがみて加工処理がわかるほど単純ではなかった • JobやEnvironmentはdbt Cloudではコード管理できなかった • 開発チームが増えるにつれ、 dbt Cloudの金額コストが上がってきた
• dbt Cloudのインフラサイズだとメモリや CPUの強度が足りなくなってきた • dbt Cloud以外のエディタで他のコマンドを用いながら開発したいという声がある 日時: 現在 dbtの開発人数: 約10人
dbt Core併用の試み dbt Cloud • 対象ユーザー SQLを武器とする分析者 • 利用用途 DWH,
DMのモデリングが中心 • 利用しない用途 Env、Jobの定義、スケジューラー dbt Core • 対象ユーザー 誰でも • 利用用途 dbt Cloudが担当しないJobなどのコード管理 含めて、全て 期待すること • Jobなどのコード管理による開発における信頼性の向上 • dbtを開発できる人数やチームの増加 など
まとめ これまで...! • dbt Cloudを導入することで、ETL構成をELT構成に変更することができた • それに加え、開発に参加する人も増え、 DWH, DM開発もスケールするようになった •
一方でdbt Cloudだけの運用では特に品質面で問題が起こるようになり dbt Coreも併用して使お うとしている これから...! • dbt Cloudとdbt Coreを併用していくことで、開発の参加者をさらにスケールさせつつ、開発効率、 データ品質の向上を目指す
まだまだ道半ばなのでお力を貸してください!!! https://hrmos.co/pages/timee/jobs/1682251404118319115 積極的に採用中です!!!