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.9k
メルカリ・メルペイの成長を支える データ基盤とはどんなものか
「メルカリのデータドリブン文化を支える、データプラットフォームとデータマネジメントの話」の発表資料です
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.6k
How Scala works at Mercari
syucream
2
1k
Production-ready stream data pipeline in Merpay, Inc
syucream
2
13k
データとML周辺エンジニアリン グを考える会 #2 イントロ
syucream
0
630
マイクロサービスにおける ログ収集の課題と取り組み
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
1.1k
ngx_mrubyとfiberの話 (未完成版)
syucream
2
300
Other Decks in Programming
See All in Programming
iOSアプリで測る!名古屋駅までの 方向と距離
ryunakayama
0
110
flutter_kaigi_mini_4.pdf
nobu74658
0
100
一緒に働きたくなるプログラマの思想 #QiitaConference
mu_zaru
74
17k
Being an ethical software engineer
xgouchet
PRO
0
220
generative-ai-use-cases(GenU)の推しポイント ~2025年4月版~
hideg
1
310
REALITY コマンド作成チュートリアル
nishiuriraku
0
110
「理解」を重視したAI活用開発
fast_doctor
0
200
2ヶ月で生産性2倍、お買い物アプリ「カウシェ」4チーム同時改善の取り組み
ike002jp
1
100
ComposeでのPicture in Picture
takathemax
0
120
The Nature of Complexity in John Ousterhout’s Philosophy of Software Design
philipschwarz
PRO
0
130
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
290
note の Elasticsearch 更新系を支える技術
tchov
0
150
Featured
See All Featured
Navigating Team Friction
lara
185
15k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
570
Designing for humans not robots
tammielis
253
25k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
Speed Design
sergeychernyshev
29
900
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Site-Speed That Sticks
csswizardry
5
500
A better future with KSS
kneath
239
17k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
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/ 関連資料