Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
メルカリ・メルペイの成長を支える データ基盤とはどんなものか
Ryo Okubo
March 29, 2021
Programming
4
1.4k
メルカリ・メルペイの成長を支える データ基盤とはどんなものか
「メルカリのデータドリブン文化を支える、データプラットフォームとデータマネジメントの話」の発表資料です
https://mercari.connpass.com/event/207191/
Ryo Okubo
March 29, 2021
Tweet
Share
More Decks by Ryo Okubo
See All by Ryo Okubo
syucream
0
1.5k
syucream
2
610
syucream
2
2k
syucream
0
470
syucream
6
1.7k
syucream
6
1.1k
syucream
0
3.6k
syucream
3
840
syucream
2
180
Other Decks in Programming
See All in Programming
deepu105
0
230
kazuhei0108
3
950
ktgrstsh
0
120
takuyaa
4
480
shun_oshidari
6
2.9k
gtongy
0
460
andpad
0
370
dunglas
5
5.5k
sgeengineer
1
190
dhmegane
0
230
manfredsteyer
PRO
1
110
yattom
32
11k
Featured
See All Featured
stephaniewalter
262
11k
erikaheidi
14
4.5k
thoeni
3
660
tenderlove
54
3.5k
holman
288
130k
hannesfritz
29
980
sachag
267
17k
jonyablonski
21
1.3k
jnunemaker
PRO
40
4.7k
jmmastey
10
700
smashingmag
232
18k
holman
448
140k
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/ 関連資料