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
0
1.1k
データチームの境界を考える
ナウキャストのストリームアラインドチームと, チームAPIとしてのdbt導入の取り組みについて紹介しています.
Atsushi Sumita
June 16, 2022
Tweet
Share
More Decks by Atsushi Sumita
See All by Atsushi Sumita
LLMによるデータ構造化の精度管理
yummydum
1
230
Redshift Serverless vs Snowflake 徹底比較!
yummydum
1
2.7k
最強?のデータ組織アーキテクチャ
yummydum
2
630
データを開発するためのDataOps
yummydum
1
1.1k
Jupyter Notebook Ops
yummydum
1
230
SNLP presentation 20190928
yummydum
0
370
Other Decks in Technology
See All in Technology
男(監査)はつらいよ - Policy as CodeからAIエージェントへ
ken5scal
5
770
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラットフォームづくり
yuriemori
0
160
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
160
開発組織の課題解決を加速するための権限委譲 -する側、される側としての向き合い方-
daitasu
5
300
ビズリーチにおける検索・推薦の取り組み / DEIM2026
visional_engineering_and_design
1
110
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
マネージャー版 "提案のレベル" を上げる
konifar
21
13k
事例に見るスマートファクトリーへの道筋〜工場データをAI Readyにする実践ステップ〜
hamadakoji
0
200
Evolution of Claude Code & How to use features
oikon48
1
510
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1.1k
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
840
Featured
See All Featured
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
340
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
290
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Thoughts on Productivity
jonyablonski
75
5.1k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
190
Chasing Engaging Ingredients in Design
codingconduct
0
130
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
84
Paper Plane (Part 1)
katiecoart
PRO
0
5.2k
The Curse of the Amulet
leimatthew05
1
9.7k
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