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
小規模に始めるデータメッシュとデータガバナンスの実践
Search
kimujun
October 30, 2024
Technology
2
160
小規模に始めるデータメッシュとデータガバナンスの実践
DataOps Night #5 の登壇資料です。
https://finatext.connpass.com/event/333016/
kimujun
October 30, 2024
Tweet
Share
More Decks by kimujun
See All by kimujun
NestJS と Hasura で実現する Production GraphQL
kimujun
0
320
Hasura の Subscription と向き合う
kimujun
0
1.1k
Other Decks in Technology
See All in Technology
現実のRuby/Railsアップグレード
takeyuweb
3
3k
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
310
Data Migration on Rails
ohbarye
7
3.9k
AWS CDKで大量のパラメータストアを作りたい
y_kotani
1
160
Nix入門パラダイム編
asa1984
1
160
Aurora_BlueGreenDeploymentsやってみた
tsukasa_ishimaru
1
120
2024-10-30-reInventStandby_StudyGroup_Intro
shinichirokawano
1
120
サーバーレス SaaS における運用監視の負荷軽減のためのアプローチ
ririru0325
0
140
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
2
410
サイバーエージェントにおける生成AIのリスキリング施策の取り組み / cyber-ai-reskilling
cyberagentdevelopers
PRO
1
120
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
11
4.4k
Databricksワークショップ - 生成AIとDWH
taka_aki
2
4.5k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Thoughts on Productivity
jonyablonski
67
4.3k
Gamification - CAS2011
davidbonilla
80
5k
[RailsConf 2023] Rails as a piece of cake
palkan
50
4.8k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
32
1.8k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Into the Great Unknown - MozCon
thekraken
31
1.5k
Navigating Team Friction
lara
183
14k
What's in a price? How to price your products and services
michaelherold
243
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
130k
A Philosophy of Restraint
colly
203
16k
Transcript
© 2024 Dinii Inc. 小規模に始めるデータメッシュと データガバナンスの実践 DataOps Night #5 30
Oct, 2024 Junya Kimura
株式会社 ダイニー © 2024 Dinii Inc. DataOps Night #5 自己紹介
株式会社 ダイニー/Data Team/Tech Lead Web フルスタックエンジニア、データエンジニ ア。Data Team 立ち上げと共にデータエンジニ アリングに軸足を置きつつある。 BigQuery, PostgreSQL, TypeScript が好き。 プロダクトづくりと BBQ と海外サッカーが好 き。 Junya Kimura a.k.a kimujun 1130_kimu kimujun
© 2024 Dinii Inc. 株式会社 ダイニー 01 02 03 04
05 会社紹介 なぜデータメッシュなのか 複数事業部のデータをつなぐアーキテクチャ データガバナンス まとめとお知らせ DataOps Night #5
© 2024 Dinii Inc. 株式会社 ダイニー 会社紹介 01 DataOps Night
#5
株式会社 ダイニー © 2024 Dinii Inc. 会社紹介 DataOps Night #5
株式会社 ダイニー © 2024 Dinii Inc. 会社紹介 DataOps Night #5
株式会社 ダイニー © 2024 Dinii Inc. 会社紹介 DataOps Night #5
© 2024 Dinii Inc. 株式会社 ダイニー なぜデータメッシュなのか 02 DataOps Night
#5
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
データメッシュは、組織内または組織間の複雑で大規模な環境において、分析データを共有・ア クセス・管理するための分散型アプローチ (Zhamak Dehghani “Data Mesh”, O'Reilly) データメッシュとは? 特徴 • データのオーナーシップをドメインに分散する (中央集権ハブを持たない) ◦ 外部ドメインに公開するデータ (= データプロダクト) をメンテナンス • データガバナンスはセルフサービスプラットフォームによって行う
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
データメッシュとは?
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
PROS ❏ 高いアジリティ ❏ ドメイン間の調整だけでデータ共有が 完結する ❏ 組織成長に合わせたスケーラビリティの高さ ❏ Data Team のリソースがボトルネック にならない ❏ ドメインの成熟度に合わせたデータ共有が可 能 ❏ チームによってデータプラットフォー ムの成熟度が異なっていても問題がな い CONS ❏ 移行コストの高さ ❏ 中央集権アプローチをとっているアー キテクチャから移行するコストが高い ❏ 複雑なアーキテクチャ ❏ ドメイン間のデータ共有ごとにパスが 発生し全体として複雑になる ❏ データガバナンスのためのプラットフォーム 整備が必須 ❏ アクセス制御や品質管理、メタデータ 管理などのガバナンスが最重要 本日お話するトピック データメッシュとは?
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
ダイニーのドメインの歴史 • 2019~ モバイルオーダー POS の開発・リリース (MO-POSドメイン) • 2023~ ダイニーキャッシュレスの開発・リリース (Finance ドメイン) • 2024~ ダイニー勤怠の開発・リリース (Employee Satisfaction, ES ドメイン) つまり MO-POS ドメインしかなかったところに、急にドメインが 2 つ増えた Compound Startup の特徴
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
株式会社 ダイニー © 2024 Dinii Inc. なぜデータメッシュなのか DataOps Night #5
• 各ドメインチームが最大限独立してアプリケーションを開発する方針を取っている ◦ 認証認可基盤の利用や Technical Standard の適用のみ Platform Team が整備する形 • もともと MO-POS ドメインしかなく、1 からデータプラットフォームを作るタイミングだった ◦ Compound Startup なのでドメインはさらに増え続ける • データメッシュは大規模な環境に適用される前提の概念だが、小規模段階でも各ドメインの独立 性を保ったままデータプラットフォームを実装するのに有効と考えた データメッシュのアジリティ・スケーラビリティの高さがマッチしている 中央集権からデータメッシュへの移行コストが 0 データメッシュを採用する意思決定へ (ガバナンスはガンバル)
© 2024 Dinii Inc. 株式会社 ダイニー 複数事業部のデータを つなぐアーキテクチャ 03 DataOps
Night #5
株式会社 ダイニー © 2024 Dinii Inc. 複数事業部のデータをつなぐアーキテクチャ DataOps Night #5
Dataplex • ドメインごとのデータセットを ひとまとめにして定義する ◦ Lake, Zone, Asset の 3 レイヤー ◦ ドメインデータに対して きめ細かい権限管理が可能 • データ探索、品質管理、 メタデータ管理 (カタログ機能) を内包 Dataplex は、分散データを統合し、そのデータのデータ マネジメントとガバナンスを自動化する データ ファブリックです。Dataplex は、データの移動または重複を必要としない方法でデータを管理します。 (Google Cloud “Dataplex overview”, https://cloud.google.com/dataplex/docs/introduction)
株式会社 ダイニー © 2024 Dinii Inc. 複数事業部のデータをつなぐアーキテクチャ DataOps Night #5
アーキテクチャ図 (簡易版)
© 2024 Dinii Inc. 株式会社 ダイニー データガバナンス 04 DataOps Night
#5
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
実践しているガバナンスの観点 Discoverable (発見可能性) Understandable (意味の一意性) 他のドメインのデータを発見・理 解する Dataplex/Data Catalog による メタデータ・リネージ管理 Trustworthy (品質) データプロダクトの品質管理を行 う Dataplex の品質管理機能を利用 Secure (セキュリティ) データプロダクトへのアクセスを 管理する Dataform の assertion を利用 Interoperable (相互運用性) 各データプロダクトに同じイン ターフェースでアクセスする スキーマ変更をデリバリーするフ ローを定義 • データプラットフォームに求められる観点ごとにガバナンスの手法を制定 ◦ 観点は Data Mesh 本から一部抜粋 観点 解釈 ガバナンス手法
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
Dataplex (Data Catalog) によるデータガバナンス • メタデータ管理 ◦ Google Cloud Project 横断で BigQuery メタデータの一覧、検索が可能 ▪ BigQuery テーブルに Description をちゃんと付与しておけば、何もしなくても使え る ◦ tag ベースのメタデータ管理を利用したい場合は Data Catalog を利用する ▪ PII レベルの管理とか
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
Dataplex (Data Catalog) によるデータガバナンス • リネージ管理 ◦ Cloud Logging に出力されたクエリログをもとにリネージを自動生成 ◦ Project をまたいだテーブル参照も可視化可能
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
スキーマ変更のデリバリー • あるデータプロダクトでスキーマ変更が発生した場合、利用者側にデリバリーする必要がある ◦ サイレントでスキーマが変わると、ある日突然パイプラインが止まる • 2 つの観点が必要 ◦ データプロダクトの利用箇所を特定可能であること → Dataplex のリネージ機能でクリア ◦ 互換性を保ちつつ移行できること • 互換性を保ちながら移行する ◦ データプロダクトとして公開しているデータセットのスキーマさえ変わらなければ問題が ない ◦ View とバージョン管理によって移行する
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
スキーマ変更のデリバリー
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
• データプロダクト開発・メンテナンスのためのルール策定と実装 Google Cloud Project の分離、独立したワークスペースの実装 • アクセス制御の方法定義と実装 ◦ Service Account によるアクセス制御のルール化 その他のデータガバナンス
株式会社 ダイニー © 2024 Dinii Inc. データガバナンス DataOps Night #5
まだできていなこと • 品質管理のプラットフォーム制定 ◦ Dataform にも品質管理の仕組みがある (assertion) ▪ 現状はこれ ◦ Dataplex の品質管理を使いたい ▪ 他のテーブルとの関係性もルールで記述できる • データスチュワードの整備 ◦ 「このデータの管理者は誰か」を表すのがデータスチュワード ◦ Dataplex にもデータスチュワード管理の機能はあるが、仕組みの検証ができていない • コードベースでのプラットフォーム提供 ◦ 今は各ドメインのリポジトリに個別に実装されている ◦ 共通ライブラリとして整理して、各所で使うようにしたい
© 2024 Dinii Inc. 株式会社 ダイニー まとめとお知らせ 05 DataOps Night
#5
株式会社 ダイニー © 2024 Dinii Inc. まとめとお知らせ DataOps Night #5
まとめ • 複数事業部全体のデータプラットフォームとしてデータメッシュパターンを採用している • データメッシュはガバナンス部分が重要なので Data Team が大きなリソースを割いてガバナンス に投資をしている • データメッシュのガバナンスツールとして Dataplex を広く活用している • ガバナンス対象が広く未着手な領域も多いのでこれからがんばる
株式会社 ダイニー © 2024 Dinii Inc. DataOps Night #5 まとめとお知らせ
https://dinii.connpass.com/event/333856/