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
スケーラブルなデータ収集と活用の舞台裏 / scalable data infrastruct...
Search
to_lz1
July 09, 2020
Technology
0
9.8k
スケーラブルなデータ収集と活用の舞台裏 / scalable data infrastructure of M3
2020-07-09 コロナ時代の医療業界を支援するエムスリーのプロダクト開発の舞台裏
to_lz1
July 09, 2020
Tweet
Share
More Decks by to_lz1
See All by to_lz1
Webエンジニアのためのデータエンジニアリング概説
mtoriyama000
6
890
Other Decks in Technology
See All in Technology
衛星運用をソフトウェアエンジニアに依頼したときにできあがるもの
sankichi92
1
230
【LT会登壇資料】TROCCO新コネクタ「スマレジ」を活用した直営店データの分析
kazari0425
1
170
Contributing to Rails? Start with the Gems You Already Use
yahonda
2
120
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
2
220
CDK Vibe Coding Fes
tomoki10
1
540
AIの全社活用を推進するための安全なレールを敷いた話
shoheimitani
2
640
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
1
410
United Airlines Customer Service– Call 1-833-341-3142 Now!
airhelp
0
180
Claude Code に プロジェクト管理やらせたみた
unson
8
4.9k
freeeのアクセシビリティの現在地 / freee's Current Position on Accessibility
ymrl
2
280
マルチプロダクト環境におけるSREの役割 / SRE NEXT 2025 lunch session
sugamasao
1
420
20250707-AI活用の個人差を埋めるチームづくり
shnjtk
6
4.1k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
830
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
We Have a Design System, Now What?
morganepeng
53
7.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Visualization
eitanlees
146
16k
Optimizing for Happiness
mojombo
379
70k
Designing for Performance
lara
610
69k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
KATA
mclloyd
30
14k
Writing Fast Ruby
sferik
628
62k
Transcript
スケーラブルなデータ収集と活用の舞台裏 ~ Web講演会を例に ~ 2020-07-09 コロナ時代の医療業界を支援するエムスリーのプロダクト開発の舞台裏
自己紹介 鳥山 誠 (Toriyama Makoto) 入社: 2020年1月 趣味: 音楽 前職:
人材系企業 - 社内Webシステムを作ったり (Angular, Scala) - クエリパイプラインを構築したり (Redshift, Digdag) 所属: Unit1 - 製薬企業向けPF
製薬企業向けプラットフォーム - MR君 (2000~) - Web講演会 (2011~) エムスリー創業期からのサービス群 m3.com上で医師へ薬剤などの情報提供 ×
製薬企業のマーケティング支援
Web講演会 m3.com上で行うオンラインの講演会 (最近アプリも出ました =>) - 例: - 製薬会社、医療機器メーカー主催の医師向け講演会 - 看護師、薬剤師向けの薬剤、機器の説明会
=> 正にいま「医療関係者の情報収集」に貢献しうるサービス
(当社IR資料より抜粋)
そんな勢いで増える「データ」をどう扱っているのか?
「データ」を扱う どう集めているのか? => 収集 どう使っているのか? => 活用
どう集めているのか? => 収集 どう使っているのか? => 活用 …の2つに焦点を当ててお話しします 「データ」を扱う
データの”収集”
Web講演会サーバはOn Premise + AWS (移行中)、ログ送信先はGCP (最近全面移行した) Webビーコン方式のアクセス解析ツールを自前実装 + 視聴予約・視聴 (RDBトランザクション)
視聴ログ送信(一定時間ごとビーコン送信) Web講演会の視聴データの話
- Cloud Runがオートスケールしリクエストをさばく - ログをPub/Subにエクスポート、BigQueryに連携 GCP構成図
- ログデータは先述の仕組み (+α) でリアルタイムに連携 - DBのデータは、Digdag+EmbulkでBigQueryに連携 - => BigQuery上で双方を組み合わせた分析が可能 BigQueryはデータ基盤の中心
データの”活用”
データ活用と言っても...
今日はあえてこちら
データ分析観点はサービスの成長とともに変わっている 過去: MR君(= 医師向けメッセージ) => 配信数と既読率を追う。以上! 現在: - 講演会の視聴率はどうだったか? -
講演会に至るまでのアクセス動線は? - メッセージ添付の動画・コンテンツまで見てもらえているか? - 医師からのフィードバック・アンケート回答内容はあるか? => 分析要件が複雑化・多様化 「データ分析」って集計するだけでは?
- オンプレの分析用Oracleに、諸々のチームが諸々の技術で ETL - Java製ツールで非Engでもデータ抽出できる - => 便利だが、増えるデータに対応できない && データ定義が管理しきれない
... かつてのデータ分析基盤 「データは出たけどこれ正しいんだっけ?」 PdM
- BigQueryに集まったデータを BIツールで分析 - 利用を促進するため、各種データマートを構築(進行中) クラウドでやりましょう
- Oracleデータ + ログデータ + Salesforceデータを材料に、データマートに統合 - 昨日までの実績がすぐに可視化される世界 => 意思決定を支援
活用事例1: プロダクトマネージャ向けダッシュボード
- GCPのData Catalogによるメタデータ管理を行っている - descriptionを丁寧に書く => デプロイしたら即テーブル定義を確認できる 活用事例1: プロダクトマネージャ向けダッシュボード
- メンテナンス困難になっていた CSV付きレポートメール (Shell製) - BQ上でデータマートを構築し、データマートから出力 (同時にPythonにした) - 大規模配信のレポートが安定して出力できるように 活用事例2:
クライアント向けレポート (100~200通/日 程度)
構成図
- 全サービスのKPIがすぐ追える世界 - ETL基盤をいい感じにクラウド化する - データ基盤そのものをクライアントと共有して、更なる価値提供 - etc... この先やりたいこと
まとめ - データ基盤は「収集」と「活用」両方のスケーラビリティが大事 - エムスリー、歴史のあるサービスも頑張っています - まだまだやれることがたくさんあります!!