Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FiNCの分析基盤の概要
Search
Yoshimi Kondo
April 26, 2017
2
4.5k
FiNCの分析基盤の概要
Yoshimi Kondo
April 26, 2017
Tweet
Share
More Decks by Yoshimi Kondo
See All by Yoshimi Kondo
FiNC Tech Meetup ~Growth Engineering~
yoshimikeisui
0
1.1k
本質的なグロースハックを求めて
yoshimikeisui
0
1.7k
FiNC App Chat Onboarding Growth Hack
yoshimikeisui
0
5.1k
Simple Graph
yoshimikeisui
1
2.4k
Featured
See All Featured
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Product Roadmaps are Hard
iamctodd
44
9.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
Thoughts on Productivity
jonyablonski
58
3.8k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
Building a Scalable Design System with Sketch
lauravandoore
456
32k
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.6k
Art, The Web, and Tiny UX
lynnandtonic
289
19k
Building Better People: How to give real-time feedback that sticks.
wjessup
355
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
244
20k
Practical Orchestrator
shlominoach
182
9.7k
Transcript
FiNC ੳج൫ͷ֓ཁ σʔλੳج൫Night #2 Yoshimi Kondo FiNC Data Engineer 2017/04/26
ࣗݾհ 2 ͍· FiNC σʔλΤϯδχΞ&ΞφϦετ ͜Ε·Ͱ RailsΤϯδχΞ(1) iOSΤϯδχΞ(1) σʔλج൫पΓͷΤϯδχΞ()
FiNCͷαʔϏεհ 3 ݕٕࠪज़ઐՈɾଞۀքωοτϫʔΫΛ׆༻͠ɺݸਓ๏ਓͷ݈߁Λࢧԉ QPXFSFECZ ຖ৯ʹαϥμΛͭ ͚Δ ఏܞ ళฮ͚ ๏ਓ͚ "*ύʔιφϧίʔνΞϓϦʢ'J/$ʣ
ΣϧωεϔϧεέΞϓϥοτϑΥʔϜ 'J/$Ϟʔϧʢ&$ʣ ϔϧεέΞʹಛԽͨ͠ΦϯϥΠϯετΞ ݕࠪࣄۀ Ҩࢠݕࠪɾ݂ӷɾετϨενΣοΫ Ұൠ͚ ΦϯϥΠϯϫʔΫε ϔϧεέΞઐՈΞεϦʔτͷΫϥυιʔγϯά 'J/$Ոఉڭࢣ ಛఆอ݈ࢦಋɾݮྔɾӫཆӡಈࢦಋͷεϚϗԕִࢦಋ
FiNCʹ͓͚ΔੳνʔϜͷϛογϣϯɾྖҬ
FiNCʹ͓͚Δੳج൫ͷϛογϣϯ 5 ࠷దͳҙࢥܾఆΛ࠷Ͱಋ͚ΔͨΊͷੳج൫Λͭ͘Δ
Α͍ੳج൫ͬͯͳΜͩΖ͏
7 Α͍ੳج൫ͷཧͱ ΞϓϦઃܭʹׯব͠ͳ͍ ෛՙɾόάগͳ͍ ܽଛ͕ͳ͍ Ճ/σϦόϦͷԆ͕গͳ͍ ͙͢ʹݕূ݁Ռ͕ݟΕΔ ࣈͷཁҼ͕Θ͔Δ ※Πϝʔδ ͙͢ʹ՝ಛఆ͕
Ͱ͖Δ
8 Α͍ੳج൫ͷཧͱ ͙͢ʹ՝ಛఆ͕ Ͱ͖Δ ΞϓϦઃܭʹׯব͠ͳ͍ ෛՙɾόάগͳ͍ ܽଛ͕ͳ͍ Ճ/σϦόϦͷԆ͕গͳ͍ ͙͢ʹݕূ݁Ռ͕ݟΕΔ ࣈͷཁҼ͕Θ͔Δ
࠷దͳKPI͕ઃఆ͞ΕͯΔ औΔ͖ࣈ͕໌Β͔ ͲͷΑ͏ͳUX͕ ΞϓϦͷίΞʹͳΔ͔
9 Α͍ੳج൫ͷཧͱ ج൫બఆɺϩάઃܭ ͬͪ͜ଆΛݟͭΊΔ ͱ͜Ζ͔Β ͪ͜Βଆͷઃܭ ͋͘·Ͱ݁Ռ
FiNCͷ߹
FiNCͷੳχʔζ 11 Ϣʔβʔͷݸʑͷύʔιφϧσʔλʹ߹Θͤͨ Ϣʔβʔମݧͷఏڙ SNSܥλΠϜϥΠϯɾϑΟʔυͳͲͷ࠷దԽݕূ ಈըͳͲͷϝσΟΞར༻ঢ়گ ݸʑͷϢʔβʔσʔλ x Ϣʔβʔମݧϩά طଘͷΞϓϦੳπʔϧͰରԠ͖͠Εͣɺ
ࣗͨͪͰઃܭͨ͠ϩάऩूج൫Λͭ͘Δ͜ͱʹ
ࠓͷੳج൫શମ૾
σʔλج൫ͷ၆ᛌਤ 13
ϩάͷऩूج൫
ϩάऩूج൫ 15 BQQGSBNFXPSL LJOFTJTpSFIPTF MBNCEB 4 "NB[PO%.4 4 API Access
Custom Event TFSWFSBQQ Ϣʔβʔͷߦಈϩάͱͯ͠ɺAPIΞΫηεͰิ͖͠Εͳ͍ߦಈΛੳ͢Δχʔζ͕ੜ·Εͨ →ޙ͔ΒCustomEventͱͯ͠firehoseʹྲྀ͠ࠐΉΑ͏ʹͳͬͨʢͳ͓ࠓAPIΞΫηεϩάར༻ʣ ΞϓϦέʔγϣϯଆͷσʔλϕʔεɺDMSͰRedshiftʹྲྀ͠ࠐΜͰ͍Δ AccessLog APIॲཧ
ϩάऩूج൫ 16 BQQGSBNFXPSL LJOFTJTpSFIPTF MBNCEB 4 "NB[PO%.4 4 ৯ࣄΛهͨ͠ʂ ϨγϐಈըΛ࠶ੜͨ͠ʂ
TFSWFSBQQ ྫɿಈը࠶ੜϩάͱ৯ࣄهػೳར༻ ΞϓϦέʔγϣϯϩδοΫʹؔΘΔσʔλ→αʔόʔαΠυΞϓϦέʔγϣϯͷRDS্ʹอଘ ੳ͚ͩʹ͔͠Θͳ͍σʔλ→ੳ༻framework(firehose)͔Βอଘ →શͯΛੳϩάʹྲྀ͢ͷ͠ΜͲ͍&ੳ༻ϩάͷΛΞϓϦέʔγϣϯʹ࣋ͪࠐΈͨ͘ͳ͍ͨΊ ৯ࣄΛه͢Δલʹ ϨγϐಈըΛ࠶ੜͨ͠ʂ AccessLog
ϩάऩूج൫ 17 ΞϓϦΞΫςΟϏςΟϩάͷ࣮ޱͱͯ͠ɺੳ༻frameworkԽʢfirehoseͷSDKΛแʣ αʔόʔ(web/API)ΞΫηεϩάͷ࣮ޱͱͯ͠ɺࣾઐ༻rails gemΛ༻ҙͯ͠ಋೖΛָʹ BQQGSBNFXPSL LJOFTJTpSFIPTF MBNCEB 4 "NB[PO%.4
4 API Access Custom Event TFSWFSBQQ
ϩάͷूܭج൫
ϩάूܭج൫ 19 ੜϩάΛͦͷ··ͭͬ͜Μͩςʔϒϧ͕ͻ͠Ί͘εΩʔϚ firehose͔Βͷϩάςʔϒϧ APIΞΫηεϩάςʔϒϧ ֤αʔόʔΞϓϦέʔγϣϯ͔ΒҾͬு͖ͬͯͨεΩʔϚ ϥΠϑϩάܥςʔϒϧͱ͔ ϑΥϩʔͱ͔͍͍Ͷͱ͔ ࠂπʔϧͳͲ֎෦αʔϏε͔ΒҾͬு͖ͬͯͨεΩʔϚ ྲྀೖܦ࿏ͱ͔
ࠂΫϦΤΠςΟϒͱ͔ Ϣʔβʔ͝ͱ/ػೳ͝ͱʹαϚͬͨϏϡʔ(ςʔϒϧ)ͷεΩʔϚ σϞάϥใxΞΫςΟϏςΟ ࠂใxΞΫςΟϏςΟ DailyͷϢʔβʔߋ৽σʔλ ੜϩάܥεΩʔϚ ूܭؔͰKPIʹ͍ۙܗͰ·ͱΊͨςʔϒϧͨͪͷεΩʔϚ DAU/RR/ActivationRate ֤ػೳར༻ूܭ ਓؾίϯςϯπ ͍ΘΏΔੳ༻εΩʔϚ ͻͱͭͷRedshift clusterʹू
ϩάूܭج൫ 20 ੜϩάΛͦͷ··ͭͬ͜Μͩςʔϒϧ͕ͻ͠Ί͘εΩʔϚ firehose͔Βͷϩάςʔϒϧ APIΞΫηεϩάςʔϒϧ ϥΠϑϩάܥςʔϒϧͱ͔ ϑΥϩʔͱ͔͍͍Ͷͱ͔ ࠂπʔϧͳͲ֎෦αʔϏε͔ΒҾͬு͖ͬͯͨεΩʔϚ ྲྀೖܦ࿏ͱ͔ ࠂΫϦΤΠςΟϒͱ͔
ੜϩάܥεΩʔϚ ੳ༻εΩʔϚͷݩσʔλ σʔλΛਂ͍͍ͨ࣌͠ʹɺ σʔλΞφϦετ ΫΤϦΛୟ͖͍ͨΤϯδχΞ͕ ੜϩάܥͷεΩʔϚΛ͏ қ ͋ΔఔͷΞϓϦϩδοΫ SQLͷ͕ࣝͦΕͳΓඞཁ ֤αʔόʔΞϓϦέʔγϣϯ͔ΒҾͬு͖ͬͯͨεΩʔϚ
ϩάूܭج൫ 21 σϞάϥใxΞΫςΟϏςΟ ࠂใxΞΫςΟϏςΟ DailyͷϢʔβʔߋ৽σʔλ ूܭؔͰKPIʹ͍ۙܗͰ·ͱΊͨςʔϒϧͨͪͷεΩʔϚ DAU/RR/ActivationRate ֤ػೳར༻ूܭ ਓؾίϯςϯπ ͍ΘΏΔੳ༻εΩʔϚ
KPIͷѲ جຊతͳσʔλੳ ੳ༻εΩʔϚͰ͏ қ ΤΫηϧΛ͑ΔਓͰ͋Ε σʔλΤΫεϙʔτΛͯ͠ ͓͓Αͦͷੳ͕Մೳ SQLͷڭେࣄɺͰΤΫηϧͰͰ͖Δ͜ͱଟ͍ͷͰɺ ੳ༻ͷσʔλςʔϒϧΛ༻ҙͨ͠΄͏͕ ίεύ͕ྑ͍͜ͱଟ͍Ͱ͢ ※αΠζେ͖͗͢ͳ͍Α͏ɺΤΫεϙʔτͷ݅ൣғཁࢦఆ Ϣʔβʔ͝ͱ/ػೳ͝ͱʹαϚͬͨϏϡʔ(ςʔϒϧ)ͷεΩʔϚ
ϏδϡΞϥΠθʔγϣϯ
ϏδϡΞϥΠθʔγϣϯ 23 redash͕γϯϓϧͰศར - ΞυϗοΫͳΫΤϦ - ୯ҰͷKPIΥον - ؆қͳμογϡϘʔυ redashͱͷಉظػೳΛ׆༻
- Ϩϙʔτͱͯ͠·ͱΊ͍ͨ࣌ - ෳͷKPIΛҰؾʹฒͯݟ͍ͨ࣌ ͖Ε͍ͳUIͷμογϡϘʔυେࣄ!Ͱ ·ͣݟΔ͖ࣈ͕ݟΕ͍ͯΔ͜ͱ͕ॏཁ
࠷ۙؾʹͳ͍ͬͯΔ͜ͱ
࠷ۙؾʹͳ͍ͬͯΔ͜ͱ 25 ※TechRepublicΑΓҾ༻ Facebook Automated Insights Fabric Analytics Dashboard KPIͷมԽΛࢹɺ
ࣗಈͰϨϙʔτ͍ͨ͠
Thank you!