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
データ基盤チームの設立と直近の取り組み / the-establishment-of-pepa...
Search
Toshifumi Tsutsumi
February 25, 2021
Technology
5
4.3k
データ基盤チームの設立と直近の取り組み / the-establishment-of-pepabo-data-platform-team
Pepabo Tech Conference #14 登壇資料
https://pepabo.connpass.com/event/204392/
Toshifumi Tsutsumi
February 25, 2021
Tweet
Share
More Decks by Toshifumi Tsutsumi
See All by Toshifumi Tsutsumi
ModuleNotFoundErrorの傾向と対策:仕組みから学ぶImport / Unpacking ModuleNotFoundError
tosh2230
3
4.7k
CDCデータパイプラインを止めないために / One Stream of the CDC
tosh2230
0
1.3k
ニアリアルタイム分析の実現に向けたChange Data Captureの導入 / Change data capture for near realtime analytics
tosh2230
3
1.8k
データリネージの組織導入事例と今後の戦略 / Introduction to an example of data lineage in GMO Pepabo
tosh2230
0
920
SQLクエリ解析によるE2Eデータリネージの実現 / E2E-data-lineage
tosh2230
0
3.5k
データ抽出基盤 Yeti をつくっている話 / Yeti - Yet another Extract-Transfer Infrastructure
tosh2230
1
4.6k
Loggingモジュールではじめるログ出力入門 / Introduction to Python Logging
tosh2230
32
13k
Other Decks in Technology
See All in Technology
2025年のARグラスの潮流
kotauchisunsun
0
790
データ基盤におけるIaCの重要性とその運用
mtpooh
4
490
GoogleのAIエージェント論 Authors: Julia Wiesinger, Patrick Marlow and Vladimir Vuskovic
customercloud
PRO
0
130
新卒1年目、はじめてのアプリケーションサーバー【IBM WebSphere Liberty】
ktgrryt
0
100
2025年の挑戦 コーポレートエンジニアの技術広報/techpr5
nishiuma
0
140
RubyでKubernetesプログラミング
sat
PRO
4
160
あなたの知らないクラフトビールの世界
miura55
0
120
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
470
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
160
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
Cloudflareで実現する AIエージェント ワークフロー基盤
kmd09
0
290
Formal Development of Operating Systems in Rust
riru
1
420
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
46
7.2k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
570
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Done Done
chrislema
182
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Visualization
eitanlees
146
15k
How STYLIGHT went responsive
nonsquared
96
5.3k
Unsuck your backbone
ammeep
669
57k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
240
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Transcript
1 堤 利史 / GMO Pepabo, inc. Date: 2021-02-25 Event:
Pepabo Tech Conference #14 データ基盤チームの設立と 直近の取り組み
2 堤 利史 Twitter: @tosh2230 データエンジニア GMO Pepabo, inc. 技術部
データ基盤チーム (2020/12~) 2
3 3 本日お話しすること Section 1: データ基盤チームの設立 Section 2: 直近の取り組み -
チーム運営・基盤改善 - SUZURI KPIダッシュボード Section 3: データ基盤チームのこれから
4 データ基盤チームの設立 Section 1 4 ログ活用基盤 “Bigfoot” と実現するデータ駆動
5 5 ログ活用基盤 “Bigfoot” - ウェブサービスに関する様々なデータを扱う基盤 - ペパボ研究所 と 技術部
技術基盤チーム が中心となって開発 - 2020年に Google Cloud Platform をベースに再構成 - BigQuery, Cloud Composer が中心 https://rand.pepabo.com/article/2020/06/16/bigfoot-migration/
6 6 ログ活用基盤 “Bigfoot” datasource datasets logs metrics GitHub issues
databases BigQuery Data Studio tbls-build base tbls.yml files patch files ( *.yml, *.json ) patched tbls.yml files tbls-meta tbls kura.gem data catalog Update metadata & commit Collect datasets Apply metadata Generate & commit Collect data tbls Generate schema.json & commit lint bigfoot/data-catalog bigfoot/platform Cloud Storage - permissions - datasets - buckets bigfoot/cloud-composer Cloud Composer dags/
7 7 - 日本CTO協会が監修・編纂している企業のデジタル化と ソフトウェア活用のためのガイドライン - テーマのひとつである ”データ駆動” を全社的に注力 -
Bigfoot にデータを集積し、活用していく機運の高まり DX Criteriaの実践 https://tech.pepabo.com/2020/02/19/dx-criteria/
8 8 最近の事例 1 https://speakerdeck.com/osamtimizer/suzuri-data-driven-2020 https://tech.pepabo.com/2021/01/21/pepabo-tech-conference-13/
9 9 最近の事例 2 https://tech.pepabo.com/2021/02/10/zendesk-data-visualization-with-bigfoot/
10 需要 > 供給 10
11 11 2021-01-21 データ基盤チーム 設立 🎉 Vision “データ駆動” の実現を担う 事業部横断組織
Mission 1. 社内のあらゆるデータへの意味付け 2. データによる意思決定を支援するプラットフォームの構築・ 全てのパートナーへの提供
12 直近の取り組み Section 2 12 一部を抜粋してご紹介
13 1. チーム運営・基盤の改善 13
14 14 チーム始動!と同時に発生した課題 - 開発者の増加 → 手数増える → CI渋滞 -
連携元システム・サービスの増加 - データやETL処理の依存関係の複雑化 - 新規 / 既存メンバーのナレッジギャップ チーム運営&基盤の改善が急務に ...!
15 15 2021年の2ヶ月間でやったこと - CI環境の移行 (Drone * → GitHub Actions)
- Cloud Composer テスト環境増設 (1→3) - マルチクラウド化 (AWSのチーム利用開始) - Sentry によるエラーマネジメント開始 - エラー通知 → エラー情報確認 → Issue起票 がスムーズに - アーキテクチャ共有会 の定期開催 - ドキュメント拡充 - Airflow DAG 依存関係の整理 - ソースコードコメントや Metadataの追加 * OSS CIプラットフォーム。 https://www.drone.io/
16 16 各種対応によって状況は改善へ💪 - 開発者の増加 → 手数増える → CI渋滞 -
解消 - 連携元システム・サービスの増加 - チームとして対応できる状態に - データやETL処理の依存関係の複雑化 - 現状把握・注意喚起する仕組みを構築中 - 新規 / 既存メンバーのナレッジギャップ - 技術的・歴史的なナレッジ共有の継続実施 (共有会, GHE, Notion など) - 対応手順をGitHub Issueに残して資産化
17 2. KPIダッシュボード 17
18 18 画像を1枚アップ するだけ 自動的に商品が できます 販売まで行えます 自分買いも可能 画 像
をアップすると、 Tシャツやトートバッグ、マ グカップなど、あらゆるグッズを作ることができま す。グッズは41種類。 好きな価格で販売できます。注文を受けてか ら作成するので在庫を気にする必要もありま せん。 自分で作ったイラストや写真を 1枚アップロード します。 (ファイル形式はJPGまたはPNG) オリジナルアイテムが作れる、売れる、買える。
19 19 ダッシュボードの目的 データによってサービスの状態を把握して、施策のPDCAに貢献 - 複数のデータソースを収集 - 多量・多種のデータを加工・蓄積 - KPI
* を即座に抽出して可視化 - サマリーを定期的に通知 * Key Performance Indicator: 重要業績評価指標
20 Google BigQuery Cloud Composer Data Lake 20 今回のデータパイプラインの全体像 Data
Warehouse Data Mart Cloud Storage Embulk PostgreSQL Data Studio Slack Summary & Dashboard URL Users Bigfoot
21 どのように構築したか 21
22 Bigfoot Google BigQuery Cloud Composer Data Lake 22 Data
Warehouse Data Mart Cloud Storage Embulk PostgreSQL Data Studio Slack Summary & Dashboard URL Users Step1: SUZURIを理解(しようと努力)する 後ろは、ぼんやり考える程度に
23 23 Step1: SUZURIを理解(しようと努力)する - 事業そのものを知る - ビジネスモデルを学ぶ - サービスのユーザーになる
- KPIへの理解を深める - 使われている用語の定義を確認 - 用語に紐づくデータの整理 - Google Colabでざっくり加工して、認識齟齬が無いか確認 - サービスのデータ構造を学ぶ - テーブルやER図を眺める - ひたすらSELECTを投げてデータ構造を感じる
24 Bigfoot Google BigQuery Cloud Composer Data Lake 24 Data
Warehouse Data Mart Cloud Storage Embulk PostgreSQL Data Studio Slack Summary & Dashboard URL Users Step2: Data Studioでドラフト版を作成する カスタムクエリで直接参照!
25 25 Step2: Data Studioでドラフト版を作成する - Data Studio(データポータル) - Googleが提供するBIツール
- BigQueryと簡単にデータ連携ができる - “実際に動くもの”を見ながら、ビジネス要件を再確認 - カスタムクエリ(データソースをSQLで直接指定するモード )にハードコード - DataMartが完成したら接続先を切り替える - アウトプットが固まってきたら、プロセスの最適化を検討
26 Bigfoot Google BigQuery Cloud Composer Data Lake 26 Data
Warehouse Data Mart Cloud Storage Embulk PostgreSQL Data Studio Slack Summary & Dashboard URL Users 通知は最後 Step3: Cloud Composer でワークフローを構築する
27 27 Step3: Cloud Composer でワークフローを構築する - Cloud Composer -
Google が提供するフルマネージド Airflow - 多様なOperator* を駆使してワークフローを構築 - (独特なスケジューリングの概念に苦戦 ...) - Airflow を初めてさわった - execution_date, start_date, end_date, schedule_interval… - ELT(Extract/Load/Transform) 処理の実施 - DataLake → DataWarehouse → DataMart の方向にデータを加工 * ワークフロータスクのテンプレート。これを組み合わせてワークフローを定義する。
28 Bigfoot Google BigQuery Cloud Composer Data Lake 28 Data
Warehouse Data Mart Cloud Storage Embulk PostgreSQL Data Studio Slack Summary & Dashboard URL Users Step3でリリース済 Step4: Slackにサマリーを通知する
29 29 - DataMart 作成完了に合わせて、Slackへサマリーを通知 - Slack App の Incomming
Webhook を使用 - ”SELECT 結果を加工して Slack に通知” をしてくれる Operator はない - そこで Custom Operator を実装 - 渡すパラメータは、Airflow Connection と mention, header, body の4つ - Base Operator を継承して、BigQueryHook を内部で実行 Step4: Slackにサマリーを通知する
30 30 - サマリーやダッシュボードを 見ながらSlackで議論できる - 社内共有も簡単! - ダッシュボードはユーザ編集可 このあたりにKPIのサマリーを
列挙して通知しています Step4: Slackにサマリーを通知する
31 データ基盤チームの これから Section 3 31
32 32 再掲: データ基盤チームのVision & Mission Vision “データ駆動” の実現を担う 事業部横断組織
Mission 1. 社内のあらゆるデータへの意味付け 2. データによる意思決定を支援するプラットフォームの構築・ 全てのパートナーへの提供
33 33 - Bigfoot をもっと活用してもらう - データや基盤は活用するためにある - 活用するにはどのような方法があるのか、選択肢を提示する -
チームの認知度を上げる - Bigfoot を知っていても、データ基盤チームは知られていない - どんなひとがいるのか、なにをしているのか → 相談のしやすさ⏫ - 社内・社外への情報発信 - 至高のデータ基盤を目指して - 技術的なチャレンジも忘れない やっていくこと