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
Rettyの分析基盤におけるAWS活用術
Search
chie8842
October 20, 2017
Technology
8
1.9k
Rettyの分析基盤におけるAWS活用術
#xtechjaws #xtechjaws01
2017/10/20 X-Tech JAWS の資料
chie8842
October 20, 2017
Tweet
Share
More Decks by chie8842
See All by chie8842
MongoDB Atlas Search のご紹介
chie8842
3
910
MongoDB Atlas Vectorsearchではじめる生成AIアプリ開発
chie8842
3
1k
AWS GlueとAWS Lake Formationではじめるデータマネジメント
chie8842
0
840
Distributed Processing in Python
chie8842
2
590
クックパッドにおける推薦(と検索)の取り組み
chie8842
21
7.8k
Understanding distributed processing in Python
chie8842
2
1.8k
Performance Tuning Tips of TensorFlow Inference
chie8842
1
710
クックパッドにおけるCloud AutoML事例
chie8842
9
7.6k
Cookpad_Internship_MLOps_Lecture_2018
chie8842
35
16k
Other Decks in Technology
See All in Technology
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
190
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
0
130
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
160
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8.2k
ACRiルーム最新情報とAMD GPUサーバーのご紹介
anjn
0
160
技術負債による事業の失敗はなぜ起こるのか / Why do business failures due to technical debt occur?
i35_267
0
190
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
AWSサービスメニュー開発をしていてAWSを好きだ!と感じた瞬間
toru_kubota
0
130
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
エンジニアの生存戦略 〜クラウド潮流の経験から紐解く技術トレンドのメカニズムと乗りこなし方〜
shimy
9
1.9k
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
エンジニア向け会社紹介資料
caddi_eng
14
230k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.8k
Pencils Down: Stop Designing & Start Developing
hursman
118
11k
KATA
mclloyd
20
13k
What the flash - Photography Introduction
edds
65
11k
Optimizing for Happiness
mojombo
373
69k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
34
1.9k
Creatively Recalculating Your Daily Design Routine
revolveconf
214
11k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Docker and Python
trallard
37
2.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
17
1.5k
Raft: Consensus for Rubyists
vanstee
134
6.5k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
Transcript
3FUUZͷੳج൫ʹ͓͚Δ"84׆༻ज़ !DIJF DIJFIBZBTIJEB 1
ࣗݾհ $IJF)BZBTIJEB 5XJUUFS!DIJF (JU)VCDIJF 3FUUZ*OD 4PGUXBSF&OHJOFFS
"84($1ػցֶश1ZUIPO4DBMB$MPKVSF%#WJN মϐΞϊςχεεϊϘ 2
"84 ͱҰ෦($1 Λϑϧ׆༻ͯ͠ ੳج൫ΛظؒͰ ߏஙͨ͠ࣄྫΛհ͠·͢ɻ 3
3FUUZͷσʔλ • ͓ళใ • Ϣʔβใ • ྉཧ໊ใ • ͓ళ৯ͷࣸਅ •
Ϣʔβͷߘจ • ϖʔδͷΞΫηεϩά 4
ੳج൫ߏஙͷഎܠ • 3FUUZೖࣾ マネージャ わたし(⼊社初⽇、 肩書き:データ サイエンティスト) ͱΓ͋͑ͣɺੳج൫ͭͬͯ͘ɻ ϲ݄Ͱʂ ͑ɺੳج൫ʜʁ
5
ͦͦੳج൫ͱʁ • σʔλΛੵɾ׆༻͢ΔͨΊͷج൫ ੳج൫ ! ,1*μογϡϘʔυ ΞυςΫ Ϩίϝϯυ ϩά ϑΝΠϧ
σʔλ ϕʔε 6 " # "#ςετ
ͱͱ͋ͬͨੳج൫ͷ՝ᶃ ˙%8)ͷςʔϒϧઃܭͷ ྫ ΫΤϦ࣮ߦ࣌ʹաେͳαʔό Ϧιʔε͕ඞཁ ετϨʔδ༰ྔඡഭ ੳͮ͠Β͍ ʢΞυϗοΫੳͷʹ ෳࡶͳਖ਼نදݱநग़ʣ •
ෆཁͳϩά͕ϩάશମͷׂ • దͳσʔλܕ͕ΘΕ͍ͯͳ͍ • KTPOΦϒδΣΫτ͕ςΩετܗࣜͰೖ͍ͬͯΔ 7
ͱͱ͋ͬͨੳج൫ͷ՝ᶄ ˙Ϛελσʔλผͷ%#ʹ͋Δ • Ϛελσʔλͱಥ߹ͯ͠ੳ͍ͨ͠߹ ผͷڥʹσʔλΛҠ͢ඞཁ͕͋Δ • KPJO͍ͨ͠ΧϥϜಉ࢜Ͱσʔλܕ͕ҟͳΔ ੳऀ͝ͱʹڥߏங σʔλసૹίετ
8
ͱͱ͋ͬͨੳج൫ͷ՝ᶅ ˙ϩά૿େʹ͏ύϑΥʔϚϯεϘτϧωοΫ • ࣍όον͕ऴΘΒͳ͍ • ؾܰʹΞυϗοΫੳͰ͖ͳ͍ ˠΫΤϦΛ͛Δࡍ4MBDLʹใࠂ͢Δӡ༻ 9
ݱঢ়ཧ • ϩάαΠζɿʹे(#ʢH[KTPOঢ়ଶʣ ˠ͚ͬ͜͏Ͱ͔͍ɻ͜Ε͔Β૿͑Δ • ਖ਼نԽ͞Ε͍ͯͳ͍ϩά – ୯७ͳσʔλసૹਖ਼نදݱநग़Ͱ͢·ͳ͍ – 4FTTJPOJ[F&5-ͰΔ
• αʔϏεଆͷػೳՃʹ͏ཁ݅มߋ͕ ༧͞ΕΔ 10
৽͍͠ੳج൫ʹٻΊΒΕΔͷ • ੳऀʹͱ͍͍ͬͯ͢ – 42-ͦΕʹ४ͣΔΫΤϦݴޠ͕ར༻Ͱ͖Δ – Ϩεϙϯεεϧʔϓοτ • Ճ։ൃɾӡ༻͕͍͢͠ –
ྻมߋ͕ॊೈʹͰ͖Δ – ෳࡶͳ&5-ॲཧʹॊೈʹରԠͰ͖Δ • ίετʢΠχγϟϧϥϯχϯάʣ͕ݱ࣮తͰ͋Δ • εέʔϥϒϧͰ͋Δ – ੳରσʔλͷछྨαΠζ͕૿͑ͯରԠͰ͖Δ Ϋϥυͷྑ͞Λϑϧ׆༻ͨ͠ੳج൫ 11
ͭͬͨ͘ੳج൫ 3FUUZαʔϏεج൫ 3FUUZੳج൫ʢ"84ʣ 3FUUZੳج൫ʢ($1ʣ Kinesis S3 EMR (Spark) S3 EC2
EC2 RDS(MySQL) 分析者 プランナ 12
ͭͬͨ͘ੳج൫ 3FUUZαʔϏεج൫ 3FUUZੳج൫ʢ"84ʣ 3FUUZੳج൫ʢ($1ʣ Kinesis S3 EMR (Spark) S3 EC2
EC2 RDS(MySQL) 分析者 プランナ σʔλϨΠΫ σʔλՃ πʔϧ %8)ɾ%. 13
ੳج൫ߏஙͷϙΠϯτ ظؒͰΘΕΔੳج൫Λߏங͢ΔͨΊʹؾΛ͚ͭͨ ϙΠϯτΛ͝հ͠·͢ɻ 14 ̍ɽతʹ͋ͬͨج൫ίϯϙʔωϯτͷ બఆ ̎ɽॲཧ͢Δσʔλྔͷ૿ՃΛߟྀͨ͠
ઃܭ ̏ɽϫʔΫϑϩʔͷཧ ̐ɽظؒͰ͑͘Δੳج൫Λ࡞Δ ߏஙͷਐΊํ
తʹ͋ͬͨج൫ίϯϙʔωϯτ ͷબఆ 15
ੳج൫ͷׂ 16 σʔλϨΠΫ %8) σʔλͷऩूɾ ੵॴ %. ΞυϗοΫੳ ༻σʔλϕʔε తผʹՃɾू
͞Εͨσʔλϕʔε Γ͍ͨ͜ͱ͕ҧ͏ͷͰඞཁͳཁ݅ҧ͏ɻ ҰՕॴͰҰʹΖ͏ͱ͠ͳ͍ɻ ͦΕͧΕͷཁ݅ʹ͋ͬͨίϯϙʔωοτΛར༻ ॲཧΛ͚Δ
3FUUZͰͷߏ 17 σʔλϨΠΫ 4 %8)%. #JH2VFSZ
σʔλϨΠΫɿ4 • ඇߏԽσʔλͷอଘ • ֦ுੑɾٱੑ͕୲อ͞ΕΔ • αʔϏεͷಈ͍͍ͯΔॴͱಉ͡ϦʔδϣϯʹσʔλΛ อ͍࣋ͨ͠ ߹ʹΑͬͯόοΫΞοϓɺࠪϩάɺকདྷతͳ σʔλϏδωεͷཁ݅ߟྀ
– ωοτϫʔΫసૹίετ – ཧ͢͠͞ • ಉ͡όέοτͰϓϨϑΟοΫελάΛར༻ͨ͠ॊ ೈͳϥΠϑαΠΫϧͷӡ༻ • ,JOFTJT'JSFIPTFΛར༻͢Δ͜ͱͰ͔ΜͨΜʹ࣌͝ͱʹ σΟϨΫτϦΛ͚ͯอଘͰ͖Δ 18
%8)ɾ%.ɿ#JH2VFSZ • ੳऀʹͱ͍͍ͬͯ͢ – 4UBOEBSE42-͕ར༻Ͱ͖Δ – 6%'8JOEPXؔ͑Δ – εϓϨουγʔτQBOEBTEBUBGSBNFͱͷ࿈ܞ •
ޙͷςʔϒϧઃܭมߋ͕͍͢͠ – ςʔϒϧͷྻՃ͕Ͱ͖Δ • ҆ఆͨ͠ϨΠςϯγͱεϧʔϓοτ • ϝϯςφϯεϑϦʔ • ࣌ؒ՝ۚͰͳ͘ΫΤϦ՝ۚ • σϝϦοτɿ3FE4IJGU"UIFOBΛ͏߹ͱൺͯɺ "84͔Β($1ͷσʔλసૹίετ͕͔͔Δ 19
ॲཧ͢Δσʔλྔͷ૿ՃΛ ߟྀͨ͠ઃܭ 20
αʔϏε֦େʹ͏σʔλྔ૿Ճ • 3FUUZͷ߹ 21 ݄ສ66 ݄ສ66
Ͱഒɻࠓޙ૿͑ଓ͚Δɻ ࠷ॳ͔Βεέʔϥϒϧͳઃܭʹ͓ͯ͘͠ ඞཁ͕͋Δɻ
σʔλྔ૿ՃͰؾʹ͖͢ϙΠϯτ • σʔλੵ༰ྔ – 4ɺ#JH2VFSZΛ࠾༻͢Δ͜ͱͰΫϦΞ • &5-ॲཧ – σʔλ͕૿͑ͯಉ͡ΞʔΩςΫνϟͰॲཧՄೳ͔ –
ॲཧ͕࣌ؒݱ࣮త͔ • σʔλసૹ – σʔλ͕૿͑ͯಉ͡ΞʔΩςΫνϟͰॲཧՄೳ͔ – ॲཧ͕࣌ؒݱ࣮త͔ – సૹίετ͕ڐ༰ൣғ͔ 22
&5-͔&-5͔ʁ &5-ɿ&YUSBDUˠ5SBOTGPSNˠ-PBE – σʔλΛܗ͔ͯ͠Β%8)ʹϩʔυ͢Δ &-5ɿ&YUSBDUˠ-PBEˠ5SBOTGPSN – σʔλΛ%8)ʹϩʔυ͔ͯ͠Β%8)্ͰσʔλΛܗ͢Δ 23 • 3FUUZͷ߹
– ෆཁͳϩάग़ྗ͕શମͷׂΛΊΔͨΊɺωοτϫʔΫ సૹྔΛߟྀͯ͠%8)ʹೖΕΔલʹϑΟϧλ͍ͨ͠ – 42-Ͱදݱͮ͠Β͍ෳࡶͳ&5-ॲཧΛߦ͍͍ͨ ˠ%8)ʹೖΕΔલʹσʔλܗɻ ʢͨͩ͠42-ͰॲཧͰ͖Δͷ#JH2VFSZ্Ͱॲཧʣ
&5-ॲཧɿ&.3 ˙&.3 • ϩά͕૿େͯ͠ΫϥελΛ૿͢͜ͱͰ εέʔϧͰ͖Δ • Ϋϥελڥߏங͕ෆཁ • (BOHMJB;FQQFMJOʹΑΔϦιʔεࢹϊʔτ ϒοΫ։ൃ͕ศར
• ౦ژϦʔδϣϯͰ͑Δ σʔλՃᶃʢ4QBSLʣ 24 σʔλՃ ᶄʢ42-ʣ
&5-ॲཧɿ&.3 4QBSL ˙4QBSL • 42-Ͱදݱͮ͠Β͍ඇߏԽσʔλʹର͢Δ ෳࡶͳ&5-ॲཧ – ࣌ܥྻσʔλͷ4FTTJPOJ[FͳͲ • ੳऀʹೃછΈਂ͍1ZUIPOͰॲཧ͕هड़Ͱ͖Δ
• 42-ͱҟͳΓϞδϡʔϧʹ͚ͯςετ͕Ͱ͖Δ ˞4QBSLͷৄࡉ1Z$PO+1ͷൃදࢿྉࢀর σʔλՃᶃʢ4QBSLʣ 25 σʔλՃ ᶄʢ42-ʣ
σʔλྔ૿ՃͰؾʹ͖͢ϙΠϯτ • σʔλੵ༰ྔ – 4ɺ#JH2VFSZΛ࠾༻͢Δ͜ͱͰΫϦΞ • &5-ॲཧ – σʔλ͕૿͑ͯಉ͡ΞʔΩςΫνϟͰॲཧՄೳ͔ –
ॲཧ͕࣌ؒݱ࣮త͔ • σʔλసૹ – σʔλ͕૿͑ͯಉ͡ΞʔΩςΫνϟͰॲཧՄೳ͔ – ॲཧ͕࣌ؒݱ࣮త͔ – సૹίετ͕ڐ༰ൣғ͔ 26
σʔλసૹɿ&NCVML • ZBNMϑΝΠϧͰσʔλసૹͷઃఆΛཧ • ϓϥάΠϯʹΑ༷ͬͯʑͳσʔλιʔεؒͷ σʔλసૹ͕Մೳ • &NCVML্Ͱ͋ΔఔͷσʔλͷՃՄೳ • σʔλͷฒྻΛ্͛Δ͜ͱͰσʔλసૹޮ
Λ্Ͱ͖Δ – ͨͩ͠సૹσʔλྔ͕ଟ͍ͷʹؔͯ͠Τϥʔ͕ සൃ͍ͯ͠Ζ͍Ζνϡʔχϯά͕ඞཁͩͬͨɻ 27
ϫʔΫϑϩʔͷཧ 28
ϫʔΫϑϩʔͷಋೖ &NCVMLɺ&.3ɺ1ZUIPOͳͲ߹ΘͤΔͱΛ͑ΔλεΫ ˠґଘؔͷ֬ೝΤϥʔ࣌ͷղੳͷͨΊͷϫʔΫϑϩʔ ΤϯδϯΛಋೖɻ ϫʔΫϑϩʔΤϯδϯʹҎԼͳͲ͕͋Δ • NBLFpMF • EJHEBH
• "JSqPX • -VJHJ ࠓճɺ7JTVBMJ[BUJPOͱ1ZUIPOͰ͔͚Δͱ͍͏؍͔Β "JSqPXΛબΜͩ 29
"JSqPXͷར༻ • 1ZUIPOͰ͔͚Δ • 7JTVBMJ[BUJPO͕༏Ε͍ͯΔ – ॲཧͷґଘ͕ؔΘ͔Γ͍͢ – ຖɺλεΫ͝ͱͷॲཧ͕࣌ؒݟ͑Δ ˞HJUIVCͷ"JSqPXͷϖʔδʹྫ͕͋ͬͯΘ͔Γ͍͢
• Τϥʔ࣌ͷϦτϥΠͷ੍ޚ • ॲཧ݁ՌΛ4MBDLͰ௨ 30
ظؒͰ͑͘Δੳ ج൫Λ࡞ΔߏஙͷਐΊํ 31
ੳج൫͋Δ͋Δ • ࡞ͬͯΈ͚ͨͲΘΕͳ͍ – ཁ݅ͱ߹Θͳ͍ – εέʔϧͰ͖ͣ࡞Γ͠ – ͳΜ͔͍ʹ͍͘ •
ӡ༻͕ΊΜͲ͍͘͞ • ਵ࣌ͷཁ݅มߋʹ͑ΒΕͳ͍ 32 ҰਓͰ๊͑ࠐΉͱ͍ͨΜͳ͜ͱʹɻ
ੳج൫ߏஙͷਐΊํᶃ • ૣ͘࡞ͬͯ͑͘ͳ͍ͷΛ࡞ͬͯҙຯ͕ͳ͍ • %8)ͷ߹ɺج൫෦ʮ࡞ͬͯյͯ͠ʯ͕؆୯ʹ ͢·ͳ͍ɻ • ج൫෦৻ॏʹܾΊͨ 5⽉ 6⽉
ཁ݅ώΞϦϯάɺɾٕज़બఆɺ1P$ &5-εΫϦϓτ࡞ɾ ڥߏங ͬͪ͜ʹ͔͚࣌ؒͨɻ ͪΌΜͱΘΕΔੳج൫͕Ͱ͖ͨʂ 33
ੳج൫ߏஙͷਐΊํᶄ • ੳऀ͕ࣗ͋Δఔӡ༻Ͱ͖ΔΑ͏ʹ͢Δ – ϑϧϚωʔδυαʔϏεΛ͏ – &NCVMLͷઃఆϑΝΠϧੳऀ͕ࣗͰՃɻ Ճ͞ΕͨΒࣗಈͰ"JSqPXδϣϒʹऔΓࠐ·ΕΔ Α͏ʹ͢Δ –
4QBSLʹΑΔਖ਼نදݱநग़ͷ݅มߋɺઃఆ༻ͷ ςΩετϑΝΠϧͷରߦΛมߋ͢Δ͚ͩ – Τϥʔൃੜ࣌#BDLMPHͰϨϙʔτͯ͠*TTVFཧɻ ؆୯ͳΤϥʔؾ͍ͮͨਓ͕͢ɻ 34
ظؒͰ࡞ΔͨΊʹޙճ͠ʹͨ͠ͷ ҎԼʹؔͯ͠ɺ࠷ॳͷϲ݄༏ઌΛԼ͛ͨɻ • $*ɾςετͷ࣮ • υΩϡϝϯςʔγϣϯ ͱʹ͔͘ಈ͘ͷΛݟͤΔ͜ͱ༏ઌɻ ʢ্هΛ୲อͯ͠ΘΕͳ͔ͬͨΒҙຯ͕ͳ͍ͷͰɺҰ ୴ӡ༻ʹͤͯΈ͔ͯΒͪΌΜͱ͢Δํʹͨ͠ɻʣ
όά͕͋Δ߹͋ͱ͔Βͳ͓ͤΔͭ͘Γʹͳ͍ͬͯΕ Α͍ 35
ੳͷͨΊʹʢۤ࿑ʣͨ͜͠ͱ ͷҰ෦ • ,JOFTJT'JSFIPTFʮσʔλൃੜ࣌ࠁʯͰͳ͘ʮσʔλ౸ ண࣌ࠁʯͰσΟϨΫτϦ͕͔ΕΔɻ લͷσʔλΛੳ͠Α͏ͱ͢Δͱɺσʔλ͕Γͳ ͍͜ͱʹͳΔ ˠ&.3Ͱͷ&5-Ͱʮσʔλൃੜ࣌ࠁʯΛ͏Α͏ʹɻ •
#JH2VFSZEBUFϑΥʔϚοτ(.5ͷΈɻ ɹˠ&5-Ͱ࣌ؒޙͷ࣌ࠁͷΧϥϜ࡞ • σʔλϕʔε͔Βऔಘ͢ΔςʔϒϧͱϩάςʔϒϧͷΧ ϥϜͷܕΛ͋ΘͤΔ • (PPHMF"OBMZUJDTʹ͋Θͤͯ66*%ͱ4FTTJPO*%Λ&5-Ͱ ༩ 36
͍͞͝ʹ • "84ʢͱ($1ʣΛϑϧ׆༻͢Δͱੳج൫ΛظؒͰ ࡞ΕΔʂ – Ͱ̍ਓͰΔͷͭΒ͔ͬͨɻ৭ΜͳҙຯͰɻ • ੳج൫ͷߏஙͷϙΠϯτͱͯ͠ɺҎԼΛհͨ͠ɻ – తʹ͋ͬͨج൫ίϯϙʔωϯτͷબఆ
– ॲཧ͢Δσʔλྔͷ૿ՃΛߟྀͨ͠ઃܭ – ϫʔΫϑϩʔͷཧ – ظؒͰ͑͘Δੳج൫Λ࡞ΔߏஙͷਐΊํ 37
༻ޠ • σʔλϨΠΫ – ՃલͷੜϩάΛอଘ͢Δॴ • %8) – ੳ͍͢͠Α͏ʹՃ͞ΕͨσʔλΛ֨ೲ͢Δσʔλϕʔε •
%. – ੳ༻్ʹԠͯ͡ूܭޙͷσʔλͳͲΛ֨ೲ͢ΔͳͲɺαϯυ ϘοΫεతʹ͔ͭ͏ͨΊͷσʔλϕʔε • σʔλՃπʔϧ – ϩάΛੳ͍͢͠ܗʹܗ͢Δπʔϧ • ϫʔΫϑϩʔΤϯδϯ – Ұ࿈ͷσʔλॲཧͷϑϩʔΛཧ͢Δπʔϧ 38