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
Ryo Okubo
March 29, 2021
Programming
7
6.8k
メルカリ・メルペイの成長を支える データ基盤とはどんなものか
「メルカリのデータドリブン文化を支える、データプラットフォームとデータマネジメントの話」の発表資料です
https://mercari.connpass.com/event/207191/
Ryo Okubo
March 29, 2021
Tweet
Share
More Decks by Ryo Okubo
See All by Ryo Okubo
バッチとストリーミング、それぞれの障害に立ち向かう
syucream
3
3.5k
How Scala works at Mercari
syucream
2
1k
Production-ready stream data pipeline in Merpay, Inc
syucream
2
13k
データとML周辺エンジニアリン グを考える会 #2 イントロ
syucream
0
620
マイクロサービスにおける ログ収集の課題と取り組み
syucream
7
2.7k
Stream Data Pipeline for Microservices in Merpay
syucream
6
1.2k
メルペイにおける、マイクロサービスに寄り添うログ収集基盤 / Microservices-frendly Data Pipeline
syucream
0
18k
Merpay のデータ収集基盤
syucream
5
1k
ngx_mrubyとfiberの話 (未完成版)
syucream
2
300
Other Decks in Programming
See All in Programming
メンテが命: PHPフレームワークのコンテナ化とアップグレード戦略
shunta27
0
300
もう僕は OpenAPI を書きたくない
sgash708
5
1.9k
Domain-Driven Transformation
hschwentner
2
1.9k
Datadog Workflow Automation で圧倒的価値提供
showwin
1
150
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
250
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.3k
Code smarter, not harder - How AI Coding Tools Boost Your Productivity | Angular Meetup Berlin
danielsogl
0
100
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
120
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
140
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
150
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
670
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Building Your Own Lightsaber
phodgson
104
6.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
570
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Writing Fast Ruby
sferik
628
61k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
A Modern Web Designer's Workflow
chriscoyier
693
190k
A Tale of Four Properties
chriscoyier
158
23k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Transcript
1 メルカリ・メルペイの成長を支える データ基盤とはどんなものか #merpay_tecktalk
2 Merpay DataPlatform Software Engineer @syu_cream
3 • データ基盤はまるで荒野 ◦ データの発生源は複雑で多用 ◦ データを活用したい人の欲求は止めどない ◦ 大量データを捌くのにスキルが必要 •
データパイプラインで舗装していく ◦ データを活用できる状態にもっていく ◦ ビッグデータ特有の課題に専門知識をもって挑む データドリブンであるために
4 Merpay DataPlatform A data pipeline Delivery data from/to anywhere
Serve common ETL processes Microservies-friendly Be applicable for both Mercari and Merpay
5 - バッチ処理ベースの ETL パイプラインの開発運用 - マイクロサービスの持つ DB から BigQuery
に転送 - 中間テーブル作成やレポーティング、関連システムへのデータ送信 - ストリーミングログ収集・転送パイプラインの開発運用 - DB の変更データ取得 (CDC) やマイクロサービスのログを BigQuery に転送 - SQL ライクな DSL によるストリーミング ETL やっていること
6 データパイプライン全体図
7 - バッチ処理 - コンピュート: Apache Spark, Apache Beam -
入出力: BigQuery, GCS, Cloud Spanner, Cloud SQL, … - ジョブスケジューラ: Apache Airflow - ストリーミング処理 - コンピュート: Apache Flink, Apache Beam - 入出力: Cloud Pub/Sub (+ Debezium) - その他 - コンピュート環境インフラ : GKE - 構成管理: Terraform - CI/CD: CircleCI, Spinnaker - 監視、オンコール: DataDog, PagerDuty 技術スタック
8 • 連携しているマイクロサービス数: 80+ • 一日に処理するデータ量: 100+ GB • ETL
している BigQuery のテーブル数: 1,500+ • BigQuery 利用者数: 1,000+ アカウント • ... // 各数値は結構ラフに見積もってます データ基盤の利用実績
9 • Data Management ◦ データ基盤を “実際に使えるもの” に整備してもらっている ◦ この後の発表で詳しく触れます!
• SRE ◦ インフラ周りのお手伝いをしてもらったりログ収集基盤のお手伝いをしたり • Microservices Platform ◦ Kubernetes クラスタや Terraform, Spinnaker など相乗りさせてもらっている • Data Analysts, ML, その他たくさんのデータ基盤利用チーム! ◦ 基本的に自由に利用してもらっている ◦ 特殊な事情がある場合はフォローする 他のチームとの関わり
10 • Apache Kafka など別の技術スタックの検討 • データ基盤の機能のセルフサービス化 (社内 PaaS 化?)
• データ活用を目指すチームの支援 • データリネージュの導入 • データ品質チェック・プロファイリングの仕組みの利用拡大 • BigQuery におけるより細粒度な ACL の適用 • … 状況は刻一刻と劇的に変わっていく。やりたいことも無限にある。 プロダクトと共に Go Bold に、変化を容認して挑戦していく必要がある💪 今後挑戦してみたいこと
11 - 過去のイベント登壇等での発表 - https://speakerdeck.com/syucream/microservices-frendly-data-pipeline - https://speakerdeck.com/syucream/production-ready-stream-data-pipeline-in-merpay-inc - https://speakerdeck.com/shoe116/creating-stream-datapipeline-on-gcp-using-apache-beam -
https://speakerdeck.com/syucream/batutitosutorimingu-sorezorefalsezhang-hai-nili-tixiang- kau - テックブログ記事 - https://engineering.mercari.com/blog/entry/20210316-8bb01d19a7/ - https://engineering.mercari.com/blog/entry/2019-06-05-120000/ - https://engineering.mercari.com/blog/entry/2019-05-20-115839/ - https://engineering.mercari.com/blog/entry/gcs_datalake_costcutting/ - メルカン(オウンドメディア)記事 - https://mercan.mercari.com/articles/2018-09-06-120000/ 関連資料