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 docsを使ったデータカタログの運用事例紹介
Search
10xinc
July 11, 2023
Programming
2
3k
dbt docsを使ったデータカタログの運用事例紹介
10xinc
July 11, 2023
Tweet
Share
More Decks by 10xinc
See All by 10xinc
10Xでのデータ基盤の変遷とこれから: データマネジメントのリアル 〜BtoB企業3社の歩みとこれから〜
10xinc
6
8.7k
10Xが掲げるオリジナルの品質特性について #nihonbashitesttalk / 10X quality characteristic
10xinc
2
1k
株式会社10X - Culture Deck
10xinc
86
1.4M
データマネジメントを支える武器としてのメタデータ管理
10xinc
6
35k
Elementaryを用いたデータ品質の可視化とデータ基盤の運用改善
10xinc
9
17k
テストの完了をゴールにしない! ~仮説検証を繰り返し、開発・QA・ユーザーが交流しながら開発することで見えてくる理想の姿~ - #RSGT2024 #DevSumi / Shift left and Shift right
10xinc
13
9.7k
Dataplexとdbt-osmosisを活用した「がんばらない」データカタログとメタデータ管理の運用(Data Engineering Study #22)
10xinc
3
16k
スタートアップにおけるデータマネジメントの始め方の事例紹介(datatech-jp Casual Talks #5)
10xinc
5
11k
データプロダクトとは何か
10xinc
7
6.2k
Other Decks in Programming
See All in Programming
リリース8年目のサービスの1800個のERBファイルをViewComponentに移行した方法とその結果
katty0324
2
2.8k
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
6
1.7k
From Subtype Polymorphism To Typeclass-based Ad hoc Polymorphism- An Example
philipschwarz
PRO
0
110
Prompt Engineering for Developers @ AWS Community Day Adria 2024
slobodan
0
120
レガシーな Android アプリのリアーキテクチャ戦略
oidy
1
170
Vaporモードを大規模サービスに最速導入して学びを共有する
kazukishimamoto
4
4.2k
go.mod、DockerfileやCI設定に分散しがちなGoのバージョンをまとめて管理する / Go Connect #3
arthur1
10
2.3k
Android 15 でアクションバー表示時にステータスバーが白くなってしまう問題
tonionagauzzi
0
110
2万ページのSSG運用における工夫と注意点 / Vue Fes Japan 2024
chinen
3
1.3k
Dev ContainersとGitHub Codespacesの素敵な関係
ymd65536
1
120
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
1
240
GCCのプラグインを作る / I Made a GCC Plugin
shouth
1
140
Featured
See All Featured
Six Lessons from altMBA
skipperchong
26
3.4k
What's new in Ruby 2.0
geeforr
342
31k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
9
670
Art, The Web, and Tiny UX
lynnandtonic
296
20k
Automating Front-end Workflow
addyosmani
1365
200k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
GraphQLとの向き合い方2022年版
quramy
43
13k
The Power of CSS Pseudo Elements
geoffreycrofte
72
5.3k
Documentation Writing (for coders)
carmenintech
65
4.4k
Transcript
©10X, Inc. All Rights Reserved. dbt docsを使った データカタログの運用事例紹介 データ基盤管理の考え方 〜データカタログ、データレイクの極意〜
Lunch LT 株式会社10X 瀧本晋也
©10X, Inc. All Rights Reserved. 自己紹介 2 所属: 株式会社10X 氏名:
瀧本 晋也 職種: データプロダクトエンジニア 居住: 山梨 Twitter: @takimo 最近はTokyo dbt Meetupのオーガナイザーを やってます
©10X, Inc. All Rights Reserved.
©10X, Inc. All Rights Reserved.
©10X, Inc. All Rights Reserved. 5 今日はその中でのドキュメントの話 10Xでは DWH構築以外にもdbtを使って 商品在庫データを作ってます
©10X, Inc. All Rights Reserved. アーキテクチャと開発フロー
©10X, Inc. All Rights Reserved. データドキュメント管理の難しさ • データドキュメント頑張ってやろうとしたがなかなか取り組みを進められなかった ◦ 定期的にKPTで出てくる「仕様の管理」や「カラムの意味が分かりづらい」
◦ Tryとして「ドキュメントを書こう」「更新したらドキュメントを修正しよう」というのがでた が書き始めるのも難しいし、ドキュメントがあったとしても更新がされない状態が続い てしまった • 「あとで書く」が難しく、「あとに回せば回すほど更新が大変になる」という事実 ◦ 「あとで書く」は書かない ◦ 「あとで誰か他の人」は書いてくれない(実装者が一番わかっている) ◦ 現在のドキュメントが正しくない場合、差分更新ではなく現在の仕様をすべて確認し た上で「全更新」になってしまう
©10X, Inc. All Rights Reserved. ドキュメント作成を 後回しにしない仕組みや 工夫をしてみた
©10X, Inc. All Rights Reserved. ドキュメント作成を後回しにしないサイクル
©10X, Inc. All Rights Reserved. 解決策の提案 - dbt docs 「あとで書かない、今書く」を実行するために以下の要件を達成するために現在の構成
も考慮してdbt docsを採用 • ドキュメントも差分管理(コード管理)できるようにする • 画像配置、マークダウンでの記載が可能 • 修正差分に合わせて同一PRに混ぜてリリース・反映できる • データカタログのビューワー機能がある • BigQuery等のカラムディスクリプション枠に情報を同期できる • CIでドキュメントが書かれているかチェック処理を組み込むことが可能
©10X, Inc. All Rights Reserved. ドキュメントも差分管理(コード管理)できるようにする dbt docsはYAML形式 でモデル(テーブル)やカ ラムの説明を管理可能
©10X, Inc. All Rights Reserved. 画像配置、マークダウンでの記載が可能 マークダウンでの記載も 可能なため少し込み入っ た表現や説明も見やすく 管理が可能
画像への対応もできる
©10X, Inc. All Rights Reserved. 修正差分に合わせて同一PRに混ぜてリリース・反映できる 修正差分のPRにドキュメ
ントの更新も合わせるこ とで、レビューワーも今回 何のための修正なのかを 理解しやすくなる
©10X, Inc. All Rights Reserved. データカタログのビューワー機能がある dbt Cloudにはdbt docsで書 き出されるファイルをホスティン
グしてくれる機能があり、ユー ザー管理をしながらドキュメント を共有可能 検索機能やデータリネージも確 認できる
©10X, Inc. All Rights Reserved. BigQuery等のカラムディスクリプション枠に情報を同期できる YAMLに記載したカラム の定義やテーブル定義 はBigQueryの Descriptionにdbtの機
能で同期が可能
©10X, Inc. All Rights Reserved. CIでドキュメントが書かれているかチェック処理を組み込むこと が可能 dbt-meta-testingという パッケージを利用すること で、未設定のドキュメントを
確認可能 GithubActions等と組み 合わせればPR作成時に CIでチェックも可能
©10X, Inc. All Rights Reserved. まだまだ道半ば、更新を止めない改善を意識
©10X, Inc. All Rights Reserved.