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
3.9k
dbt docsを使ったデータカタログの運用事例紹介
10xinc
July 11, 2023
Tweet
Share
More Decks by 10xinc
See All by 10xinc
アセスメントで紐解く、10Xのデータマネジメントの軌跡
10xinc
1
510
株式会社10X - Company Deck
10xinc
88
1.5M
スーパーマーケットのこれまでとこれから
10xinc
5
9.4k
データプロダクト開発の歩み
10xinc
5
4.3k
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
8
6.8k
10Xでのデータ基盤の変遷とこれから: データマネジメントのリアル 〜BtoB企業3社の歩みとこれから〜
10xinc
7
13k
10Xが掲げるオリジナルの品質特性について #nihonbashitesttalk / 10X quality characteristic
10xinc
2
1.3k
データマネジメントを支える武器としてのメタデータ管理
10xinc
8
44k
Elementaryを用いたデータ品質の可視化とデータ基盤の運用改善
10xinc
9
20k
Other Decks in Programming
See All in Programming
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
78
20k
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
3
12k
The Nature of Complexity in John Ousterhout’s Philosophy of Software Design
philipschwarz
PRO
0
160
Ruby on Railroad: The Power of Visualizing CFG
ydah
0
290
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
10
3.7k
UMAPをざっくりと理解 / Overview of UMAP
kaityo256
PRO
3
1.4k
Deoptimization: How YJIT Speeds Up Ruby by Slowing Down / RubyKaigi 2025
k0kubun
1
1.9k
七輪ライブラリー: Claude AI で作る Next.js アプリ
suneo3476
1
170
Ruby's Line Breaks
yui_knk
4
2.7k
読書シェア会 vol.4 『ダイナミックリチーミング 第2版』
kotaro666
0
110
Make Parsers Compatible Using Automata Learning
makenowjust
2
6.8k
SwiftDataのカスタムデータストアを試してみた
1mash0
0
140
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.3k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Code Review Best Practice
trishagee
67
18k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Agile that works and the tools we love
rasmusluckow
329
21k
We Have a Design System, Now What?
morganepeng
52
7.5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Producing Creativity
orderedlist
PRO
344
40k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
105
19k
Typedesign – Prime Four
hannesfritz
41
2.6k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
For a Future-Friendly Web
brad_frost
177
9.7k
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.