Weitere ähnliche Inhalte
Ähnlich wie Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望 (20)
Mehr von Yahoo!デベロッパーネットワーク (20)
Kürzlich hochgeladen (11)
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
- 1. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
2017年9月15日
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ヤフー株式会社 東浩稔
Yahoo!プロモーション広告の
ビックデータ基盤を
支える技術と今後の展望
- 2. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
自己紹介
東 浩稔(あずま ひろとし)
所属:マーケティングソリューションズカンパニー 開発本部
パフォーマンスデータPF開発部
プロモーション広告のデータPF全般について、アーキテクチャの刷新や
パフォーマンスの改善を担当
経歴:
2012年中途入社。現在3社目
1社目:製造業(ITエンジニアではない)
2社目:証券系SIer
3社目:Yahoo!ディスプレイアドネットワーク(以下、YDN)のレポート開発や集計シス
テムのリードエンジニアを担当し、今年度より現在の業務を担当。
2
- 3. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
アジェンダ
1. Yahoo!プロモーション広告と現在の
システム
2. 現在の課題
3. 今後の展望と事例
3
- 4. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1. Yahoo!プロモーション広告と現在の
システム
2. 現在の課題
3. 今後の展望と事例
4
- 5. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォームのミッション
Yahoo!プロモーション広告のPFを
利用している人たちのストレスを無くす
5
- 6. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォームのミッション
Yahoo!プロモーション広告のPFを
利用している人たちのストレスを無くす
6
- 7. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
Yahoo!プロモーション広告
7
- 8. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
8
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 9. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
9
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 10. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
10
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 11. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
11
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 12. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
12
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 13. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
プロモーション広告システムとその利用者
13
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 14. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
数字で見るプロモーション広告システム
14
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
※1 出典:ヤフー株式会社 2017年度 第1四半期 事業指標推移表
※2 YDB+スポンサードサーチのレポート作成数
月間 約4400万
レポート作成
(※2)
月間 約725億PV
(※1)
月間 約150TB
(※3)
※3YDNのデータ量/gz圧縮済み
- 15. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
本日お話する対象システム
15
広告主様 ヤフーを訪れた
ユーザー様
メディア担当様
広告配信
システム
広告管理
システム
パートナー
管理システム
集計システム分析システム広告業務
担当
広告 広告 配信結果
レポート
配信面のチューニング
レポート
ログ
集計データ
集計データ
分析結果
- 16. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
16
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
広告業務
担当
- 17. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
17
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告業務
担当
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
- 18. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
18
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
広告業務
担当
- 19. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
19
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
広告業務
担当
- 20. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
20
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
広告業務
担当
- 21. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在のシステム構成(YDN)
21
Oracle
(OLTP)
Oracle
(Batch)
統計
広告入稿
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
広告業務
担当
- 22. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
補足:統計とレポートの違い
22
• 両方とも配信の実績を確認するツール
• 統計で概要を確認し、レポートで詳細を分析する
機能 I/F 種別 速度 自由度
統計 画面
リアル
タイム型
数秒 低い
レポート
ファイル
DL
バッチ型 数十秒〜数分 高い
- 23. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1. Yahoo!プロモーション広告と現在の
システム
2. 現在の課題
3. 今後の展望と事例
23
- 24. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ヤフーの広告事業は堅調
24出典:2017年度第1四半期決算発表 プレゼンテーション資料
- 25. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
その裏側では
- 26. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
スポンサードサーチ 広告入稿量
26
2年間で約3倍
- 27. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
YDN 配信ログ量
27
2年間で約3.6倍
- 28. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
YDN レポート作成数
28
2年間で約3倍
- 29. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
利用が増えることでシステムの負荷も増える
29
Oracle
(OLTP)
Oracle
(Batch)
広告入稿
統計
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
配信ログ量 増レポート作成数 増
広告入稿量 増
広告業務
担当
- 30. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
影響:レポートのスループット低下
30
Oracle
(OLTP)
Oracle
(Batch)
広告入稿
統計
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
YDNレポートの
作成要求に対して
処理が追いつかなくなってきた
広告業務
担当
- 31. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
影響: RDBのレイテンシ低下
31
Oracle
(OLTP)
Oracle
(Batch)
広告入稿
統計
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
統計情報を参照する際の
レイテンシが低下しはじめた
広告業務
担当
- 32. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォームのミッション
Yahoo!プロモーション広告のPFを
利用している人たちのストレスを無くすこと
32
- 33. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォームのストレスとは?
33
• 遅い
- レイテンシの低下
- データの反映遅延(リアルタイム性)
• 使えない
- 稼働率の低下
- 34. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォームのストレスとは?
34
• 遅い
- レイテンシの低下
- データの反映遅延(リアルタイム性)
• 使えない
- 稼働率の低下
- 35. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
広告主様が感じるストレス
35
• 遅い
- レイテンシの低下
→ 統計画面の表示
→ YDNレポート作成
- データの反映遅延(リアルタイム性)
• 使えない
- 稼働率の低下
- 36. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ストレスにどう対処していくか?
36
1. 処理リソースを増やす
2. 定期的に技術を見直す
- 37. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ストレスにどう対処していくか?
37
1. 処理リソースを増やす
2. 定期的に技術を見直す
- 38. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
どういうアプローチか?
38
必要なリソース
時間
キャパシティ
トラフィック、必要な計算リソース
オーバーキャパシティ
- 39. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1.処理リソースを増やす
39
必要なリソース
時間
トラフィック、必要な計算リソース
キャパシティ
サーバ追加でキャパシティの上限値をあげる
- 40. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
では、それ以上増えたら?
40
必要なリソース
時間
トラフィック、必要な計算リソース
キャパシティ
- 41. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
リソースを追加しつづけることはできない
41
• 費用対効果が合わない
• どこかにボトルネックが生まれるので
永遠にスケールアウトし続けることは
できない
- 42. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ストレスにどう対処していくか?
42
1. 処理リソースを増やす
2. 定期的に技術を見直す
- 43. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
2.定期的に技術を見直す
43
必要なリソース
時間
トラフィック、必要な計算リソース
アーキテクチャ
を見直して効率
を良くする
- 44. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
現在の課題は?
44
1. 処理リソースを増やす
→ RDBがそもそもスケールアウト
しにくい構成
2. 定期的に技術を見直す
→ YDNレポートのトラフィックの伸びに
対してリソースが不足してきた
- 45. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1. Yahoo!プロモーション広告と現在の
システム
2. 現在の課題
3. 今後の展望と事例
45
- 46. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
どこを見直すのか
46
Oracle
(OLTP)
Oracle
(Batch)
広告入稿
統計
レポート Hadoop
集計
Teradata
(DWH) パートナー
配信Data Pipeline
広告運用
分析/業務
メディア担当様
Isilon
(Storage)
配信面運用
広告主様
ヤフーを訪れた
ユーザー様
2.利用している技術を
見直し、リソースの
利用効率をあげる
1.RDB一辺倒からユース
ケース毎にデータPFを
使い分け、増え続ける
データ量に対応する
広告業務
担当
- 47. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
データプラットフォーム見直しの方針
47
• 大方針としては、全てOracleを利用するのではなく、
ユースケースを見極めて、プラットフォームを
分散させる
• 分散させたデータを繋ぐためにマルチデータソース
にアクセスできるPrestoを採用する
• トランザクション管理が必要なものは従来通り
Oracleを使用する
- 48. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
今後の展望
※まだ導入してません
- 49. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
今後の展望(全体像)
49
Oracle
(OLTP)
広告入稿
統計
レポート Hadoop
(HDFS)
集計
広告運用
Presto
(クエリエンジン)
HBase/Phoenix
(KVS)
TBD
(Cache)
SQLレイヤ Cacheレイヤ 永続化レイヤ ストレージレイヤ
広告主様
- 50. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1.スケールアウト構成+Cache
50
Oracle
(OLTP)
広告入稿
統計
レポート Hadoop
(HDFS)
集計
広告運用
Presto
(クエリエンジン)
HBase/Phoenix
(KVS)
TBD
(Cache)
分離した入稿データと統計
データをジョインするため
クエリエンジンとして
Prestoを利用
統計
データ
入稿
データ
(Cache)
入稿
データ
広告主様
- 51. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
2.技術の見直し(Hive → Presto)
51
Oracle
(OLTP)
広告入稿
統計
レポート Hadoop
(HDFS)
集計
広告運用
広告主様
Presto
(クエリエンジン)
HBase/Phoenix
(KVS)
TBD
(Cache)
レポート
データ
YDNレポートで利用しているHive を
Presto + HDFSへ切り替える
- 52. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
検証した結果
※まだ導入してません
- 53. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
1.HBase/Phoenix
53
• サーバ30台
• 1,6,12,24,48並列で実行
• テーブルレコードは22億行
• 大中小150アカウントを選び
3回実行(450Query )
• 22億件から1件〜300件程度
抽出するパターン
- 0.04秒〜1.06秒(48並列)に
収まる
Response Time
- 54. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
2.Presto
54
• HiveとPrestoの比較
• サーバ13台
• 1,2,4,8,16,32並列で実行
- スループットがHiveの8倍以
上(32並列)
- レスポンスタイムもHiveの8
倍速い(32並列)
- 並列度を増やしても劣化が少
ない
Request per Hour
Total Response Time
- 55. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
まとめ
• Yahoo!プロモーション広告はYahoo!サービスの
膨大なトラフィックが集まる
また、その伸びも速い
• トラフィックの伸びに追従するにはリソースの
追加と技術を定期的に見直すことが必要
• 新しい技術に触れ、成果が目に見えやすい
55
- 56. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
最後に
詳細はこの後の懇親会でお話しましょう!
56
- 57. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
ありがとうございました!