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
AirflowからKuroko2に乗り換えたわけ
Search
hatappi
May 16, 2017
Technology
0
870
AirflowからKuroko2に乗り換えたわけ
Tokyo Airflow Meetup #1
hatappi
May 16, 2017
Tweet
Share
More Decks by hatappi
See All by hatappi
Cloudflare を活用して変わったメルカリの開発体験 / How Cloudflare Changed Mercari's Development Experience
hatappi
1
650
RubyではじめるGraphQL
hatappi
0
860
RubyでChainerつくってます!!
hatappi
2
1.4k
TDDな個人開発
hatappi
0
310
できるだけ楽して楽しくRails開発しよう
hatappi
2
330
EKSにRailsをのせた
hatappi
1
1.2k
RubyとApache Arrow
hatappi
0
2.4k
Red Chainerを なぜ作って今後どうするのか
hatappi
2
2.4k
Fargateで夢は見られるのか
hatappi
1
2.2k
Other Decks in Technology
See All in Technology
ユーザー課題を愛し抜く――AI時代のPdM価値
kakehashi
PRO
1
120
リモートワークで心掛けていること 〜AI活用編〜
naoki85
0
150
Nx × AI によるモノレポ活用 〜コードジェネレーター編〜
puku0x
0
580
【新卒研修資料】数理最適化 / Mathematical Optimization
brainpadpr
27
13k
S3 Glacier のデータを Athena からクエリしようとしたらどうなるのか/try-to-query-s3-glacier-from-athena
emiki
0
220
OPENLOGI Company Profile for engineer
hr01
1
38k
「AIと一緒にやる」が当たり前になるまでの奮闘記
kakehashi
PRO
3
150
Kiroでインフラ要件定義~テスト を実施してみた
nagisa53
3
360
Amazon GuardDuty での脅威検出:脅威検出の実例から学ぶ
kintotechdev
0
110
バクラクによるコーポレート業務の自動運転 #BetAIDay
layerx
PRO
1
950
生成AIによるデータサイエンスの変革
taka_aki
0
3k
ZOZOTOWNの大規模マーケティングメール配信を支えるアーキテクチャ
zozotech
PRO
0
350
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Scaling GitHub
holman
461
140k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
Side Projects
sachag
455
43k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Why Our Code Smells
bkeepers
PRO
337
57k
Adopting Sorbet at Scale
ufuk
77
9.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
Unsuck your backbone
ammeep
671
58k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Transcript
Airflow͔ΒKuroko2 ʹΓ͑ͨΘ͚ by hatappi @Tokyo Airflow Meetup #1 1
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 2
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 3
ࣗݾհ • ໊લ: ാத༔࡞ • ID: hatappi • ձࣾ: גࣜձࣾSpeee
• ͍ͬͯΔ͜ͱ • UZOU • Angular + RailsͰ࡞͢Δސ٬ཧγεςϜ 4
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 5
AirflowΛ͍ΕΔલ 6 ఆظతʹόονΛ࣮ߦ͍ͨ͠ cronΛ͑Ͱ͖ΔͶ
cronӡ༻Ͱى͖ͨ͜ͱ • ͳ͔ͥࢦఆͨ࣌ؒ͠ʹىಈ͠ͳ͍ • ࣮ߦݖݶʁ࣌ؒʁcrondىಈͯ͠Δ? • ࣮ߦϑΝΠϧͰϩάग़ͯ͠ͳ͍͔ΒԿ͕ى͖͔ͨݪ Ҽ͕͔Βͳ͍ 7
Γ͍ͨ͜ͱΛཧ 8 ఆظ࣮ߦ λεΫͷؔ࿈ੑ ࣮ߦঢ়ଶͷ֬ೝ EngҎ֎ͰϦτϥΠ
9 Airflowͷ࠾༻
Airflowͱ? • ϫʔΫϑϩʔϚωδϝϯτγεςϜ • OpenAir 2015ͰAirbnb͕ࣾࣗࣾͰ։ൃ͍ͯͨ͠ ͷΛΦʔϓϯιʔεԽͱൃද • ݱࡏApache IncubatorͷΦʔϓϯιʔεϓϩ
δΣΫτ 10
11 DAG TASK
Airflowͷ࠾༻ • ৄ͘͠ϒϩά • http://tech.speee.jp/entry/2016/07/07/050000 12
13 ॻ͍ͯͳ͍
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 14
ྑ͔ͬͨ͜ͱ • λεΫͷґଘ͕ؔՄࢹԽ͞Εɺ࣮ߦ͞Ε͍ͯΔ࣌ Ͳ͜·ͰऴΘ͍ͬͯΔͷ͔͔Δ 15
ྑ͔ͬͨ͜ͱ • ϩάඪ४ग़ྗ, ඪ४Τϥʔग़ྗΛग़ྗͯ͘͠ΕΔ ͷͰԿ͔ஔ͖ͨͱ͖ʹσόοά͘͢͠ͳͬͨ 16
ྑ͔ͬͨ͜ͱ • ϓϩάϥϜΛमਖ਼Λඞཁͱ͠ͳ͍ݶΓ࠶࣮ߦEng Ҏ֎Ͱग़དྷΔΑ͏ʹ 17
͓͖ͨ • ϩάΠϯػೳ • UTC • DAGͷฤू • DAGϑΝΠϧͷංେԽ 18
ϩάΠϯػೳ • σϑΥϧτͰFalseͳͷͰઃఆ͕ඞཁ • http://qiita.com/hatappi/items/ 1b8a3a2d1f4b01c844ef 19
UTC • ͜Ε͍࣮ͭߦ͞ΕΔͰ͠ΐ͏͔ 20
21 Airflow͕ಈ͍͍ͯΔϚγ ϯͷλΠϜκʔϯʹΑΔ
Ϛγϯ͕JSTͷ࣌ • JSTͰ10:00ʹ࣮ߦ͞ΕΔͷͰը໘্ͷUTCදهͰ 1:00ʹ࣮ߦ͞ΕΔ • ը໘ͰݟΔ࣌ຖճ+9࣌ؒ͠ͳ͍ͱ͍͚ͳ͍͆ 22
ແ༻ͷUTC • UTCʹͳΔΑ͏ʹϋʔυίʔσΟϯά͞Ε͍ͯΔ • ৄ͘͠ • http://qiita.com/hatappi/items/2a4d41ca14746a3c98a6 23
DAGͷฤू • ৽نՃɺฤूίϚϯυϥΠϯ্͔Βߦ͏ • ੲຊޠίϝϯτ͕ग़དྷͳ͔ͬͨΑ͏͕ͩv1.8.0 Ͱ֬ೝͨ͠ͱ͜Ζग़དྷͨ 24
DAGϑΝΠϧͷංେԽ • PythonͰఆٛ͢ΔͷͰAPI௨৴ͰԿͰग़དྷΔ • ϩδοΫλεΫεΫϦϓτʹఆٛͯ͠DAGʹ λεΫͷґଘؔεέδϡʔϧʹઐ೦ͤ͞Δ ͖ͩͬͨ 25
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 26
Kuroko2ͱ • cookpadͷδϣϒཧπʔϧ • RailsʹͷͤΔܗͰ༻͢Δ • ϩάΠϯGoogleOAuthೝূ͕͍͍ͭͯΔ • ࣌ࠁRailsͷઃఆ͕ө͞ΕΔ •
ϒϥβ্͔Β৽نՃɺฤू͕ग़དྷΔ 27
ॻ͖׳ΕͨݴޠͰ͋Δ͜ͱ • ࣾͷϝΠϯݴޠ͕RubyͳͷͰ৽͍͠ํ͕ೖͬͯ ཧղ͍͢͠ • ίʔυRubyͰ͔͔Ε͍ͯΔͷͰίʔυಡΊΔ ͠ͳ͓ͤΔ • ΄͍͠ػೳ͕͋ΕࣗͰ։ൃग़དྷΔ •
https://github.com/hatappi/kuroko2_read_only 28
࣍ • ࣗݾհ • AirflowͷಋೖܦҢ • AirflowΛӡ༻ͯ͠Έͯ • Kuroko2Λͳ͍ͥ͡Ίͨͷ͔ •
·ͱΊ 29
·ͱΊ • AirflowͰKuroko2Ͱࣗͷతʹ͋ͬͨͷ Λ༻͢Δͱྑͦ͞͏Ͱ͢ • OSSͳͷͰԿ͔͋Εcommit͘Β͍ͷؾ࣋ͪ • DAGઈରʹංେԽͤ͞ͳ͍ʂ 30
31 ͓ΘΓ