SlideShare a Scribd company logo
1 of 33
Download to read offline
『ユーザーの趣味嗜好に適した 
広告配信システム Dynalyst ができるまで』 
! 
~ AdTechSTUDIOでのAWS活用戦略 ~ 
株式会社サイバーエージェント 
アドテクスタジオ Dynalyst 
木村 衆平
Profile 
名前 : 
木村 衆平 Shuhei Kimura 
https://www.facebook.com/shuhei.kimura.10 
! 
所属 : 
株式会社サイバーエージェント 
アドテク本部 AdTechStudio 
Dynalyst アプリケーションエンジニア 
! 
経歴 : 
- 2011/04 ~ 広告効果計測システムの開発 
! 
- 2011/11 ~ PCのRTB広告配信における最適化エンジンの設計/開発 
! 
- 2012/09 ~ SP向け海外DSPシステムの設計/開発 
! 
- 2013/11 ~ SP向けダイナミックリターゲティング広告配信システムの設計/開発
Agenda of this session 
オンライン広告のいま 
!! 
- 昨今の広告配信に求められることは何か? 
- Dynalystとは何か? 
! 
Dynalyst ができるまで 
!! 
- 各種機能を支えるAWS基盤の事例紹介 
! 
Ad Tech Studio でのAWS活用戦略 
!! 
- スピーディにプロダクトを世に送り出すための工夫 
- コスト管理と開発体制
Significant changes of the environment 
for online display advertising 
~ オンラインディスプレイ広告を取り巻く環境 ~
What’s happening ? 
より細かなターゲティングが可能な時代 
! 
- 5W1HにおけるWhoが特に重要視される 
! 
- ユーザの行動に基づく広告配信 
Are you an user whom 
we should deliver our ad ? 
! 
- 広告予算の適切な配分とROI効率の向上 
! 
広告出稿の意思決定はリアルタイム化 ~ 50msec or die ~ 
! 
- いつ, どこで, だれに, どんな広告をいくらで 出す or 出さない 
- Real Time Bidding 取引は当たり前の世界 
広告配信技術は年々、高度に複雑に . . .
What is ..
RealTime User Personalized Dynamic Ad service Provider 
is fully powered by
Keywords 
RealTime ~ 何がリアルタイムなのか ? ~ 
! 
- サイト内ユーザ行動がリアルタイムに広告に反映される 
- RTB時代だからこそできる 
! 
User Personalized Ad ~ レコメンド技術 ~ 
! 
- ユーザの趣味嗜好に合わせて広告がダイナミックに変化
How do we build ..
Requirements for Dynalyst system development 
少人数 X 短期間 
~ 市場の状況/変化速度から許容される開発期間は 2, 3ヶ月 ~ 
! 
RealTime ! RealTime ! RealTime ! 
~ 計測から配信への反映の期間を短くすることが広告効果に絶大な影響を及ぼす ~ 
! 
数億impをdailyで捌く 
~ ユーザ嗜好情報をどんな状態で持つべきか ~ 
~ 一日24hでみたときのキャパシティ計画 ~ 
~ 想定されるレポート集計データ量 ~
Concept of system development 
Use managed services as much as possible !! 
サービス系運用システム系運用 
広告主様アカウントの管理 
! 
広告主様向けアカウントコンサルティング業務 
! 
広告主様毎の広告クリエイティブの作成/提案 
! 
広告主様サイトの商材データフィードの管理 
! 
etc . . . 
データベースの管理/チューニング 
! 
アプリケーションの管理/チューニング 
! 
他社システムのとの連携後の管理 
! 
etc . . . 
! 
広告主様に対して『付加価値』を提供することが最も重要 
! 
構築されたシステムそのものは価値を提供するための手段 
! 
フォーカスすべきは広告主様のビジネス目標・目的
How do we build then . .
How do we achieve “RealTime” ? 
広告主様サイトに訪れたユーザがいつ 
どんな商品を見た, カートに入れた, 買ったかを計測する 
あるメディアサイトに訪れたユーザに対し、行動に基づく 
趣味嗜好に合いそうな広告を配信する 
広告配信を行った結果を出来るだけタイムリーに 
レポーティングする、次の広告配信に活かす
How do we achieve “RealTime” ? 
広告主様サイトに訪れた 
どんな商品 
あるメディアサイトに訪れた 
計測して、 
趣味嗜好に合いそうな広告を配信 
広告配信を行った結果を 
配信して、 
レポーティングする、次の広告配信に活かす 
集計する!
How do we achieve “RealTime” ? 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
Tracking 
tracking logs 
user foot prints 
user foot print summary 
広告主様サイトに訪れたユーザがいつ 
どんな商品を見た, カートに入れた, 買ったかを計測する 
Keypoints 
! 
for big data analysis on 
Redshift Cluster 
広告配信時に利用することを踏まえてDynamoDB, ElastiCacheにデータを投入 
! 
ElastiCacheはユーザがターゲティング対象ユーザであるか否かなどの判断のためのキャッシュ
How do we achieve “RealTime” ? 
広告主様サイトに訪れたユーザがいつ 
どんな商品を見た, カートに入れた, 買ったかを計測する 
HashKey RangeKey attribute . . . 
user A 2014/07/17 12:00:00 広告主X 靴a 見た 
2014/07/17 12:01:00 広告主X 靴b 見た 
2014/07/17 12:02:00 広告主X 靴b カートに入れた 
2014/07/17 12:03:00 広告主X 靴b 購入した 
user B 2014/07/15 20:00:00 広告主Y ホテルf 見た 
2014/07/15 20:01:00 広告主Y ホテルg 見た 
2014/07/15 20:02:00 広告主Z ホテルj 予約した宿泊日: 2014/08/01 
Why DynamoDB ? 
! 
データ構造としては典型的パターン 
! 
広告主様毎のカスタマイズ (スキーマレス) 
! 
高スループット, 低レイテンシー, DBそのものの運用はほぼない 
! 
広告主様サイトのタグ導入状況に合わせてWriteキャパシティを変更 
user foot prints 
attribute attribute 
Tracking
How do we achieve “RealTime” ? 
2014/07/17 12:01:00 
2014/07/17 12:02:00 カートに入れた 
Why ElastiCache ( Redis ) ? 
! 
Tracking 
配信機能でまず判定したいのはユーザがターゲティング対象か否か ? 
! 
ターゲティング対象ユーザである確率は一般的には20%以下 
! 
残り80%はDynamoDB参照より手前の段階で振り落としたい 
! 
DynamoDBのフロントエンドキャッシュ機構として十分なパフォーマンス 
user foot print summary 
Key hash table for Value 
user A 広告主X 見た 
2014/07/15 12:01:00 
購入した 
user B 
広告主Y 
広告主Y 見た 
広告主Z 
2014/07/15 12:02:00 
userAがある広告主様サイトXで最 
後にとった行動は何か? 
広告主様サイトに訪れたユーザがいつ 
どんな商品を見た, カートに入れた, 買ったかを計測する
How do we achieve “RealTime” ? 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
Advertising 
userAにどんな広告を出しますか? 
tracking logs 
user foot prints 
user foot print summary 
Keypoints 
! 
① 配信時は, ElastiCacheへのターゲィング対象ユーザ判定問い合わせ 
! 
② どんな広告を配信するかDynamoDBから得られる情報を利用して決定 
! 
※ これでピーク時秒間10000を超えるrequestをさばいています !! 
for big data analysis on 
Redshift Cluster 
あるメディアサイトに訪れたユーザに対し、行動に基づく 
趣味嗜好に合いそうな広告を配信する 
userAは広告配信対象ユーザですか?
ここまでは、 
! 
『見た、カートに入れた、買った』 
! 
モノをリアルタイムに広告に反映させる
How do we “Personalize Ad” ? Recommendation 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
copy worker 
tracking logs Keypoints 
! 
Redshiftへ各種計測ログデータを集約 ~ 広告の計測ログ + ユーザの行動ログ ~ 
! 
SQSを介して1分おきにCOPY処理 ~ manifestを利用した一括COPY ~ 
! 
※ ユーザの広告反応 x オーディエンスレベルで おすすめすべき商品を予測 
send message 
log is uploaded !! 
for big data analysis 
on Redshift Cluster 
あるメディアサイトに訪れたユーザに対し、行動に基づく 
趣味嗜好に合いそうな広告を配信する
How do we “Personalize Ad” ? Recommendation 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
copy worker 
tracking logs Why Redshift ? 
! 
広告配信のロジックの変化をなるべく早く察知したい 
! 
アドホックな分析クエリーを低コストで発行したい 
! 
レポーティング基盤 x 分析基盤 
send message 
log is uploaded !! 
for big data analysis 
on Redshift Cluster 
あるメディアサイトに訪れたユーザに対し、行動に基づく 
趣味嗜好に合いそうな広告を配信する
How do we “Personalize Ad” ? Recommendation 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
copy worker 
tracking logs Why COPY frequently ? 
! 
データが集約される場所ではじめて大きくなるべき 
! 
アプリケーション側では基本的に細かい単位で各種DataStoreまで運ぶ 
! 
fluentdはログ集約基盤としては利用していない 
send message 
log is uploaded !! 
for big data analysis 
on Redshift Cluster 
あるメディアサイトに訪れたユーザに対し、行動に基づく 
趣味嗜好に合いそうな広告を配信する
How do we “Personalize Ad” ? 
広告配信を行った結果を出来るだけタイムリーに 
Reporting 
レポーティングする、次の広告配信に活かす 
az-a1 
az-c1 
… 
for each server 
access logs 
… 
Keypoints 
! 
レポートworkerによる広告主様向けフィードバックレポート作成 
! 
レポートworkerによる配信機能向けフィードバックレポート作成 
report worker 
for big data analysis 
on Redshift Cluster 
tracking logs 
feed back report
How do we build “Dynalyst” ? 
広告主様サイトに訪れた 
どんな商品 
あるメディアサイトに訪れた 
計測して、 
趣味嗜好に合いそうな広告を配信 
広告配信を行った結果を 
配信して、 
レポーティングする、次の広告配信に活かす 
集計する!
How do we build “Dynalyst” ? ~ Overview ~ 
Site Tracking 
Advertising 
Ad Tracking 
write 
write 
read 
read 
upload 
upload 
upload 
copy worker 
enqueue 
enqueue 
enqueue 
dequeue 
dequeue 
report worker 
feed back 
feed back 
campaign management x reporting for Advertiser
Strategy for using 
in CyberAgent
CyberAgent = 新規事業 x スピーディな立ち上げ
Ad Tech STUDIO 
and more . . .
Problems about cost management 
各事業部, 各子会社 etc .. で個別にアカウント発行 
リザーブドインスタンスの購入計画 
安いのは百も承知!! 
※ 変化の激しい組織, 業界のジレンマ
Consolidated Billing 
全社システム 
親アカウント 
子アカウント群 
※ 会社単位 , 事業部 の単位で個別アカウントをヒモ付け
Consolidated Billing 
リザーブドインスタンス(RI)の一括購入 
組織の変化に応える 
RIの割引の恩恵を受ける 
子アカウント群 
各子会社,事業部はRI購入の初期費用を 
気にすることなく利用開始 
! 
RI適用率が60~70%になるように 
1年のRI購入計画 
※ 会社単位 , 事業部 の単位で個別アカウントをヒモ付け
Summary of this session 
オンライン広告のいま 
!! 
- 昨今の広告配信に求められることは何か? 
- Dynalystとは何か? 
! 
Dynalyst ができるまで 
!! 
- 各種機能を支えるAWS基盤の事例紹介 
! 
Ad Tech Studio でのAWS活用戦略 
!! 
- スピーディにプロダクトを世に送り出すための工夫 
- コスト管理と開発体制
ご清聴ありがとうございました

More Related Content

What's hot

Slerとaws運用の付き合い方
Slerとaws運用の付き合い方Slerとaws運用の付き合い方
Slerとaws運用の付き合い方Sato Shun
 
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015
WindowsシステムのAWS移行とMulti-AZ化 - JAWS DAYS 2015 WindowsシステムのAWS移行とMulti-AZ化 - JAWS DAYS 2015
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015 Takayuki Enomoto
 
成長していくサービスとAWS
成長していくサービスとAWS成長していくサービスとAWS
成長していくサービスとAWSMitsuharu Hamba
 
AWSが誕生するまでの秘話
AWSが誕生するまでの秘話AWSが誕生するまでの秘話
AWSが誕生するまでの秘話Yasuhiro Horiuchi
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来Keisuke Nishitani
 
いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013SORACOM, INC
 
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?Yasuhiro Horiuchi
 
AWS Black Belt Online Seminar 2017 Amazon Connect
AWS Black Belt Online Seminar 2017 Amazon ConnectAWS Black Belt Online Seminar 2017 Amazon Connect
AWS Black Belt Online Seminar 2017 Amazon ConnectAmazon Web Services Japan
 
超入門クラウド&AWS
超入門クラウド&AWS超入門クラウド&AWS
超入門クラウド&AWSHiroyasu Yamada
 
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:schoowebcampus
 
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデート
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデートAWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデート
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデートAmazon Web Services Japan
 
AWS Black Belt Online Seminar 2017 Amazon VPC
AWS Black Belt Online Seminar 2017 Amazon VPCAWS Black Belt Online Seminar 2017 Amazon VPC
AWS Black Belt Online Seminar 2017 Amazon VPCAmazon Web Services Japan
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)Amazon Web Services Japan
 
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!Yasuhiro Horiuchi
 
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュ
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュAWS Black Belt Techシリーズ Amazon SNS モバイルプッシュ
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュAmazon Web Services Japan
 
AWS説明資料 小室ver
AWS説明資料 小室verAWS説明資料 小室ver
AWS説明資料 小室verAya Komuro
 
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!SORACOM, INC
 

What's hot (20)

Slerとaws運用の付き合い方
Slerとaws運用の付き合い方Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
 
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015
WindowsシステムのAWS移行とMulti-AZ化 - JAWS DAYS 2015 WindowsシステムのAWS移行とMulti-AZ化 - JAWS DAYS 2015
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015
 
成長していくサービスとAWS
成長していくサービスとAWS成長していくサービスとAWS
成長していくサービスとAWS
 
AWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターンAWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターン
 
AWSが誕生するまでの秘話
AWSが誕生するまでの秘話AWSが誕生するまでの秘話
AWSが誕生するまでの秘話
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
 
いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013
 
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?
デフォルトAWS時代にインフラエンジニアはどう向き合うべきか?
 
AWS Black Belt Online Seminar 2017 Amazon Connect
AWS Black Belt Online Seminar 2017 Amazon ConnectAWS Black Belt Online Seminar 2017 Amazon Connect
AWS Black Belt Online Seminar 2017 Amazon Connect
 
超入門クラウド&AWS
超入門クラウド&AWS超入門クラウド&AWS
超入門クラウド&AWS
 
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
 
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデート
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデートAWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデート
AWS Blackbelt 2015シリーズ AWS Summit Tokyo 2015 ふりかえり&最新アップデート
 
AWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAMAWS Black Belt Techシリーズ AWS IAM
AWS Black Belt Techシリーズ AWS IAM
 
AWS Black Belt Online Seminar 2017 Amazon VPC
AWS Black Belt Online Seminar 2017 Amazon VPCAWS Black Belt Online Seminar 2017 Amazon VPC
AWS Black Belt Online Seminar 2017 Amazon VPC
 
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
AWS初心者向けWebinar AWSではじめよう、IoTシステム構築(リピート開催用)
 
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!
 
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュ
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュAWS Black Belt Techシリーズ Amazon SNS モバイルプッシュ
AWS Black Belt Techシリーズ Amazon SNS モバイルプッシュ
 
AWS基礎
AWS基礎AWS基礎
AWS基礎
 
AWS説明資料 小室ver
AWS説明資料 小室verAWS説明資料 小室ver
AWS説明資料 小室ver
 
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!
AWS meets Android - "AWS SDK for Android"で開発を楽にしよう!
 

Similar to Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでのaws活用戦略

SmartNews TechNight vol5 SmartNews Ads大図解
SmartNews TechNight vol5 SmartNews Ads大図解SmartNews TechNight vol5 SmartNews Ads大図解
SmartNews TechNight vol5 SmartNews Ads大図解SmartNews, Inc.
 
マーケティング向け大規模ログ解析事例紹介
マーケティング向け大規模ログ解析事例紹介マーケティング向け大規模ログ解析事例紹介
マーケティング向け大規模ログ解析事例紹介Kenji Hara
 
ネット通販向けレコメンドシステム提供サービスについて
ネット通販向けレコメンドシステム提供サービスについてネット通販向けレコメンドシステム提供サービスについて
ネット通販向けレコメンドシステム提供サービスについてKimikazu Kato
 
Tim casestudy 2013 01
Tim casestudy 2013 01Tim casestudy 2013 01
Tim casestudy 2013 01Arai Ran
 
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】 「グロバール×スマホゲーム」の勝ち方セミナー資料
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】   「グロバール×スマホゲーム」の勝ち方セミナー資料グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】   「グロバール×スマホゲーム」の勝ち方セミナー資料
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】 「グロバール×スマホゲーム」の勝ち方セミナー資料Katsuaki Sato
 
NPSとHCDを組み合わせた顧客体験分析の取り組み
NPSとHCDを組み合わせた顧客体験分析の取り組みNPSとHCDを組み合わせた顧客体験分析の取り組み
NPSとHCDを組み合わせた顧客体験分析の取り組みIMJ Corporation
 
個客とIAとアクセス解析
個客とIAとアクセス解析個客とIAとアクセス解析
個客とIAとアクセス解析Makoto Shimizu
 
ユニメディア UMAP資料
ユニメディア UMAP資料ユニメディア UMAP資料
ユニメディア UMAP資料Hirokichi Satou
 
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016Eiji Shinohara
 
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発Ryohei Sogo
 
Globalnavi
GlobalnaviGlobalnavi
GlobalnaviCS KARTE
 
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料Hottolink
 
フルスクラッチで書いたアドサーバの開発運用史
フルスクラッチで書いたアドサーバの開発運用史フルスクラッチで書いたアドサーバの開発運用史
フルスクラッチで書いたアドサーバの開発運用史Innami Satoshi
 
アドテク案件入門講座
アドテク案件入門講座アドテク案件入門講座
アドテク案件入門講座伊藤 孝
 
Dyna traceによるuxマネジメント
Dyna traceによるuxマネジメントDyna traceによるuxマネジメント
Dyna traceによるuxマネジメント伸夫 森本
 
サイトサーチアナリティクスとは
サイトサーチアナリティクスとはサイトサーチアナリティクスとは
サイトサーチアナリティクスとはMakoto Shimizu
 
Keywordmap for sns
Keywordmap for snsKeywordmap for sns
Keywordmap for snsKotaroTamai
 

Similar to Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでのaws活用戦略 (20)

SmartNews TechNight vol5 SmartNews Ads大図解
SmartNews TechNight vol5 SmartNews Ads大図解SmartNews TechNight vol5 SmartNews Ads大図解
SmartNews TechNight vol5 SmartNews Ads大図解
 
マーケティング向け大規模ログ解析事例紹介
マーケティング向け大規模ログ解析事例紹介マーケティング向け大規模ログ解析事例紹介
マーケティング向け大規模ログ解析事例紹介
 
ネット通販向けレコメンドシステム提供サービスについて
ネット通販向けレコメンドシステム提供サービスについてネット通販向けレコメンドシステム提供サービスについて
ネット通販向けレコメンドシステム提供サービスについて
 
Tim casestudy 2013 01
Tim casestudy 2013 01Tim casestudy 2013 01
Tim casestudy 2013 01
 
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】 「グロバール×スマホゲーム」の勝ち方セミナー資料
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】   「グロバール×スマホゲーム」の勝ち方セミナー資料グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】   「グロバール×スマホゲーム」の勝ち方セミナー資料
グローバルマネタイズ戦略【Metaps(メタップス) pte ltd.】 「グロバール×スマホゲーム」の勝ち方セミナー資料
 
NPSとHCDを組み合わせた顧客体験分析の取り組み
NPSとHCDを組み合わせた顧客体験分析の取り組みNPSとHCDを組み合わせた顧客体験分析の取り組み
NPSとHCDを組み合わせた顧客体験分析の取り組み
 
個客とIAとアクセス解析
個客とIAとアクセス解析個客とIAとアクセス解析
個客とIAとアクセス解析
 
ユニメディア UMAP資料
ユニメディア UMAP資料ユニメディア UMAP資料
ユニメディア UMAP資料
 
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
 
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
企業向けmBaaS「AppPot」を使ったサーバー開発なしの高速モバイルアプリ開発
 
Globalnavi
GlobalnaviGlobalnavi
Globalnavi
 
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料
テクマトリックスCRM2012"『ソーシャルCRM最前線』ここまで来た!CRMの進化!"講演資料
 
フルスクラッチで書いたアドサーバの開発運用史
フルスクラッチで書いたアドサーバの開発運用史フルスクラッチで書いたアドサーバの開発運用史
フルスクラッチで書いたアドサーバの開発運用史
 
Moribus Casting
Moribus CastingMoribus Casting
Moribus Casting
 
Digital strategy in Japanese
Digital strategy in JapaneseDigital strategy in Japanese
Digital strategy in Japanese
 
アドテク案件入門講座
アドテク案件入門講座アドテク案件入門講座
アドテク案件入門講座
 
Atom info
Atom infoAtom info
Atom info
 
Dyna traceによるuxマネジメント
Dyna traceによるuxマネジメントDyna traceによるuxマネジメント
Dyna traceによるuxマネジメント
 
サイトサーチアナリティクスとは
サイトサーチアナリティクスとはサイトサーチアナリティクスとは
サイトサーチアナリティクスとは
 
Keywordmap for sns
Keywordmap for snsKeywordmap for sns
Keywordmap for sns
 

More from Boss4434

Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式
Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式
Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式Boss4434
 
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用Boss4434
 
Aws summits2014 ガリバーインターナショナル社内システムのaws化
Aws summits2014 ガリバーインターナショナル社内システムのaws化Aws summits2014 ガリバーインターナショナル社内システムのaws化
Aws summits2014 ガリバーインターナショナル社内システムのaws化Boss4434
 
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信Boss4434
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Boss4434
 
Aws summits2014 エンタープライズ向けawscdpネットワーク編
Aws summits2014 エンタープライズ向けawscdpネットワーク編Aws summits2014 エンタープライズ向けawscdpネットワーク編
Aws summits2014 エンタープライズ向けawscdpネットワーク編Boss4434
 
Aws summits2014 エンタープライズ向けawsbcpdr編
Aws summits2014 エンタープライズ向けawsbcpdr編Aws summits2014 エンタープライズ向けawsbcpdr編
Aws summits2014 エンタープライズ向けawsbcpdr編Boss4434
 

More from Boss4434 (7)

Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式
Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式
Aws summits2014 ソニー銀行_ソニー銀行の考える金融機関のaws活用方式
 
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用
Aws summits2014 ガンホー・オンライン・エンターテイメント_スマホゲームを支えるインフラ運用
 
Aws summits2014 ガリバーインターナショナル社内システムのaws化
Aws summits2014 ガリバーインターナショナル社内システムのaws化Aws summits2014 ガリバーインターナショナル社内システムのaws化
Aws summits2014 ガリバーインターナショナル社内システムのaws化
 
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信
Aws summits2014 amazon_cloudfrontを利用したサイト高速化とセキュア配信
 
Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!Aws summits2014 nttデータaws上のシステムはこう作る!
Aws summits2014 nttデータaws上のシステムはこう作る!
 
Aws summits2014 エンタープライズ向けawscdpネットワーク編
Aws summits2014 エンタープライズ向けawscdpネットワーク編Aws summits2014 エンタープライズ向けawscdpネットワーク編
Aws summits2014 エンタープライズ向けawscdpネットワーク編
 
Aws summits2014 エンタープライズ向けawsbcpdr編
Aws summits2014 エンタープライズ向けawsbcpdr編Aws summits2014 エンタープライズ向けawsbcpdr編
Aws summits2014 エンタープライズ向けawsbcpdr編
 

Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでのaws活用戦略

  • 1. 『ユーザーの趣味嗜好に適した 広告配信システム Dynalyst ができるまで』 ! ~ AdTechSTUDIOでのAWS活用戦略 ~ 株式会社サイバーエージェント アドテクスタジオ Dynalyst 木村 衆平
  • 2. Profile 名前 : 木村 衆平 Shuhei Kimura https://www.facebook.com/shuhei.kimura.10 ! 所属 : 株式会社サイバーエージェント アドテク本部 AdTechStudio Dynalyst アプリケーションエンジニア ! 経歴 : - 2011/04 ~ 広告効果計測システムの開発 ! - 2011/11 ~ PCのRTB広告配信における最適化エンジンの設計/開発 ! - 2012/09 ~ SP向け海外DSPシステムの設計/開発 ! - 2013/11 ~ SP向けダイナミックリターゲティング広告配信システムの設計/開発
  • 3. Agenda of this session オンライン広告のいま !! - 昨今の広告配信に求められることは何か? - Dynalystとは何か? ! Dynalyst ができるまで !! - 各種機能を支えるAWS基盤の事例紹介 ! Ad Tech Studio でのAWS活用戦略 !! - スピーディにプロダクトを世に送り出すための工夫 - コスト管理と開発体制
  • 4. Significant changes of the environment for online display advertising ~ オンラインディスプレイ広告を取り巻く環境 ~
  • 5. What’s happening ? より細かなターゲティングが可能な時代 ! - 5W1HにおけるWhoが特に重要視される ! - ユーザの行動に基づく広告配信 Are you an user whom we should deliver our ad ? ! - 広告予算の適切な配分とROI効率の向上 ! 広告出稿の意思決定はリアルタイム化 ~ 50msec or die ~ ! - いつ, どこで, だれに, どんな広告をいくらで 出す or 出さない - Real Time Bidding 取引は当たり前の世界 広告配信技術は年々、高度に複雑に . . .
  • 7. RealTime User Personalized Dynamic Ad service Provider is fully powered by
  • 8. Keywords RealTime ~ 何がリアルタイムなのか ? ~ ! - サイト内ユーザ行動がリアルタイムに広告に反映される - RTB時代だからこそできる ! User Personalized Ad ~ レコメンド技術 ~ ! - ユーザの趣味嗜好に合わせて広告がダイナミックに変化
  • 9. How do we build ..
  • 10. Requirements for Dynalyst system development 少人数 X 短期間 ~ 市場の状況/変化速度から許容される開発期間は 2, 3ヶ月 ~ ! RealTime ! RealTime ! RealTime ! ~ 計測から配信への反映の期間を短くすることが広告効果に絶大な影響を及ぼす ~ ! 数億impをdailyで捌く ~ ユーザ嗜好情報をどんな状態で持つべきか ~ ~ 一日24hでみたときのキャパシティ計画 ~ ~ 想定されるレポート集計データ量 ~
  • 11. Concept of system development Use managed services as much as possible !! サービス系運用システム系運用 広告主様アカウントの管理 ! 広告主様向けアカウントコンサルティング業務 ! 広告主様毎の広告クリエイティブの作成/提案 ! 広告主様サイトの商材データフィードの管理 ! etc . . . データベースの管理/チューニング ! アプリケーションの管理/チューニング ! 他社システムのとの連携後の管理 ! etc . . . ! 広告主様に対して『付加価値』を提供することが最も重要 ! 構築されたシステムそのものは価値を提供するための手段 ! フォーカスすべきは広告主様のビジネス目標・目的
  • 12. How do we build then . .
  • 13. How do we achieve “RealTime” ? 広告主様サイトに訪れたユーザがいつ どんな商品を見た, カートに入れた, 買ったかを計測する あるメディアサイトに訪れたユーザに対し、行動に基づく 趣味嗜好に合いそうな広告を配信する 広告配信を行った結果を出来るだけタイムリーに レポーティングする、次の広告配信に活かす
  • 14. How do we achieve “RealTime” ? 広告主様サイトに訪れた どんな商品 あるメディアサイトに訪れた 計測して、 趣味嗜好に合いそうな広告を配信 広告配信を行った結果を 配信して、 レポーティングする、次の広告配信に活かす 集計する!
  • 15. How do we achieve “RealTime” ? az-a1 az-c1 … for each server access logs … Tracking tracking logs user foot prints user foot print summary 広告主様サイトに訪れたユーザがいつ どんな商品を見た, カートに入れた, 買ったかを計測する Keypoints ! for big data analysis on Redshift Cluster 広告配信時に利用することを踏まえてDynamoDB, ElastiCacheにデータを投入 ! ElastiCacheはユーザがターゲティング対象ユーザであるか否かなどの判断のためのキャッシュ
  • 16. How do we achieve “RealTime” ? 広告主様サイトに訪れたユーザがいつ どんな商品を見た, カートに入れた, 買ったかを計測する HashKey RangeKey attribute . . . user A 2014/07/17 12:00:00 広告主X 靴a 見た 2014/07/17 12:01:00 広告主X 靴b 見た 2014/07/17 12:02:00 広告主X 靴b カートに入れた 2014/07/17 12:03:00 広告主X 靴b 購入した user B 2014/07/15 20:00:00 広告主Y ホテルf 見た 2014/07/15 20:01:00 広告主Y ホテルg 見た 2014/07/15 20:02:00 広告主Z ホテルj 予約した宿泊日: 2014/08/01 Why DynamoDB ? ! データ構造としては典型的パターン ! 広告主様毎のカスタマイズ (スキーマレス) ! 高スループット, 低レイテンシー, DBそのものの運用はほぼない ! 広告主様サイトのタグ導入状況に合わせてWriteキャパシティを変更 user foot prints attribute attribute Tracking
  • 17. How do we achieve “RealTime” ? 2014/07/17 12:01:00 2014/07/17 12:02:00 カートに入れた Why ElastiCache ( Redis ) ? ! Tracking 配信機能でまず判定したいのはユーザがターゲティング対象か否か ? ! ターゲティング対象ユーザである確率は一般的には20%以下 ! 残り80%はDynamoDB参照より手前の段階で振り落としたい ! DynamoDBのフロントエンドキャッシュ機構として十分なパフォーマンス user foot print summary Key hash table for Value user A 広告主X 見た 2014/07/15 12:01:00 購入した user B 広告主Y 広告主Y 見た 広告主Z 2014/07/15 12:02:00 userAがある広告主様サイトXで最 後にとった行動は何か? 広告主様サイトに訪れたユーザがいつ どんな商品を見た, カートに入れた, 買ったかを計測する
  • 18. How do we achieve “RealTime” ? az-a1 az-c1 … for each server access logs … Advertising userAにどんな広告を出しますか? tracking logs user foot prints user foot print summary Keypoints ! ① 配信時は, ElastiCacheへのターゲィング対象ユーザ判定問い合わせ ! ② どんな広告を配信するかDynamoDBから得られる情報を利用して決定 ! ※ これでピーク時秒間10000を超えるrequestをさばいています !! for big data analysis on Redshift Cluster あるメディアサイトに訪れたユーザに対し、行動に基づく 趣味嗜好に合いそうな広告を配信する userAは広告配信対象ユーザですか?
  • 19. ここまでは、 ! 『見た、カートに入れた、買った』 ! モノをリアルタイムに広告に反映させる
  • 20. How do we “Personalize Ad” ? Recommendation az-a1 az-c1 … for each server access logs … copy worker tracking logs Keypoints ! Redshiftへ各種計測ログデータを集約 ~ 広告の計測ログ + ユーザの行動ログ ~ ! SQSを介して1分おきにCOPY処理 ~ manifestを利用した一括COPY ~ ! ※ ユーザの広告反応 x オーディエンスレベルで おすすめすべき商品を予測 send message log is uploaded !! for big data analysis on Redshift Cluster あるメディアサイトに訪れたユーザに対し、行動に基づく 趣味嗜好に合いそうな広告を配信する
  • 21. How do we “Personalize Ad” ? Recommendation az-a1 az-c1 … for each server access logs … copy worker tracking logs Why Redshift ? ! 広告配信のロジックの変化をなるべく早く察知したい ! アドホックな分析クエリーを低コストで発行したい ! レポーティング基盤 x 分析基盤 send message log is uploaded !! for big data analysis on Redshift Cluster あるメディアサイトに訪れたユーザに対し、行動に基づく 趣味嗜好に合いそうな広告を配信する
  • 22. How do we “Personalize Ad” ? Recommendation az-a1 az-c1 … for each server access logs … copy worker tracking logs Why COPY frequently ? ! データが集約される場所ではじめて大きくなるべき ! アプリケーション側では基本的に細かい単位で各種DataStoreまで運ぶ ! fluentdはログ集約基盤としては利用していない send message log is uploaded !! for big data analysis on Redshift Cluster あるメディアサイトに訪れたユーザに対し、行動に基づく 趣味嗜好に合いそうな広告を配信する
  • 23. How do we “Personalize Ad” ? 広告配信を行った結果を出来るだけタイムリーに Reporting レポーティングする、次の広告配信に活かす az-a1 az-c1 … for each server access logs … Keypoints ! レポートworkerによる広告主様向けフィードバックレポート作成 ! レポートworkerによる配信機能向けフィードバックレポート作成 report worker for big data analysis on Redshift Cluster tracking logs feed back report
  • 24. How do we build “Dynalyst” ? 広告主様サイトに訪れた どんな商品 あるメディアサイトに訪れた 計測して、 趣味嗜好に合いそうな広告を配信 広告配信を行った結果を 配信して、 レポーティングする、次の広告配信に活かす 集計する!
  • 25. How do we build “Dynalyst” ? ~ Overview ~ Site Tracking Advertising Ad Tracking write write read read upload upload upload copy worker enqueue enqueue enqueue dequeue dequeue report worker feed back feed back campaign management x reporting for Advertiser
  • 26. Strategy for using in CyberAgent
  • 27. CyberAgent = 新規事業 x スピーディな立ち上げ
  • 28. Ad Tech STUDIO and more . . .
  • 29. Problems about cost management 各事業部, 各子会社 etc .. で個別にアカウント発行 リザーブドインスタンスの購入計画 安いのは百も承知!! ※ 変化の激しい組織, 業界のジレンマ
  • 30. Consolidated Billing 全社システム 親アカウント 子アカウント群 ※ 会社単位 , 事業部 の単位で個別アカウントをヒモ付け
  • 31. Consolidated Billing リザーブドインスタンス(RI)の一括購入 組織の変化に応える RIの割引の恩恵を受ける 子アカウント群 各子会社,事業部はRI購入の初期費用を 気にすることなく利用開始 ! RI適用率が60~70%になるように 1年のRI購入計画 ※ 会社単位 , 事業部 の単位で個別アカウントをヒモ付け
  • 32. Summary of this session オンライン広告のいま !! - 昨今の広告配信に求められることは何か? - Dynalystとは何か? ! Dynalyst ができるまで !! - 各種機能を支えるAWS基盤の事例紹介 ! Ad Tech Studio でのAWS活用戦略 !! - スピーディにプロダクトを世に送り出すための工夫 - コスト管理と開発体制