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
miraoto@mybest
October 13, 2023
Technology
1
1k
分析基盤のコストを削減した話
2023.10.13 (Fri.) に開催されたハッカー鮨のLTです
https://hackermeshi.com/parties/457
miraoto@mybest
October 13, 2023
Tweet
Share
More Decks by miraoto@mybest
See All by miraoto@mybest
株式会社マイベストKaigi on RailsスポンサーLT
miraoto
0
52
会社のフェーズに合わせた”CTOの役割の変化” への向き合い方
miraoto
0
260
Other Decks in Technology
See All in Technology
そのWAFのブロック、どう活かす? サービスを守るための実践的多層防御と思考法 / WAF blocks defense decision
kaminashi
0
100
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
4
160
バイブコーディングと継続的デプロイメント
nwiizo
2
480
Git in Team
kawaguti
PRO
2
230
20201008_ファインディ_品質意識を育てる役目は人かAIか___2_.pdf
findy_eventslides
2
540
GopherCon Tour 概略
logica0419
2
190
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
120
小学4年生夏休みの自由研究「ぼくと Copilot エージェント」
taichinakamura
0
510
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
4
340
自動テストのコストと向き合ってみた
qa
0
200
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
3
380
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Become a Pro
speakerdeck
PRO
29
5.5k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Balancing Empowerment & Direction
lara
4
680
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
YesSQL, Process and Tooling at Scale
rocio
173
14k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
RailsConf 2023
tenderlove
30
1.2k
How to Ace a Technical Interview
jacobian
280
24k
Transcript
分析基盤のコストを年間数百万削減した話 ハッカー鮨 update Oct 13, 2023
渡邊 直登 Naoto Watanabe 取締役 CTO 兼 執行役員|プロダクト開発部 部長 SIerにてエンジニア/ディレクターの経験後、事業会社で正社員向けサービスの開発
に携わる。その後、医療系の新規事業の立ち上げを経験を経て 2017年にマイベスト 入社。 現在は、業務委託を含めたエンジニアのマネジメント、マーケ・営業系施策の開発サ ポート、Enablingミッションのリード、データ分析基盤の運用を担当。 プロフィール
マイベストの分析基盤について Index 1 当時の状況について 2 どうやって解消したのか? 3 これから 4
マイベストの分析基盤について ETL(trocco) + DWH(BigQuery) + BI(Redash / Looker) 画像
ETL(trocco) + DWH(BigQuery) + BI(Redash / Looker) マイベストの分析基盤について データ分析基盤構成
データソース・データウェアハウス・データマートに分類して処理 マイベストの分析基盤について データ基盤 データレイク (生データ) アクセスログ、イベントログ、購買データ etc データウェアハウス (分析元データ) URL
x 日別クリックログ、URL x EC別収益ログ データマート (分析データ≒BIデータ) 直近30日のCVボタンクリックログ
すべての処理・フローはtroccoに集約 マイベストの分析基盤について データワークフロー
分析用データマートは非エンジニアが作成 マイベストの分析基盤について BI
データレイク (生データ) エンジニアが作成 データウェアハウス (分析元データ) エンジニアが作成 データマート (分析データ≒BIデータ) 非エンジニアが作成 分析用データマートは非エンジニアが作成
マイベストの分析基盤について BI
当時の状況について データ分析基盤が活用開始からコスト増まで 画像
活用していたのはプロダクトを改善する部署に限定されており、金額も 1-3万程度 当時の状況について データ分析基盤は2021年から存在していた
データ分析基盤の積極的な活用が始まる 01 UA提供終了に伴う利用 ログの変更 02 データ活用部署の増 加 03 データ活用用途の 多様化
UA/GAは詳細分析の際にデータがサンプリングされてしまうので、 PrimeNumber社のWeb行動ログ収集SDKにリプレイス UA提供終了に伴う利用ログの変更 UAが7月で提供終了するタイミングでデータソースを生ログに変える
GAの分析画面が利用できなくなることもあり、各部署がデータ活用のためのダッシュボードを作成する データ活用部署の増加 色々なダッシュボードが爆誕する Lookerを本格活用 マーケティング部が各部のニーズをヒアリング し作成。中にはGA4のデータを活用したような 重めのダッシュボードも...
Lookerから発行されたSQLがBQのプロジェクト履歴に流れる データ活用用途の多様化 意図しないクエリが増える 不穏なクエリが大量に発行 “GA4のアクセスログすべて” とか ”指定期間 の生データ” みたいなクエリが1クエリで1テラバ イトを超えていた
1.2 TB 1.1 TB
すると...
コストが跳ね上がる... 本格活用前までは月 3万程度だった料金が 月55万程度まで増える
利用してもらえることは良いこと
ただ、このままだとコストが原因で 本格稼働前に見直しが入りかねない...
どうやって解消したのか? 可視化から仕組み化まで
具体的なアプローチは3つ 01 可視化 02 権限・クエリ整理 03 アラート設定
ユーザー毎とクエリ毎で課金額を調査。そもそも原因が特定し辛い状況になっていることに気づく 可視化 ボトルネックとなるクエリを特定 原因が特定しづらかった理由 どのアカウントでクエリを発行しているのか?は わかったが、人が書いたものか or サービスが 発行したものかが分からなかったのでボトル ネックとなるクエリを見てもすぐに打ち手にはた
どり着けなかった。
用途に合わせてアカウントを調整 権限・クエリ整理 クエリ発行者を管理 アカウントはツールごとに Lookerで利用するアカウントは部のメーリング リスト。BigQueryで利用するアカウントは個人 のものと分けることで、発行クエリで人・用途の 判別がしやすくなった
曖昧だったデータウェアハウス作成の定義を見直し。一部を汎用集計テーブルとして再定義 権限・クエリ整理 データ基盤を整備し、不要なデータウェアハウスを統合 汎用集計テーブルにすることで、一部データ ウェアハウスの参照するデータ量が大幅に削 減(ページビュー系:1.04 TB→20.36 GB、イベ ント系:183.9 GB→16.11
GB) 汎用集計テーブルを作成
月額の利用想定から閾値を設定。日次で超えた場合には Slackに通知→クエリ発行者に確認のフローを作成 アラート設定 コストの閾値を決めアラートを設定 1. #trocco-alerts に通知がくる(通知例) 2. 前日のユーザー・クエリ単位での BQの利用状況を確認する
3. そのクエリが個人アカウントで発行されているものはスルー、メーリスで発行されているものは純増になるのでクエリを見 直す 通知例
その結果...
大幅なコスト削減に成功! 月 55万 月 7万
これでまたガンガン使えそう...! めでたしめでたし
これから マイベストのデータ活用の未来 画像
データを活用した改善の 頻度と精度を上げたい 今は改善活動のための基盤ができただけの状態。 これからは、基盤を活用してプロダクト・コンテンツの改善をデータ観点から改善できるような体 制・環境を作り上げたい
マーケティング部が主体となり、データ活用の啓蒙や環境整備を実施 利用範囲が広がっています 部署を横断したデータ活用が動き始めています
オペレーションに利用している JIRA、kintoneなども連携または連携準備中 利用範囲が広がっています オペレーションもデータドリブンに改善できるように仕込み中
ABテスト改善、検索・マッチング精度改善、施策評価、効果試算などはまだまだ道半ば。データ活用には伸び代しかない! 一方で... 精度の改善にはまだ多くの余地がある ABテスト自体をもっと信頼できるものに改善し ていきたい... アクションプランを立てるうえでインパクトを見積 もりたい... ユーザーのフィードバックを効果的に サービスに反映したい ...
施策の優先度をデータドリブンで判断できるよう になるといいな...
分析基盤はデータベースを強みとする mybestのData Opsの中心。興味ある方はぜひ懇親会で話しましょう! つまり データの蓄積から活用のフェーズに アクセス イベントログ 分析 順位 データ
パーソナライズ プロダクト 検証 情報 改善 購買 データ 用途に応じたデータの活用 データの蓄積とルールの整備 これから これまで データ基盤
ご清聴ありがとうございました