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
4
840
小規模に始めるデータメッシュとデータガバナンスの実践
DataOps Night #5 の登壇資料です。
https://finatext.connpass.com/event/333016/
kimujun
October 30, 2024
Tweet
Share
More Decks by kimujun
See All by kimujun
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
300
NestJS と Hasura で実現する Production GraphQL
kimujun
0
340
Hasura の Subscription と向き合う
kimujun
0
1.1k
Other Decks in Technology
See All in Technology
Amazon VPC Lattice 最新アップデート紹介 - PrivateLink も似たようなアップデートあったけど違いとは
bigmuramura
0
190
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
8
6.9k
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
380
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.2k
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
podman_update_2024-12
orimanabu
1
270
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
220
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Speed Design
sergeychernyshev
25
670
BBQ
matthewcrist
85
9.4k
Music & Morning Musume
bryan
46
6.2k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Thoughts on Productivity
jonyablonski
67
4.4k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Making the Leap to Tech Lead
cromwellryan
133
9k
Designing for humans not robots
tammielis
250
25k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
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/