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
960
小規模に始めるデータメッシュとデータガバナンスの実践
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
370
NestJS と Hasura で実現する Production GraphQL
kimujun
0
360
Hasura の Subscription と向き合う
kimujun
0
1.2k
Other Decks in Technology
See All in Technology
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
140
きのこカンファレンス_ランチスポンサーセッション
kabaya
1
300
生成AIがローコードツールになる時代の エンジニアの役割を考える
khwada
0
350
フォーイット_エンジニア向け会社紹介資料_Forit_Company_Profile.pdf
forit_tech
1
1.7k
Postman AI Agent Builderで AI Agentic workflow のプロトタイピング / Prototyping AI Agentic Workflow with Postman AI Agent Builder
yokawasa
0
190
DeepSeekとは?何がいいの? - Databricksと学ぶDeepSeek! 〜これからのLLMに備えよ!〜
taka_aki
2
210
データモデルYANGの処理系を再発明した話
tjmtrhs
0
500
AIエージェント開発のノウハウと課題
pharma_x_tech
10
5.7k
アウトカムを最大化させるプロダクトエンジニアの動き
hacomono
PRO
0
120
Ruby on Railsで持続可能な開発を行うために取り組んでいること
am1157154
3
190
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
19k
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
1.1k
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Making Projects Easy
brettharned
116
6.1k
Visualization
eitanlees
146
15k
Automating Front-end Workflow
addyosmani
1369
200k
For a Future-Friendly Web
brad_frost
176
9.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Being A Developer After 40
akosma
89
590k
Designing Experiences People Love
moore
140
23k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
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/