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
2.6k
dbt docsを使ったデータカタログの運用事例紹介
10xinc
July 11, 2023
Tweet
Share
More Decks by 10xinc
See All by 10xinc
10Xが掲げるオリジナルの品質特性について #nihonbashitesttalk / 10X quality characteristic
10xinc
2
830
株式会社10X - Culture Deck
10xinc
86
1.3M
データマネジメントを支える武器としてのメタデータ管理
10xinc
5
31k
Elementaryを用いたデータ品質の可視化とデータ基盤の運用改善
10xinc
8
12k
テストの完了をゴールにしない! ~仮説検証を繰り返し、開発・QA・ユーザーが交流しながら開発することで見えてくる理想の姿~ - #RSGT2024 #DevSumi / Shift left and Shift right
10xinc
10
8.1k
Dataplexとdbt-osmosisを活用した「がんばらない」データカタログとメタデータ管理の運用(Data Engineering Study #22)
10xinc
3
12k
スタートアップにおけるデータマネジメントの始め方の事例紹介(datatech-jp Casual Talks #5)
10xinc
5
7.9k
データプロダクトとは何か
10xinc
6
5.6k
Security Team at 10X inc / セキュリティチームの今@開発共有会
10xinc
1
130
Other Decks in Programming
See All in Programming
Android開発者のための Kotlin Multiplatform入門
ntaro
0
190
AHC035解説
terryu16
0
710
スクラムマスターって孤独じゃないですか?
yoshitaroyoyo
1
140
DMMプラットフォームにおけるTiDBの導入から運用まで
pospome
7
3k
I/O Extended Android in Korea 2024 ~ Whats new in Android development tools
pluu
0
250
最古の関数型言語「Lisp」ことはじめ / lisp_in_kamiyama
uhooi
1
190
GraphQL はいいぞ! ~Laravel で学ぶ GraphQL 入門~
azuki
1
160
Google's Recipe for Scaling (Web) Security – LocoMocoSec 2024
lweichselbaum
0
170
CSC307 Lecture 13
javiergs
PRO
0
150
開発部に不満を持っていたCSがエンジニアにジョブチェンしてわかった「勝手に諦めない」ことの大切さ
sakuraikotone
28
16k
CSC307 Lecture 07
javiergs
PRO
0
220
APIのない大学ログインWebサービスをWKWebViewとJavaScriptでアプリ化した話
akidon0000
1
330
Featured
See All Featured
Designing Experiences People Love
moore
136
23k
Building an army of robots
kneath
301
42k
Designing for humans not robots
tammielis
247
25k
No one is an island. Learnings from fostering a developers community.
thoeni
17
2.8k
[RailsConf 2023] Rails as a piece of cake
palkan
35
4.4k
Faster Mobile Websites
deanohume
303
30k
The MySQL Ecosystem @ GitHub 2015
samlambert
248
12k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
245
1.2M
Infographics Made Easy
chrislema
238
18k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
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.