More Related Content
Similar to PLA配信の仕組み (20)
PLA配信の仕組み
- 2. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-1-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
自己紹介
• 三木 慎也
• 2006年4月、新卒で某独立系SI企業に入社。
某クレジットカード会社向けマスタ管理システム、某小売店向け商品管理システムなどの
BtoB向けシステムの上流工程から下流工程まで担当。
その後、某WEB広告配信会社に常駐し、WEB広告開発を学んだ。
• 2011年4月にバリューコマース株式会社入社。
クリック課金型のインターネット広告配信サービス、ストアマッチの開発。
アフィリエイトシステムの開発。
アドネットワーク、ADPRESSOの立ち上げ後、事業買収したアドランティスとのシステム統
合を実施した。
- 3. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-2-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
バリューコマース株式会社について
・1996年 トランズパシフィック有限会社を設立
・1999年 バリューコマース株式会社に商号変更。
日本で最初となるアフィリエイトサービス開始。
・2007年 ストアマッチ(V2)サービス開始
・2014年 スマートフォン向け広告配信サービス「ADPRESSO」開始
・2015年 Glossom株式会社より「AdLantis」を事業譲渡。
株式会社デジミホを子会社化、『R∞(アール・エイト)』の提供を開始
・2016年 AdLantisをADPRESSOにシステム統合
- 4. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-3-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
ブライアン・ネルソン
2001年4月~2011年4月
ティモシー・ロナン・
ウィリアムズ
1996年3月~2001年4月
飯塚 洋一
2011年4月~2013年12月
香川 仁
2014年1月~
01
START
02 03 04
Right Now
歴代社長|1.バリューコマースって?
- 5. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-4-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
ストアマッチとは
・ストアマッチサービスとは、Yahoo!ショッピングなどのオンラインモールに出店するス
トア向けクリック課金型のインターネット広告配信サービスで、「ストアのイチオシ」と
「アイテムマッチ」という2つのラインアップがあります。
・「ストアのイチオシ」とは、オンラインモール内の検索窓や販促ページなどでストアが
入札したキーワードに連動した広告がオンラインモール上に掲載されるサービスです。
・「アイテムマッチ」とは、オンラインモールのカテゴリーとストアが登録している商品を
連動させ、オンラインモール上に掲載するサービスです。
- 6. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-5-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
ストアマッチとは
- 7. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-6-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
・Lua組み込みによるtargeting
・予算とスムージング配信
- 8. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-7-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
Lua組み込みによるtargeting
- 9. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-8-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
広告システム概要図
- 10. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-9-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
Luaについて
• Luaとは
• Luaは、C言語のホストプログラムに組み込まれることを目的に設計されており、高速な
動作と、高い移植性、組み込みの容易さが特徴である。変数に型のないスクリプト言
語では最速の言語・処理系である。(wikipedia)
- 11. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-10-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
なぜLuaを使うのか?
• 案件によって複雑な条件がある。
• バックエンドはセンシティブなため、頻繁に手を入れたくない。
• 広告パフォーマンスを柔軟に調整したい
=>Luaによるロジックの注入
- 12. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-11-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
Luaによるロジックの注入
static int _glue_device_os(lua_State *L)
{
lua_global_glud_t *glud = _get_glud(L);
lua_pushnumber(L,glud->_os);
return(1);
}
return (device_os() == 4 and is_deliver_os_v(4,4.0,nil))
C/C++
Lua
- 13. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-12-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
Luaによるロジックの注入
- 14. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-13-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
予算とスムージング配信
- 15. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-14-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
予算消化
時間
ロジックなしの場合
・一気に配信され数時間で日予算を消化してしまう
⇒日予算がなくなると次の日まで配信されない
・あまり見られない時間に一気に消化してしまい、
効果的な時間帯に配信できない
日予算消化完了
配信されない
配信ロジックなしで配信
- 16. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-15-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
予算消化
時間
毎時平均的に配信する場合
・平均的に配信するので配信できない時間は無くなる
・早朝と夜で同じだけの配信量になるので、
効果的な時間帯で無駄が出る
日予算消化完了
平均的に配信
- 17. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-16-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
ウェイト
時間
時間帯毎の配信ウェイトを決めるトレンドデータに沿って配信量を制御する
1日予算:10,000円
ウェイトの総量:10,000
10分間のウェイト:100
CPC単価:10円
1日予算×10分間のウェイト/ウェイトの総量
=10分間の配信予算
10000×100/10000 = 100円
⇒10回クリックされると再計算までストップ
夜に強く配信
早朝は少なく
10分毎に消化予算を計算し
配信量をコントロールする
⇒ 10分毎に再計算することで
適宜最適な配信量を求め
スムーズに日予算を使い切る
スムージング配信
- 18. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-17-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
予算消化の同期
• 予算消化はサーバーが複数あるため、 KVSで一元管理。
• 配信時に案件候補が複数ある場合、案件の数だけKVSに予算を問い合わせ
なければいけない。
- 19. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-18-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
スムージング配信
- 20. 11 July 2018Copyright © , ValueCommerce Co., Ltd.
-19-
本書類の内容に関する一切の権利につきましては当社に帰属し、本書類の全部または一部
を当社の事前承諾なしに公表または第三者に開示することはできませんので、貴社限りとして
お取扱いください。
一般
まとめ
• Lua
• Luaでロジックを注入することで、柔軟な配信が可能。
• 予算とスムージング配信
• 配信サーバーのdaemonで消化を同期させる
• 消化・トレンドから配信可能金額を算出し、スムージング配信を実装している
Editor's Notes
- 創業は外国人のティム。
昔は外国人ばかりだった。
日本で最初となるアフィリエイトサービス開始。
- 外国人が日本で創業
日本企業だけどちょっと異国文化・外資っぽい文化あった。
大企業経営経験者が社長に
安定・福利厚生・
現社長の香川に。ミッションビジョンを新しくし、新規事業をスタートし外部環境が変化している時代での挑戦を牽引
- キーワード連動広告の例
- ・バッチサーバー
RDBに登録された案件情報、ターゲティングの情報を抽出し、CDSにsocketで送っている。
・CDS
ふたつのコンポーネント
Reciver daemon
バッチサーバーからの案件情報をうけとる。
think send
どの配信Serverに何番までの案件情報を送ったかを管理し、最新の状態にしようとする。
統計情報を元に広告パフォーマンスをおくる。
qproxy
案件情報をsocketでうけとってshared memoryにかく。
予算を同期する。
mod adlookup 配信。
- ・案件によって
ストアマッチだと
あすつく
きょうつく
色とか
ストアマッチではないが一般的に
osターゲティング
デバイスターゲティング
都道府県
ユーザー属性
・バックエンドは~
C言語でできていて、難易度が高い。
バグると影響がでかい。
・広告パフォーマンス
ネットワークのバランスをみて、パフォーマンスを調整したい
メディアショート、広告主ショート
メディアショートでフリークエンシーキャップを強めにかける。
大人の事情で~
- Luaの例
RDBにluaが入ってる図
- Data storeはshared memoryをつかっています。
qproxyがthinksendからうけとった案件情報等をうけとってshared memoryに
一工夫をしている
Luaをバイトコードに変換してshared memoryに格納している。
配信時にスクリプトの解釈が必要ないのでより高速になる。
デメリットがLuaがバグってるとなぜ動かないか全くわからない。
デバッグが一切できない。
配信モジュールがshared memoryを読んで広告を配信する
ここまでdaemonで動いていて差分更新をしているので、管理ツールから1~2分で配信サーバーまでいきわたる。
リアルタイム性がある。
- CPCならなんですが、予算消化はサーバーが複数あるため、KVSで一元管理。
配信は別サーバーに消化を問い合わせてはいけない。
- ストアマッチはCPC(クリック課金)なので、リダイレクターが消化をKVSに書き込みます。
qproxyはbudget syncという処理で、消化をKVSから取得しshared memoryに更新する。
予算上限・消化・トレンドから配信可能金額を計算し、shared memoryに更新
qproxyは今配信していい金額を予算上限・消化・トレンドから算出します。
ポイントは配信モジュールは今配信していい金額にたいして配信します。
たとえば、10分おきに5円