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
800
AirflowからKuroko2に乗り換えたわけ
Tokyo Airflow Meetup #1
hatappi
May 16, 2017
Tweet
Share
More Decks by hatappi
See All by hatappi
RubyではじめるGraphQL
hatappi
0
810
RubyでChainerつくってます!!
hatappi
2
1.4k
TDDな個人開発
hatappi
0
280
できるだけ楽して楽しくRails開発しよう
hatappi
2
310
EKSにRailsをのせた
hatappi
1
1.1k
RubyとApache Arrow
hatappi
0
2.3k
Red Chainerを なぜ作って今後どうするのか
hatappi
2
2.3k
Fargateで夢は見られるのか
hatappi
1
2.1k
個人サービスをFargateに移行したよ
hatappi
1
640
Other Decks in Technology
See All in Technology
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
120
2025/3/1 公共交通オープンデータデイ2025
morohoshi
0
100
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
230
急成長する企業で作った、エンジニアが輝ける制度/ 20250227 Rinto Ikenoue
shift_evolve
0
180
ウォンテッドリーのデータパイプラインを支える ETL のための analytics, rds-exporter / analytics, rds-exporter for ETL to support Wantedly's data pipeline
unblee
0
140
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.9k
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
540
リクルートのエンジニア組織を下支えする 新卒の育成の仕組み
recruitengineers
PRO
1
140
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.8k
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
280
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
280
クラウド食堂とは?
hiyanger
0
120
Featured
See All Featured
How to Ace a Technical Interview
jacobian
276
23k
GraphQLとの向き合い方2022年版
quramy
44
14k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
A Tale of Four Properties
chriscoyier
158
23k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
440
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Code Reviewing Like a Champion
maltzj
521
39k
Making Projects Easy
brettharned
116
6k
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 ͓ΘΓ