Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
データ分析基盤を開発・運用するエンジニアリングチームの技術活用とその変遷 / StudySap...
Search
akitoshi toita
July 20, 2018
Technology
4.4k
6
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
データ分析基盤を開発・運用するエンジニアリングチームの技術活用とその変遷 / StudySapuri Data Meetup 02 Engineering Team Introduction
akitoshi toita
July 20, 2018
Transcript
26 slides
Data Meetup #1 データ分析基盤を開発・運用する エンジニアリングチームの技術活用とその変遷 @toita
01 02 03 04 Agenda | 自己紹介 & チーム紹介 スタディサプリのデータ分析基盤
次世代データ分析基盤構想 まとめ
01 自己紹介 & チーム紹介
戸井田 明俊 @toita / @toitech ソーシャルゲーム開発会社でオンプレ Hadoop 上に構 築されたデータ分析基盤の開発・運用に従事した後、 2017年に株式会社リクルートマーケティングパートナー
ズに入社。 スタディサプリでは各種データ連携の拡充や分析者の 使いやすい環境を目指した基盤整備に加え、データを 活用した機能開発などを担当。 1児の父。趣味で特定のラーメン屋に似たジャンルのお 店を探せる検索エンジン※ を開発中。しかし進捗は芳し くない。 ※ https://yumy.tokyo
企画提案 研究開発 実証実験 性能改善 本番実装 本番運用 効果検証 要因分析 施策立案 分析
データサイエンティスト エンジニアリング データエンジニア R&D データリサーチエンジニア
➔ データとエンジニアリングでユーザーにより良い学習体験を届ける ➔ データ分析基盤の開発・運用、各種レポーティング、サービス開発など ◆ Treasure Data (Hive / Presto),
BigQuery, Embulk, Luigi, Digdag, Jenkins, Python etc... ◆ 8月から3人 => 5人体制に! エンジニアリングチームの役割
02 スタディサプリのデータ分析基盤
現在のシステム構成 Treasure Data (Hive / Presto) レポーティング 分析 Kinesis Lambda
TD SDK クライアントサイドログ サーバーサイドログ マスタデータ
➔ レコード数:10億超(動画視聴ログ) ➔ テーブル数:450+ ➔ ジョブ数:80+ / day(Presto)、 10+ /
day(Hive) ➔ 利用者:プロダクト・マーケ・経営企画などサービス関係者全般 活用状況
利用者別クエリ管理(ワークフロー)の使い分け Luigi + Jenkins Digdag / TD Workflow TD 登録クエリ
開発者・提供元 Spotify OSS (Treasure Data) Treasure Data 利用者 データグループの エンジニアリングチーム データグループの 分析チーム データグループ以外の 組織 エンジニア データ分析者 非エンジニア・分析者 言語・UI Python YAML GUI 利用者の用途やスキルに合わせた実行環境を提供
利用者別クエリ管理(ワークフロー)の使い分け Luigi + Jenkins Digdag / TD Workflow TD 登録クエリ
開発者・提供元 Spotify OSS (Treasure Data) Treasure Data 利用者 データグループの エンジニアリングチーム データグループの 分析チーム データグループ以外の 組織 エンジニア データ分析者 非エンジニア・分析者 言語・UI Python YAML GUI 利用者の用途やスキルに合わせた実行環境を提供 リソース分離されていないため、ワイルドクエリ にリソースを占有されてしまう問題 基幹集計処理とユーザーが待ち合わせできず、 遅延した時にデータが更新されない問題
施策例 1) 基幹集計処理の実行時間監視 Luigi のハンドラにジョブの実行時間を計測して TD に投げる処理を追加し、ボト ルネックジョブの特定とチューニングを可能にした
施策例 2) クエリ警察の設置 定期的に Treasure Data のジョブ状況を監視して Slack に通知 ◯時間もスロットを独占するワイルドなクエリは問答無用で強制終了
➔ 増え続けるデータ、テーブル、利用者 ➔ データを必要とするあらゆる業務と利用者に価値を提供してきた ➔ ジョブ監視の強化やチューニングを実施して運用を安定化 この2年半を振り返って
03 次世代データ分析基盤構想
➔ 潰しきれないワイルドクエリ問題 ➔ 同じプロダクトなのに他国のデータを横串で分析できていない ➔ データから得られた価値をユーザーにもっと直接届けられるはず!! 現在抱えている課題感
➔ ワイルドなクエリに負けないロバストな基幹集計処理基盤 ➔ 各国のデータ分析者が使いやすい抽象化とデータマートの提供 ➔ 守りのデータ活用から攻めのデータ活用へ!! データ分析基盤、進化の時
進化したデータ分析基盤(予定) Treasure Data (Hive / Presto) レポーティング 分析 Kinesis Lambda
BigQuery CRM TD SDK クライアントサイドログ サーバーサイドログ マスタデータ サービス提供 機械学習 モデル構築
BigQuery の導入 Treasure Data (Hive / Presto) レポーティング 分析 Kinesis
Lambda BigQuery CRM TD SDK クライアントサイドログ サーバーサイドログ マスタデータ サービス提供 機械学習 モデル構築 ・基幹集計は BigQuery で実行 ・行動ログは TD で受けるため一部その中で集計 ・運用維持のために集計結果を BigQuery から TD に連携 ・基幹集計処理の遅延(ワイルドクエリ問題)解消 ・BigQuery に蓄積されている他国データの活用
研究開発成果のプロダクト実装 Treasure Data (Hive / Presto) レポーティング 分析 Kinesis Lambda
BigQuery CRM TD SDK クライアントサイドログ サーバーサイドログ マスタデータ サービス提供 機械学習 モデル構築 ・ユーザーに直接価値を返すサービス開発(e.g., 講義動画レコメンド) ・R&D チームの研究開発成果を性能担保した上で本番実装 ・プロダクトサイドのマイクロサービス化の動きと連携 ・アドホック分析から定常的な学習・モデル構築へ
分析 データサイエンティスト エンジニアリング データエンジニア R&D データリサーチエンジニア R&D チームの開発したプロトタイプを本番環境向 けに再実装(Search API
/ Logger / デプロイスク リプト etc) コーチングサポートツール開発での連携例
きめ細やかなユーザー伴走の実現 Treasure Data (Hive / Presto) レポーティング 分析 Kinesis Lambda
BigQuery CRM TD SDK クライアントサイドログ サーバーサイドログ マスタデータ サービス提供 機械学習 モデル構築 MA ツールとの連携を通して、ユーザー属性や学習状況に応じたきめ細や かなコミュニケーションが可能に
まとめ 05
➔ BigQuery の導入によるロバストな基盤の実現 ➔ グローバル統合によって世界各国のデータ分析者を支える存在へ ➔ R&D チームの研究成果をマイクロサービスとして本番実装 ➔ データとエンジニアリングでユーザーにより良い学習体験を届ける!
次世代データ分析基盤開発プロジェクトが絶賛進行中!
None
Happy Hacking :)
More Decks by akitoshi toita
See All by akitoshi toita
Treasure Dataで構築したデータ分析基盤、この1年の振り返り
toita
3
1.6k
Other Decks in Technology
See All in Technology
並列度を下げたら速くなった — go build の重複コンパイルを実測で見る
tomoaki25
2
1.2k
速くなった開発の効果をどう推し量るのか
bulbulpaul
0
110
Context Ontology Accelerator 入門 (業務データの意味を、AI エージェントに渡す)
inariku
PRO
3
670
Ebitengine製iOSアプリ公開ボタンを押す会
eiei114
0
120
Sonnetだけで業務はまわる?
kintotechdev
1
110
Microsoft Entra Kerberos で実現するクラウド デバイス管理
tamaiyutaro
2
680
ぼくのClaude Codeの使い方
falken
PRO
4
6.7k
[JAWS Festa 2026]一番いい仕事は、請求書に現れない / jawsfesta2026
sh_fk2
2
520
マネジメントされる側の仕事は「文句」を言うこと
riyaamemiya
2
820
仕様と現実の間で落とし所を探るリモートMCPの認証・認可 — Sansanの認証基盤における課題と実践
sansantech
PRO
2
290
内製アプリとClaudeスキルのセキュリティチェック、 Backlogの課題で回しています。
ayaka_egaaa
0
180
小さなエージェントから始めてみよう!実践コンテキストエンジニアリング
iwamot
PRO
0
120
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.9k
Odyssey Design
rkendrick25
PRO
3
940
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Designing for Timeless Needs
cassininazir
1
560
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
590
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
70
69k
A Soul's Torment
seathinner
9
3.9k
Code Reviewing Like a Champion
maltzj
529
40k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.7k
How Software Deployment tools have changed in the past 20 years
geshan
3
35k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
340
4 Signs Your Business is Dying
shpigford
187
23k