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
Atsushi Sumita
June 16, 2022
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
データチームの境界を考える
ナウキャストのストリームアラインドチームと, チームAPIとしてのdbt導入の取り組みについて紹介しています.
Atsushi Sumita
June 16, 2022
More Decks by Atsushi Sumita
See All by Atsushi Sumita
LLMによるデータ構造化の精度管理
yummydum
1
290
Redshift Serverless vs Snowflake 徹底比較!
yummydum
1
2.7k
最強?のデータ組織アーキテクチャ
yummydum
2
650
データを開発するためのDataOps
yummydum
1
1.1k
Jupyter Notebook Ops
yummydum
1
240
SNLP presentation 20190928
yummydum
0
390
Other Decks in Technology
See All in Technology
Zenoh on Zephyr on LiteX
takasehideki
2
150
データレイクの「見えない問題」を可視化する
sansantech
PRO
1
250
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
100
組織における AI-DLC 実践
askul
0
230
自分が詳しくない領域でAIを使う #プロヒス2026
konifar
20
8.1k
“ID沼入口” - 基本とセキュリティから始める、考え続けるためのID管理技術勉強会 告知&イントロ
ritou
0
320
グローバルチームと挑むプロダクト開発
sansantech
PRO
1
100
フルAIで個人開発して学んだあれこれ / yuruai vol.1
isaoshimizu
0
160
WebGIS AI Agentの紹介
_shimizu
0
600
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
7.8k
勉強会企画をアプリで構造化してみた 〜そこで見えた、AIとの付き合い方〜 / I've structured a study group plan using an app.
pauli
0
120
AWS PrivateLink × SCIM で実現する セキュアで運⽤負荷の低い Databricks 基盤の構築
tsuda7
0
120
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Optimizing for Happiness
mojombo
378
71k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
30 Presentation Tips
portentint
PRO
1
330
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
290
Utilizing Notion as your number one productivity tool
mfonobong
4
330
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
エンジニアに許された特別な時間の終わり
watany
107
250k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Documentation Writing (for coders)
carmenintech
77
5.4k
Transcript
© 2015 - 2022 Nowcast Inc. データチームの境界を考える 株式会社ナウキャスト 隅田 敦
1
© 2013 - 2022 Finatext Ltd. 2 目次 これまでのナウキャストのチーム構造 -
データエンジニアが主役となる組織 - チームトポロジー: Stream Aligned Team / Platform Team / チームAPI - Stream Aligned Data Engineering Teamによる効率的な開発 - 課題: チームAPIが整備されていないことによる非効率性 チーム境界とプラットフォームチーム - チームAPIとしてのdbt - Data hub platformに向けた取り組み - Platformチームは中央集権型のデータエンジニアチームではない
© 2013 - 2022 Finatext Ltd. 3 これまでのナウキャストのチーム構造
© 2013 - 2022 Finatext Ltd. 4 データエンジニアが主役となる組織 データの保有側・利用側の双方に価値を提供するAlternative Dataの
Two-Sided Platformを展開
© 2013 - 2022 Finatext Ltd. 5 チームトポロジー: Stream Aligned
Team / Platform Team / チームAPI • Stream Aligned Team ◦ 価値のデリバリーをend to endで担う ◦ 要求探索から本番運用まで他チームへの引き継ぎ無しで行える • Platform Team ◦ Stream Aligned Teamを支援する内部プロダクトの開発を担う ◦ インフラなど下位の機能を横断的に抽象化したツールを提供 • チームAPI ◦ チームとやり取りするための方法を記述した仕様 ◦ コードであれば, ランタイムのエンドポイント, ライブラリ, UI ◦ データの場合はどうか? これを考えるのが本発表の目的
© 2013 - 2022 Finatext Ltd. 6 The Bezos Mandate
(2002) 私とAWSの15年 あるいはThe Bezos Mandateの話 - NRIネットコムBlog
© 2013 - 2022 Finatext Ltd. 7 Stream Aligned Data
Engineering Teamによる効率的な開発 ナウキャストのチームの特徴 • 典型的にはデータソース毎に1つのチーム ◦ 1チームだいたい3~6人ほど • 各チーム内で価値提供に必要な工程が完結 • Terraformによるインフラの構築 • Airflow+PythonによるETLの開発/保守 • Jupyter NotebookによるEDA Stream Alignedなデータエンジニアチーム Stream Alignedであることのメリット • システムのオーナーシップが向上する • 各システムが疎結合に保たれる (Conway's law) • データのドメイン知識が一貫して行き渡る
© 2013 - 2022 Finatext Ltd. 8 課題: チームAPIが整備されていないことによる非効率性 各チームの開発したデータには様々な利用者が存在
• 社内の金融領域に詳しいアナリスト • 社内の他のデータエンジニアリングチーム • ナウキャストのデータを購読している社外の顧客 課題: チームAPIが存在しない 以下項目の整備状況/実装方針がバラバラ • データの置き場所, フォーマット • 品質保証/バージョン管理/ビジネスメタデータ • データ更新の締切に関するSLO 認知負荷/コミュニケーションコストの増大
© 2013 - 2022 Finatext Ltd. 9 チーム境界とプラットフォームチーム
© 2013 - 2022 Finatext Ltd. 10 チームAPIとしてのdbt • yamlを書くだけでデータのテストとドキュメントが手に入る
• 今はsources [3]だけを使用 htmlに render 宣言的なデータのテスト 任意の項目を 追加可能
© 2013 - 2022 Finatext Ltd. 11 Data hub platformに向けた取り組み
チームAPIの下でデータをリリースする場所をdata hubと名付 け, 整備中 • データはs3にparquetで置き, Athenaで参照する • 各データについてdbtでsourcesを定義 • データ/sourcesが更新されたらテストを実行 • renderされたhtmlをs3にホスティング • dbtのmeta tagでSLOを管理 ◦ これを参照して監視システムがSLOをチェック data hubの開発を行うPlatform Teamが必要となる
© 2013 - 2022 Finatext Ltd. 12 Platformチームは中央集権型のデータエンジニアチームではない • 中央集権型はサイロ化やスケーラビリティの低
下に繋がるため望ましくない[2][3][4] • PlatformチームはData Hubへのリリースを支 援するツールの開発が責務 ◦ チームAPIの定義 ◦ ビルド/テスト/デプロイ用のスクリプト ◦ CI/CD用のツール ◦ 監視システム • 各Sourcesの開発/保守は各Stream Aligned Teamの責務
© 2013 - 2022 Finatext Ltd. 13 Reference [1] Team
Topologies [2] 私とAWSの15年 あるいはThe Bezos Mandateの話 - NRIネットコムBlog [3] Sources | dbt Docs [4] How to Move Beyond a Monolithic Data Lake to a Distributed Data Mesh [5] Data Mesh Principles and Logical Architecture [6] Data Management at Scale
© 2013 - 2022 Finatext Ltd. 14 End