大規模広告配信システムの今後と課題 / Large scale ad delivery system

2016ba6b977a2e6691811fa66d5f4336?s=47 CyberAgent
February 22, 2019

大規模広告配信システムの今後と課題 / Large scale ad delivery system

サイバーエージェントの技術者(エンジニア・クリエイター)向けカンファレンス『CA BASE CAMP 2019』

大規模広告配信システムの今後と課題
黒崎 優太

2016ba6b977a2e6691811fa66d5f4336?s=128

CyberAgent

February 22, 2019
Tweet

Transcript

  1. 㛻釨嘗䇶⼔鿥⟓وٞرؠعס
 ☪䏲כ鐐갭 劔䌋⚡炘ئؕف٭ؙ٭ةؘ٤عؓغطؠ儖鼧%ZOBMZTU
 랬㽂⨣㜀!LVSP@N

  2. 랬㽂⨣㜀 ˝ 劔䌋⚡炘ئؕف٭ؙ٭ةؘ٤ع
 ؓغطؠ儖鼧%ZOBMZTUꝧ氦鞊♳縖 ˝ 䇗二⶙⪌炘 ˝ ⪌炘♓全%ZOBMZTUס⪌儘 鿥⟓ 銶峮

    ꥗銶鼧⮆ס ꝧ氦 ؕ٤نٚ؅䥵䎎 ˝ 舅㱝ؕ٤نֿٚ飮⽏ !LVSP@N !LVSPDIBO
  3. ☪㍑ֽ鎇׌׾׆כ ˝ 佤䇗עبتطّס哭釐׷ؓ٭؞طؠزٔמחַיֽ鎇׊ױ׊ג ˝ ☪䇗עֵ׿־׼סVQEBUFכյ䇶⼔ס哅槡氳ם孱׿מ㵚䑴׌׾ג״ס䤗软מח ַיֽ鎇׊ױ׌ 㛻釨嘗䇶⼔鿥⟓وٞرؠعס☪䏲כ鐐갭

  4. %ZOBMZTUכע 佤䇗־׼ס㚺⴫ لةؾت氳ם⣐ꪫ 䤗软氳ם⣐ꪫ ☪䏲ס䧪䡵

  5. %ZOBMZTUכע

  6. ؕ٤ذ٭ؾشع䇶⼔כע

  7. ؓغطؠتذة؛סꯛ㓊

  8. 35#ס׊ׂײ ˝ 35#3FBM5JNF#JEEJOH 441 %41T

  9. 35#ס׊ׂײ ˝ 8FCً٭ةֿٞ٭غ׈׿յ䇶⼔ذءֿ氦愁! 441 %41T

  10. 35#ס׊ׂײ ˝ 凂䗯㕔׷ٗ٭ا䗯㕔ככ׵מCJESFRVFTUֿׂ׾ 441 %41T CJESFRVFTU

  11. 35#ס׊ׂײ ˝ ⪌儘갮כ辐炐׌׾䇶⼔؅婊㲊 441 %41T "% "% "% CJESFRVFTU ԁ

    ԁ ԁ
  12. 35#ס׊ׂײ ˝ 0QFO35#כַֹوٞعؤٜך⪌儘 441 %41T "% "% "% ԁ ԁ

    ԁ
  13. 35#ס׊ׂײ ˝ ⪌儘갮ֿ┉樑냕ַ◄哅縖ֿⳏ⮵׌׾ 441 %41T "% "% "% ԁ ԁ

    ԁ XJO"
  14. 35#ס׊ׂײ ˝ 441מ䇶⼔ؠؙٛؕطؔهֿ鴜׼׿׾ 441 %41T "% "% "% ԁ ԁ

    ԁ "% XJO"
  15. 35#ס׊ׂײ ˝ 441磬榺ך蛽儘׊ג◄哅縖ס䇶⼔ֿ㷣ꝧ׈׿׾ 441 %41T "% "% "% ԁ ԁ

    ԁ "% XJO" "%
  16. 35#ס׊ׂײ ˝ ׆׿؅냕鵭מ筝׽鲭׌ 441 %41T "% "% "% ԁ ԁ

    ԁ "% XJO" "% औҾ͸NTҎ಺ʹ׬ྃ͠ͳ͚Ε͹ͳΒͳ͍
  17. %ZOBMZTUכע ˝ %ZOBNJD3FUBSHFUJOHGPS(BNFT تٌُ⺸ׄ䇶⼔鿥⟓وٚشعنؚ٭ّ عشوج٭ٜت!仼儖סتٌُأ٭ّס╈ך׵냕ַبؘؓ 仼儖յْؓٛ؜؅⻠׳؜㎁מ鿥⟓╈ ٗ٭اׇכמ僃鸵⴫׊ג䇶⼔؅鿥⟓ IUUQXXXEZOBMZTUJP

  18. 佤䇗־׼ס㚺⴫

  19. 僖ꝴ丗ⶉ⧠ٛؠؙتع؅׈ףׂ䤗软 ˝ ⪌儘ٛؠؙتعꄈ丗ⶇ┒ٛؠؙتع熮 ˝ ⪌儘عٚنؔشؠ硜(CQT ˝ ٝتَ٤تذّؕNT♓⫂ ˝ ٞءסꄈ丗5#%BZ ㏆竊敯䛜

    ೔ຊͷೖࡳϦΫΤετඵ ೔ຊΞϝϦΧͷϨεϙϯελΠϜ NTFD
  20. %ZOBMZTUסؓ٭؞طؠزٔ哭釐 ˝ "--"84 ╚釐ؤ٤َ٭ؾ٤ع

  21. %ZOBMZTUסؓ٭؞طؠزٔ哭釐 ˝ "--"84 BQOPSUIFBTU VTFBTUמ㷣ꝧ 䎎⮣׻׽ءٞ٭فٜםوٞرؠع؅泘䧗׊יַגסך"84؅鹟䥃 硜⠕סؓوٛآ٭ب٘٤ؤ٤َ٭ؾ٤عך啶䡗 ㍲ע⪌儘ئ٭فסײ

  22. ׵זכ湳׽גַ亠ע ˝ 僖ꝴ丗ⶉ⧠ٛؠؙتع؅׈ףׂ䤗软 佤䇗ס氦辐  㛻ꄈסعٚنؔشؠ؅⹨ׄ׾ג״ס㓹儖啶䡗 4DBMBכַֹ鹟䥃 ┾⮛┾车⭚杼 ٞءסتعٛ٭ِ٤ء ٗ٭اظ٭ذס䣽ַ

    ┉仼丗5#סٞءס꥗銶 泃釱 ˝ IUUQTTQFBLFSEFDLDPNLVSPDIBOZVFKJBOTIVRJBOZJSJLVFTVUPXPTBIBLVKJTIVBSDIJUFDUVSFOJHIUHPOHLBJZPOH
  23. ⪌儘ٛؠؙتع丗סꝎ僿عٝ٤غ ˝ ꯂ鐧מٛؠؙتع丗ֿ㘃ֻי׀יַ׾ 䤗软氳ם釐♭ע׵ה؀؆յلةؾت氳ם釐♭׵㚺⴫׊י׀ג

  24. لةؾت氳ם⣐ꪫ

  25. ㏇䈻䦡㛻ֿ䑒釐ם杼榺 ˝ ㏇䈻⪌儘⺎耆ם䇶⼔凂ס׆כ ˝ 喋չם䇶⼔╚מ㵚׊י喋չם䇶⼔凂ס╈־׼僃鸵ם䇶⼔凂؅鞙ַ♀ׄגַ ˝ 韬ꄈ؅䥵⟊׌׾ג״מַׂח׵ס441כ䫘禈׊ٛ٭زٔلٛطؔ؅䥵⟊ ˝ %ZOBMZTUע仼儖כْؓٛ؜ך鞙ַ♀ׄ؅׊յ؜㎁מ鿥⟓ ˝

    ؾشع٠٭ؠٝؕط٤بס齉⺬־׼ْؓٛ؜ס㏇䈻עْؓٛ؜ך鞙ַ♀ׄ׾䑒釐ֵֿ׾ ˝ "1"$㏐㓊ע典◹־׼ס鞙ַ♀ׄך؜ف٭⺎耆 IUUQTBXTBNB[PODPNKQBCPVUBXTHMPCBMJOGSBTUSVDUVSF
  26. Ⳃ槆䇶⼔ ˝ Ⳃ槆䇶⼔ס䄫㕙ֿ䦡㛻׊יַ׾ ُ٭آطؔ٤ء泘氳מ⺬؂׎גⳂ槆䇶⼔ס㨥⛮׷نؚ٭ُشعס鹟䥃罈ֿ㘃ֻי׀ג %ZOBMZTUכ׊י׵鹟䥃罈כ׊י榫䙫׊םַ䣆עםַ

  27. Ⳃ槆䇶⼔ס鿥⟓ך✳؂׿׾釨劲 ˝ 7"45 7JEFP"E4FSWJOH5FNQMBUF  ؕ٤تعٛ٭ّⳂ槆䇶⼔ :PVUVCFסⳂ槆䇶⼔ס׻ֹםنؚ٭ُشع 榫ס釨劲
 ؕ٤فػ٭סⳂ槆䇶⼔ך׵✳؂׿׾ ˝

    .3"*% .PCJMF3JDI.FEJB"E*OUFSGBDF%FOJUJPOT  Ⳃ槆מ꡾׼םַٓفٜؕؓوٛ⺸ׄמ鿥⟓׈׿׾ٛشزْظؔؓ䇶⼔סג״ס"1* .3"*%"1*؅⮵榫׊י䇶⼔ؤ٤ط٤صֿظفؕت嚀耆׫ؓؠجت׊ג׽׌׾ ˝ ׆׿׼ס釨劲؅䤧䭂׊յ䇶⼔ס⪌儘ֿך׀׾׻ֹמ׌׾䑒釐䓪 ˝ فػ٭䇶⼔כ攐䓪ֿ鷿ֹסך嚀耆鴑ⱶֿ䑒釐 ˝ ⪌牭յؙ٤ؤ٭غյ榟䡗յ釱绱磬鷨侇ꝴ銶峮˟
  28. )FBEFS#JEEJOH ˝ חס䇶⼔凂؅邾丗ס441ך琂؂׎י┉樑⪌儘갮ֿ냕ַ䇶⼔؅辐炐׌׾ גׂ׈؆ס⪌儘縖ֿ釤鱮״׾סךْظؔؓ⣐ס⹜沟䓪ֿ⺸┕ ⺲⯥עIUNMסIFBEFS־׼全יַ׾ ˝ 釐׌׾מր㛡壿؛٭ؠب٘٤ց IUUQTNBSLFUJOHMBOEDPNIFBEFSCJEEJOHNBSLFUFSTOFFELOPX

  29. )FBEFS#JEEJOHס⮵憠 ˝ ؚؗ٭ذ٭نؚ٭ٜ㑔ס؛٭ؠب٘٤דכْظؔؓ⣐ֿ嚀⚡䮇㜊׊יַג ˝ ׵זכ냕ַ⪌儘縖ַֿי׵鴢׊י׊ױזיַג IUUQTXXXTOBDLNFEJBDPNIFBEFSCJEEJOHXIBUJTJUBOEIPXDBOXFIFMQ

  30. 㛡丗ס441מ䫘禈׊יַ׾%41ך颯׆׾׆כ ˝ ⺱׋凂ס⪌儘ٛؠؙتعֿ邾丗⺱侇מ全׾   ˝ ַׂ׼냕ׂ⪌儘׊י׵祀㵚מ׌׬יס
 ؛٭ؠب٘٤מעⳏיםַ ˝ ⪌儘ٞةشؠמכזיעؿؕثמם׾

    441" 441# 441$ %41
  31. 'JSTU1SJDF"VDUJPO ˝ ⫔꯽ך鐄伺׊ג35#ס☼磝ײע4FDPOE1SJDF"VDUJPO ┉樑냕ַ갮ך⪌儘׊ג縖ֿ樑泘 ⫃ס⡁壿ך蛽儘׌׾ ˝ 'JSTU1SJDF"VDUJPO ┉樑냕ַ갮ך⪌儘׊ג縖ֿ舅⮆ס⪌儘갮ך蛽儘׌׾

  32. ם׏'JSTU1SJDF"VDUJPOםס־ ˝ %41氳מע4FDPOE1SJDF"VDUJPOס亠ֿب٤وٜ րאס凂ֿ/⫃ס❫⡁ֵֿ׾ցכ䓙זג갮ך⪌儘׌׿ף׻ַ
 ؛٭ؠب٘٤מⳏ⮵׊ג侇ע域憠ס❫劲 ⫃ך蛽儘׈׿׾סך域憠כס❫劲䄐ס⮆㱦ׂ鞙ֻ׾
 'JSTU1SJDF"VDUJPOךע琂⺬ס⪌儘갮؅◀峮׊י舅⮆ס⪌儘갮؅婊㲊׊םׄ׿ףؤتع㘃מם׾
 ْظؔؓئؕغ־׼׌׾כ⹜沟䓪ֿ⺸┕׌׾  ˝

    )FBEFS#JEEJOHס׻ֹם㛡壿؛٭ؠب٘٤מַֽיע┘⮵מם׾ 舅⮆ס⪌儘갮ךⳏיגע׍םסמյ4FDPOE1SJDFֿ⛥־זג׎ַך
 )FBEFS#JEEJOHמַֽי靷ׄי׊ױֹ ˝ 鵀伺䓪סゖ갭 %41־׼׌׾כ蛽儘갮ֿ塜䎎םס־؂־׼םַ 441ֿ4FDPOE1SJDF؅⣞逷׊יַםַ◄ע吾錞┘耆  ˝ )FBEFS#JEEJOHס凂؅╈䑏מ'JSTU1SJDF"VDUJPOֿ䇶ױ׽חחֵ׾
  33. 䤗软氳ם⣐ꪫ

  34. QSPUPDPMCVFSTס㵵⪌ ˝ 䇶⼔ס銶峮قْٚ٭ذמQSPUPDPMCVFST؅㵵⪌ ⪌儘侇סقْٚ٭ذ ꥗銶׷⮆冪סג״מ䑒釐 ؅銶峮ئ٭فמ䌕׀㍑׌ג״מVSMقْٚ٭ذ ؅✳榫׊יַג ˝ ☪ױךע銶峮׊גַقْٚ٭ذֿ㘃ֻ׾ׇכמVSMقْٚ٭ذ؅鴑ⱶ׊יַג 㲔逷ֿ㛻㚺յVSMֿל؆ל؆Ꝏׂם׾˟

    ˝ QSPUPDPMCVFST ت؞٭ُ㲊紶؅׌׾דׄךبٛؓٚؕاכظبٛؓٚؕاֿ榟䡗׈׿׾ 舅抅כ䏲亠◍䬵䓪؅⟊י׾ ր鷐׿JNQSFTTJPOゖ갭ցמ㵚䑴׊׷׌ַ
  35. QSPUPDPMCVFSTס㵵⪌ ˝ QSPUPDPMCVFS CJOBSZ H[JQFODSZQUJPO#BTF&ODPEJOH TUSJOH  ˝ ⮵憠 بٛؓٚؕثظبٛؓٚؕثֿ哧

    ⺎㚺Ꝏؙ٤ؤ٭ظؔ٤ءفؕػٛ辐杯 H[JQ םסךظ٭ذꄈֿ峎׾ VSMقْٚ٭ذ⮆ס乃㰄⮛ֿ峎׾ס׵ֵ׽磵冽氳מ63-ֿ湾ׂך׀׾
 倊⺘⴫ 糓⺲מ׻׽قْٚ٭ذס熹ⶁ䷉׉؆吾湳ֿ⺎耆 https://tracking-server?param1=123&param2=abcde&param3=2.34&param4=fghi... https://tracking-server?param=UWVKmZjViTXdoQXdxS1hWeVFGUW1jazVlZkpqQ1N4QXp... #FGPSF "GUFS
  36. $JSDMF$*㵵⪌ ˝ $JSDMF$*ךסلٜغמחַי ˝ 釨嘗 硜TVCQSPKFDUT 硜┒车 ٓؿٛبشؠَٛةعٛ ˝ ┾⮛لٜغ؅׌׾ג״מ


    لٜغ؞ٔشبٖ؅舅⯥ך⟊㰆׊ג׽
 扛蓝؅׊יַג w IUUQTTQFBLFSEFDLDPNLVSPDIBOTDBMBQVSPEBLVUPGBMTFCJSVEPHBPTVIVB
  37. $JSDMF$*㵵⪌ ˝ $JSDMF$*עכ⮯擻כ銧זי׵ַַׂ׼ַ二׊ׂםזג ˝ #:0$ #SJOH:PVS0XO$POUBJOFS  ˝ ؜تذُؕث⺎耆םلٜغنٞ٭ 鴫מַֹכ嘅嶖סلٜغنٞ٭כַֹ׵סֿםׂםזג

    ؞ٔشبٖס⯆䐒׵舅榺舅㏇מםזג ˝ XPSLPXT嚀耆 +PCס❣㰆꞊➟ֿ㲊紶ך׀׾׻ֹמםזג ˝ 釐׌׾מ׷׽גַ䷑갭 ה׶؆כ湳׼םַכ✳ַ׆ם׎םַ
  38. $JSDMF$*㵵⪌ ˝ ׷זג׆כ ˝ لٜغ錃㲊نٜؒؕס舅Ⳃ榟䡗 ⠕♓┕סؓوٛסلٜغ錃㲊؅䣆ך傴־םׂי荁ַ׻ֹמ ˝ 䄐⮆لٜغ 䄐⮆طتعס㲔产׷㚺催סםַوٞةؘؠعסلٜغ؅ت؞شو׊لٜغ侇ꝴ؅㛻䆋湾竊 (JU)VC"1*؅磝ײ⺬؂׎لٜغֿ䑒釐םوٞةؘؠعםס־؅⮭㲊

    ٛٛ٭ت⯥ס侇סײ׌׬יסطتع؅㍑׊丝⺬䓪؅䥵⟊׌׾ ˝ OJHIUMZCVJME TDIFEVMFEUSJHHFS؅榫ַי企僼מ؞ٔشبٖ؅⯡ꢜ׊نٜلٜغ 夵僼二뉲םلٜغ؞ٔشبٖ؅榟䡗׊㛙鼧ٚؕهٚٛס❣㰆꞊➟ֿ㙗׿יַםַ־زؘشؠ
  39. 4QPU*OTUBODFס孨榫 ˝ ꥗銶ؠٚتذ؅ُتذ٭ؿ٭غ♓㛙؅׌׬יتَشعؕ٤تذ٤تמ ˝ "QBDIF4QBSLס⫛Ꝏ䓪؅榟־׊י٠٭؜٭؅تَشعؕ٤تذ٤تך鷞榫 ˝ ꥗銶╈מؕ٤تذ٤تֿ磙▼׈׿ג㕙⺬ע舅Ⳃך二׊ַؕ٤تذ٤تֿ鴑ⱶ IUUQTEFWFMPQFSTDZCFSBHFOUDPKQCMPHBSDIJWFT

  40. 45JFSJOH ˝ %ZOBMZTUס鿥⟓硌סٞءע׌׬י4מ⟊㰆 ˝ ☪ױךע┉㲊僿ꝴ磬鷨׊גٞء؅䣆Ⳃך⯡ꢜ׌׾סײדזג ˝ -JGF$ZDMF1PMJDZ ┉㲊僿ꝴ磬זג׼舅Ⳃך⯡ꢜ 4*"מ燯Ⳃ ˝

    4*OUFMMJHFOU5JFSJOH 舅Ⳃךتعٝ٭ةؠٚت؅燯Ⳃ׈׎׾ ˝ "NB[PO(MBDJFS 㓹儖ؓؠجت׊םַֿ錞饉כ׊י⟊䧏׊יֽׂ׵ס
  41. ☪䏲ס䧪䡵

  42. ◄哅啶鵰ס㚺⴫מ䍚ַبتطّ ˝ 哅槡Ⳃ⺸ ؾؕطؔه Ⳃ槆 )FBEFS#JEEJOH  ˝ ◄哅Ⳃ⺸ تٌُYٛذ٭أطؔ٤ءYرؕػِشؠ

    ؞ٔ٤ً٭٤啶鵰ס㚺催 ءٞ٭فٜ㷣ꝧ  ˝ 喋չם◄哅ס㚺⴫מך׀׾דׄ企ׂ㵚䑴ך׀׾☼磝ײ؅丝ֻיַׂ
  43. ⪦⺱溿狒 ˝ ؓغطؠتذة؛ךע"*-BC╚㵵ך榤㰢鵽䯥؅䍚⴫׊יַ׾ ˝ 鿥⟓׌׾דׄךֵ׿ףـ٭غٜעל؆ל؆┖ֿזי׀יַ׾ ˝ 䇶⼔Ⲗ冽؅┕ׅ׾ג״סٜؓإٛثّ׷ؠؙٛؕطؔهס辐杯ֿ
 ⳏ靷מםזיַ׾ ˝ 二׊ַꯛ㓊מ䤷鞲׊חחյ㲔饧䤷⪌ך׀׾⛮⯆טׂ׽ֿꄆ釐

  44. $POUFYUVBM#BOEJU ˝ 䜲䟔紶㗒㛻㰢磬岷㰢鼧佔ꄇ㼵㱳䷷䪧כס⪦⺱溿狒

  45. ꄈ㯸ؓؼ٭ٛ٤ء ˝ 企牓榹㛻㰢榹╈㲃⬡䷷䪧כס⪦⺱溿狒

  46. ֵ׽ֿכׇֹ׉ַױ׊ג