Upgrade to Pro — share decks privately, control downloads, hide ads and more …

技育CAMPアカデミア講演『Web広告エンジニアのお仕事』

 技育CAMPアカデミア講演『Web広告エンジニアのお仕事』

技育CAMPアカデミアにて、Supershipアドテクノロジーセンター副センター長 三宅が講演した際のスライドです(講演日:2023年5月17日)。
▼【25新卒】Supershipテックサマーインターンシップ(就業型インターン)のご応募はこちらから!
https://hrmos.co/pages/supership/jobs/0000250
▼Supership新卒採用サイトはこちら
https://recruit-newgrad.supership.jp/
■講演タイトル:
技術の総合格闘技!Web広告エンジニアのお仕事~100msec以内の高速処理とペタバイトの大規模データ処理~
■アジェンダ:100msec以内での高速処理やペタバイトクラスの超大規模データ処理が求められるWeb広告の概要と仕組みについて、この業界のエバンジェリストであるSupershipアドテクノロジーセンター副センター長の三宅が、徹底解説します。
■登壇者:Supership株式会社 プロダクト開発本部アドテクノロジーセンター 副センター長
三宅 佑磨(みやけ ゆうま)
Ruby/Railsエンジニアとして、2018年5月からSupershipの広告事業に参加。
現在はSupershipの全広告プロダクトを統括するアドテクセンターの副センター長 兼 データ/機械学習チームのマネージャーを担当。

Supership株式会社

May 25, 2023
Tweet

More Decks by Supership株式会社

Other Decks in Business

Transcript

  1. 自己紹介 略歴 • 2004年4月 津山高専 電子制御工学科 入学 • 2010年4月 津山高専

    専攻科 電子・情報システム工学専攻 入学 • 2012年4月 (株)OPTiM 入社 • 2018年5月 Supership(株) 入社 イベント参加 • 高専プロコン ◦ 茨城大会 自由部門 ◦ 津山大会 課題部門 • ハッカソンや高専カンファレンスの開催など 3
  2. Supershipグループについて 5 5 合計 10社のスタートアップの共創体 KDDI 電通 グループ 関連会社 TV

    CMのデジタル化に 向けた事業 (テレビ朝日等とのJV) グループ企業 6社合併 アドプラットフォーム / データソリューション/ DXコンサル 広告詐欺 ブランド毀損防止 AI構築 / DXコンサル アドベリフィケーション スタートアップならではのスピード感や高度なテクノロジーに加え、大企業のアセットを活用しながらビジネスを 展開する「ハイブリッドスタートアップ」として、数多くのベンチャー企業をM&Aしながら成長を続けています。 (    ) 大企業 × スタートアップが共創するハイブリッドスタートアップ
  3. 時代の変化についていく必要がある • スマホ料金の低下 → 通勤中にYoutubeやTVerを見る人の増加 • 5Gの回線速度アップ → 屋外ディスプレイなどへのCM動画配信 •

    スマートスピーカーの普及 → (ラジオ的な)音声広告の再評価 16 それらの広告配信を支える技術が アドテクノロジー(アドテク) Web広告とは
  4. Web広告の仕組み それぞれのメリット 予約型広告 • システムがシンプル ◦ = レスポンスが早い(サーバー負荷が低い) ◦ =

    利用料が安い 運用型広告 • オークションの原理が働く ◦ 自分が買いたいものだけ買う = ターゲティングが行える 24
  5. Web広告の仕組み 25 24,801億円 21,189億円 2,647億円 965億円 2022年 日本のインターネット広告媒体費 「2022年 日本の広告費

    インターネット広告媒体費 詳細分析」電通 2023/3/14 を元に生成 https://www.dentsu.co.jp/news/release/2023/0314-010594.html
  6. アドテクで解決すること 無価値な広告とは • 視聴ユーザー的に、 ◦ ユーザビリティを損なう表示 ◦ 興味関心が全くない内容 • メディア的に、

    ◦ 違法な商材 • 広告主的に、 ◦ 見込み顧客にならない人への配信 ◦ Botによる表示やクリック ◦ 違法サイト • など... 28
  7. アドテクで解決すること 無価値な広告とは • 視聴ユーザー的に、 ◦ ユーザビリティを損なう表示    → メディアターゲティング ◦ 興味関心が全くない内容      → ユーザーターゲティング • メディア的に、

    ◦ 違法な/不適切な商材        → 手動/自動の広告審査、肌色検知 • 広告主的に、 ◦ 見込み顧客にならない人への配信  → ユーザーターゲティング ◦ Botによる表示やクリック      → Bot検知、メディアターゲティング ◦ 違法サイト            → メディアターゲティング、不正取引検知 • など... 29
  8. トラフィックの流れ SSP DSP1 ①広告くれ ⑤一番高いやつ やる ここが500ms(0.5秒) ③案件くれ ④案件やる ここが100ms

    ネットワークレイテンシ + SSPの応答時間 ネットワークレイテンシ + DSPの応答時間
  9. トラフィックの流れ SSP DSP1 ①広告くれ ⑤一番高いやつ やる ここが500ms(0.5秒) ③案件くれ ④案件やる ここが100ms

    ③案件の探索 ネットワークレイテンシ + SSPの応答時間 ネットワークレイテンシ + DSPの応答時間 DSPの応答時間 何秒使えるか?
  10. トラフィックの流れ SSP DSP1 ①広告くれ ⑤一番高いやつ やる ここが500ms(0.5秒) ③案件くれ ④案件やる ここが100ms

    ③案件の探索 ネットワークレイテンシ + SSPの応答時間 ネットワークレイテンシ + DSPの応答時間 DSPの応答時間 何秒使えるか? → 40ms
  11. 40msの世界 40msを支える技術 • そもそも動作が速い言語で書く ◦ Scaleout/AdGenerationの場合はC++ • 高速なDatabaseを使う ◦ Scaleout/AdGenerationの場合はオンメモリDBにKeyValueの形で保持

    • リクエストの内容をflag化して足切りを行う ◦ stringとして処理するのではなく、予めbooleanやintの形に変換して無駄な文字列マッチなど なくす • 40ms超えそうな場合は途中で探索を止めてレスポンスを返す ◦ 案件探索のアルゴリズムを最後まで流すのではなく、途中で打ち切ってレスポンスを返す • など 42
  12. 20万 request / secの世界 3月の広告リクエスト実績:4000億 rquest • 平均 15万 request

    / sec • ピーク時 20万 request / sec 以上 • 広告動画/画像配信に使っているCDNは毎月 2PB 以上 45 サーバー稼働費 = 原価になるため、 大量トラフィックを 安く かつ 確実に さばく必要がある (広告がタイムアウトして白い枠がWebサイトに表示されるのは事故)
  13. 20万 request / secの世界 近年Live配信、特にスポーツ中継の地上波/Web同時配信が盛んになっている スポーツLive配信 • 時には数百万同時接続を見込む必要がある ◦ Youtubeや見逃し配信などのVODコンテンツはユーザーの任意のタイミングで視聴を開始する

    ため、CMタイミングが分散される ◦ Live配信ではサッカーハーフタイムなど、視聴者全員が同じタイミングでCMに入るため、同 じタイミングで数百万リクエストを処理しないといけない • Live配信以外の広告トラフィックも当然流れるため、そっちに影響を出してはいけない 46
  14. 20万 request / secの世界 24時間365日トラフィックが耐えないという特性から、通常配信はオンプレで 行っている • データセンターのサーバー約2300台を64クラスタ化して、冗長性を確保 • 各データセンターとインターネット間の通信が通常時

    7Gbps / ピーク時 10Gpbsオーバーで発生、 それに耐えうるネットワークの設計、構築 • サーバー故障検知なども実施 一方Live配信時は急激なトラフィック増が起こるのでクラウドで受ける • AWS上に想定同時視聴数分のサーバーを用意 47 オンプレ/クラウドのハイブリッド基盤で運用
  15. 20万 request / secの世界 用途に合わせてサーバークラスタを設計 オンプレサーバー環境 • 都心型データセンター:高価、低遅延    → 配信基盤で利用 •

    郊外型データセンター:割安、遅延が大きい → クラウドデータ基盤移行前の                        データ基盤で利用 48 都心型DC 郊外型DC 都心で利用しているサーバーラック
  16. PB級データの世界 20万 request/sec の世界ではアクセスログの処理もテクニックが必要 • 1リクエスト1行のnginxログが吐かれるとしても秒間20万行のログが追加されていき、 実際には毎時 2TB 以上のログが生成され処理されている •

    3月実績で合計 1PB 以上のログ/データを保有 広告配信においてアクセスログは極めて重要 • ログ = 効果/売上の証明なので、正常にログが処理できないと売上が請求できなくなる • 広告を配信した実績をユーザや周辺システムへとフィードバックし次の広告配信に活かしてもらう のが広告配信ログの存在意義 • したがってPB級のデータをいかに早くユーザへのフィードバックループに乗せるかが重要 49
  17. ターゲティング ターゲティングが行えることが運用型広告の強み どのようなターゲティングを行うか? • サイト/アプリターゲティング ◦ 特定、もしくはあるカテゴリのサイトやアプリに絞って広告を配信する • 位置情報ターゲティング ◦

    IPアドレスなどを使って国や都道府県を絞る • ユーザーターゲティング ◦ Cookieを使い過去に商品サイトに来た人を絞る ◦ 社内や連携先のデータを使って性別や年代のクラスタを作成する • 類似ユーザーターゲティング ◦ 特定のユーザー属性と近しい行動をしている人に配信する 56
  18. それ以外で使われている主な技術たち • Web Backend ◦ データ基盤からのスピーディーなレポーティング ◦ 他社広告サービスとの連携 • Web

    Frontend ◦ 入稿画面 ◦ Webサイトに組み込んでもらうためのJSの広告SDK • Native App ◦ ゲームやアプリに組み込んでもらうための様々なフレームワーク用の広告SDKの提供 • データエンジニアリング ◦ 配信ログの集計、マーケティングでの利用 • 画像/動画処理 ◦ 広告画像の肌の露出の検知、デバイスに合わせた動画エンコード • その他 ◦ セキュリティ、データガバナンス、詐欺虚偽対策など 60