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
AWS Step FunctionsとAmazon MWAA両方使ったので比較してみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
武田隆志
July 25, 2022
Technology
4.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS Step FunctionsとAmazon MWAA両方使ったので比較してみた
Classmethod主催のイベント、DevelopersIO 2022の登壇資料です。
武田隆志
July 25, 2022
More Decks by 武田隆志
See All by 武田隆志
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
19
12k
claspではじめるサーバーレス開発 Google Apps Scriptで簡単自動化
takedatakashi
2
2k
Other Decks in Technology
See All in Technology
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
0
140
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
590
どうして今サーバーサイドKotlinを選択したのか
nealle
0
190
4人目のSREはAgent
tanimuyk
0
370
AIで政治は変わるのか? — 中高生と考えたAI時代の民主主義(東海高校サタデープログラム)
eitarosuda
0
370
感情と身体を置き去りにしない、エンジニアの生きのこり方 ──いまから、ここから「自分の状態」を扱うという選択
saorimurooka
1
460
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
260
Kotlin 開発のツラミを爆破した話! / Explode the difficulty of Kotlin dev!
eller86
0
140
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
240
作る力から、見極める力へ — AI時代に広がるエンジニアの価値と役割
rince
0
400
RAGの精度向上とエージェント活用
kintotechdev
2
120
スタートアップにおけるアジャイルの実践について #shibuyagile
murabayashi
3
2k
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
KATA
mclloyd
PRO
35
15k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
Claude Code のすすめ
schroneko
67
230k
Music & Morning Musume
bryan
47
7.3k
A Tale of Four Properties
chriscoyier
163
24k
Deep Space Network (abreviated)
tonyrice
0
220
Crafting Experiences
bethany
1
200
The World Runs on Bad Software
bkeepers
PRO
72
12k
My Coaching Mixtape
mlcsv
0
160
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Transcript
"84ࣄۀຊ෦αʔϏε෦ాོࢤ "844UFQ'VODUJPOTͱ"NB[PO.8"" ྆ํͬͨͷͰൺֱͯ͠Έͨ
ఆࢀՃऀ w όονγεςϜΛӡ༻͓ͯ͠Γ"84ͰͷϦϓϨʔε Λݕ౼͍ͯ͠Δ w όονγεςϜΛ৽͘͠ߏங͢Δʹ͋ͨΓใΛूΊ ͍ͯΔ w "844UFQ'VODUJPOT·ͨ"NB[PO.8""Λ
༻͓ͯ͠Γɺ͏ยํͷαʔϏε͕ͲΜͳͷ͔ Γ͍ͨ
આ໌͢Δ͜ͱ͠ͳ͍͜ͱ આ໌͢Δ͜ͱ w 4UFQ'VODUJPOT͓Αͼ.8""ͷ֓ཁͱಛ w ͦΕͧΕͷ͖ɾෆ͖͓Αͼͦͷൺֱ આ໌͠ͳ͍͜ͱ w όονγεςϜͷجຊతͳ͜ͱ
w 71$ͳͲ"84ͷجຊతͳ͜ͱ
ࣗݾհ ాོࢤ "84ࣄۀຊ෦αʔϏε෦ "84ΞΧϯτϝϯςφϯεγεςϜ ϝʔϧ৴γεςϜ
ΞδΣϯμ 4UFQ'VODUJPOTͷ֓ཁͱಛ .8""ͷ֓ཁͱಛ 4UFQ'VODUJPOTͱ.8""ͷൺֱ ·ͱΊ
Step Functionsͷ֓ཁͱಛ
4UFQ'VODUJPOTͷ֓ཁ ࢄΞϓϦέʔγϣϯΛߏங͢ΔͨΊͷϏδϡΞϧϫʔ ΫϑϩʔαʔϏε %ZOBNP%#4BHF.BLFSͳͲҎ্ͷ"84αʔ Ϗεͱ౷߹͞Ε͓ͯΓϩʔίʔυͰߏஙͰ͖Δ 4UBOEBSEͱ&YQSFTTͷछྨͷϫʔΫϑϩʔΛఏڙ͠ ͓ͯΓϢʔεέʔεʹԠ͍͚ͯ͡ΒΕΔ
4UFQ'VODUJPOTεςʔτϚγϯͷྫ
4UFQ'VODUJPOTͷϝϦοτɾσϝϦοτ ϝϦοτ w αʔόʔϨε w ࣄલͷϓϩϏδϣχϯάෆཁɻར༻͚ͨͩ͠ࢧ͍ w ߴύϑΥʔϚϯε w
ঢ়ଶભҠ͕ଟͯ͘εϜʔζʹਐΈɺฒྻλεΫԆͳ͘ॲཧ͞ ΕΔ
4UFQ'VODUJPOTͷϝϦοτɾσϝϦοτ ϝϦοτ w 8PSL fl PX4UVEJP͕ఏڙ͞ΕɺϏδϡΞϧπʔϧͰϫʔΫ ϑϩʔߏங͕Ͱ͖Δ w υϥοάˍυϩοϓͳͲʹΑΔײతͳૢ࡞ͰߏஙՄೳ
w ӡ༻ํ๏ʹ͍ͭͯߟྀ͕ඞཁʢ*B$ཧͳͲʣ
4UFQ'VODUJPOTͷϝϦοτɾσϝϦοτ σϝϦοτ w λεΫ୯ҐͰͷ࠶࣮ߦෆՄ w ࠶࣮ߦεςʔτϚγϯશମ w ॲཧͪXBJUMPPQΛεςʔτϚγϯϨϕϧͰࣗલఆٛ w
-BNCEBؔͳͲͰXBJUΛ࣮ͯ͠͠·͏ͱػ࣌ؒʹରͯ͠ར༻ අ͕͔͔Δ
4UFQ'VODUJPOTͷϝϦοτɾσϝϦοτ σϝϦοτ w $IPJDFεςʔτͰذͰ͖Δ͕ෳࡶͳ݅ࢦఆͰ͖ͳ͍ w ෳࡶͳͷ-BNCEBؔͳͲͰ݅Λܭࢉͤ͞Δ
ͦͷଞԡ͓͖͍͑ͯͨ͞ϙΠϯτ w ࣮ߦཤྺʹϋʔυϦϛοτ͋Γ w ΤϯτϦ্͕ݶɻ͑ΔͱΤϥʔʹͳΔ w λεΫ͕ΤϥʔʹͳΔͱશମ͕ఀࢭ͢Δʢ࣮ߦதͷλ εΫΩϟϯηϧ͞ΕΔʣ
w ࣮ߦཤྺͷอ࣋ؒ w ͦΕҎ্$MPVE8BUDI-PHT࿈ܞΛ༗ޮԽ͢Δ
MWAAͷ֓ཁͱಛ
.8""ͷ֓ཁ ΦʔϓϯιʔειϑτΣΞ"QBDIF"JS fl PXͷ"84Ϛ ωʔδυαʔϏεɻਖ਼໊ࣜশ"NB[PO.BOBHFE 8PSL fl PXTGPS"QBDIF"JS fl
PX 1ZUIPOεΫϦϓτͰϫʔΫϑϩʔΛఆٛ͠εέδϡʔ ϧཧɺࢹͳͲΛߦ͑Δ "UIFOB&.3ͳͲͷ"84αʔϏεͱ౷߹͞Ε͓ͯ ΓɺଞͷΫϥυϓϥοτϑΥʔϜͷαʔϏεར༻Մ ೳ
.8""%"(ͷྫ
.8""ͷϝϦοτɾσϝϦοτ ϝϦοτ w "JS fl PXͷࢿ࢈͓Αͼ։ൃɾӡ༻ܦݧΛੜ͔ͤΔ w طଘͷίϯϙʔωϯτ࠶ར༻ΦϯϓϨ͔ΒͷҠߦͳͲ w
*".ͱ౷߹͞Εͨཧը໘ w %"(ͷ࣮ߦཧΛ͢Δ8FC6*͕ఏڙ͞ΕΔ
.8""ͷϝϦοτɾσϝϦοτ ϝϦοτ w λεΫ୯Ґͷ࠶࣮ߦ͕Մೳ w λεΫ͕ॏ͍%"(ͳͲͰશମΛ࠶࣮ߦ͢Δඞཁ͕ͳ͍ w طଘͷ.8""ڥ͕͋ΔͳΒ΄΅ίετͰόονΛՃ Ͱ͖Δ
.8""ͷϝϦοτɾσϝϦοτ σϝϦοτ w %"(શମͷੑೳߴ͘ͳ͍ w λεΫͷঢ়ଶભҠʹ͕͔͔࣌ؒΓɺͬ͞Γͨ͠ಈ͖ʹݟ͑Δ w େྔͷ%"(Λಉ࣌ىಈ͢ΔͱΩϡʔ͕٧·Δ w
ΩϡʔͷλεΫΛεέδϡʔϥ͕࣍ʑࡹ͘Θ͚Ͱͳ͍ͷͰ٧·Δ
.8""ͷϝϦοτɾσϝϦοτ σϝϦοτ w %"(ϨϕϧͰͷϧʔϓఆٛෆՄ w "JS fl PXͷϫʔΫϑϩʔ%"(ʢ༗ඇ८ճάϥϑʣͷͨΊఆٛͰ ͖ͳ͍
ͦͷଞԡ͓͖͍͑ͯͨ͞ϙΠϯτ w 1ZUIPOͷόʔδϣϯݻఆ w .8""WͰ1ZUIPO w ϥΠϒϥϦΞοϓσʔτՄೳ w %"(ͷࣦഊ௨ͳͲ%"(ࣗମʹΈࠐΉ
w ηϧϑϗετʹର੍ͯ͠ݶ͕͋Δ
Step FunctionsͱMWAAͷൺֱ
4UFQ'VODUJPOTͱ.8""ͷରൺ 4UFQ'VODUJPOT .8"" ΞʔΩςΫνϟλΠϓ αʔόʔϨε Ϛωʔδυ ΦʔτεέʔϦϯάʢϫʔΧʔʣ ࠶࣮ߦ୯Ґ
ϫʔΫϑϩʔ λεΫ λεΫͷཻ ࡉ͔͍ େ͖͍ ϫʔΫϑϩʔఆٛ "NB[PO4UBUFT-BOHVBHFʢ"4-ʣ +40/:".- 1ZUIPO "84౷߹ "844%,౷߹ -BNCEBͳͲ 4%, "NB[POϓϩόΠμʔ 0QFSBUPS CPUP ίϯϐϡʔςΟϯάͳ λεΫఆٛ -BNCEB&$4ͳͲͰ࣮ ϫʔΧʔ্Ͱ࣮ߦ͞ΕΔॲཧΛ 0QFSBUPSͱ࣮ͯ͠ &$4ͳͲΦϑϩʔυՄೳ
ྉۚͷൺֱ w .8""໌ࣔతʹڥΛఫڈ͠ͳ͍ݶΓྉۚൃੜ ͠ଓ͚ɺ࠷খڥͰ݄͘Β͍ൃੜ͢Δ w 4UFQ'VODUJPOTঢ়ଶભҠ͋ͨΓ w
ճʹ૬ w ࣮ߦ͋ͨΓฏۉભҠͱ͢Δͱ ࣮ߦʹ૬
࠶࣮ߦ୯Ґͷൺֱ w 4UFQ'VODUJPOTεςʔτϚγϯ୯ҐͰ࠶࣮ߦ w ॏ͍λεΫ͕͋ΔͱͦΕ࠶࣮ߦ͢ΔͨΊޮѱ͍ w .8""λεΫ୯ҐͰ࠶࣮ߦ w ࠶࣮ߦͷͨͼʹ݁Ռߋ৽͞ΕΔͨΊ։ൃ࣌ͳͲศར
w Լྲྀ·ͱΊͯ࠶࣮ߦ͢Δ͜ͱͰ%"(શମͷ࠶࣮ߦ͕Մೳ
λεΫཻͷൺֱ w 4UFQ'VODUJPOTͰλεΫͷཻࡉ͔͘ w ঢ়ଶભҠʹʢ࣌ؒతͳʣίετ͕͔͔Βͳ͍ w ͚͓ͯ͘͜ͱͰݸผʹνϡʔχϯάՄೳ w .8""ͰλεΫͷཻେ͖͘
w ཻΛେ͖ͯ͘͠ঢ়ଶભҠΛݮΒ͢ w ࠶࣮ߦ͍ͨ͠୯Ґ͕҆
ϫʔΫϑϩʔఆٛͷൺֱ w "4-Ͱදݱͷݶք͋Δ w $IPJDFεςʔτͷ݅ذʹෳࡶͳࣜΛॻ͚ͳ͍ w ྫɿʮύϥϝʔλʔͷྻʹ"ؚ͕·Ε͍ͯΔ͔ʯͱ͔ແཧ w ݅ܭࢉ༻ͷ-BNCEBؔΛՃͳͲ͢Δ
w .8""1VSF1ZUIPO w #SBODI1ZUIPO0QFSBUPSͳͲͰ͖ʹϩδοΫΛॻ͚Δ
ϫʔΫϑϩʔఆٛͷൺֱ w 4UFQ'VODUJPOTͰಈతͳ.BQεςʔτ͕αϙʔ τ͞ΕΔ w ྻͷೖྗʹରͯ͠ฒྻʹ࣮ߦͰ͖Δ w .8""Ͱಈతͳ.BQະαϙʔτ w
"JS fl PXWͰ࣮͞Ε͕ͨɺ.8""͕࠷৽
"84౷߹ͷൺֱ w 4UFQ'VODUJPOTͰ4%,౷߹͞Ε͍ͯΔαʔϏε "4-Ͱఆٛ͢Δ͚ͩ w ౷߹͞Ε͍ͯͳ͍αʔϏε-BNCEB&$4ͳͲͰݺͼग़ ͢ॲཧΛࣗલ࣮͢Δ w .8""Ͱ"NB[POϓϩόΠμʔͱͯ͠ఏڙ͞Ε͍ͯ
ΔαʔϏε0QFSBUPSΛݺͼग़͚ͩ͢ w ఏڙ͞Ε͍ͯͳ͍αʔϏε0QFSBUPSΛࣗલ࣮͢Δ
ػॲཧͷൺֱ w 4UFQ'VODUJPOTͰXBJUMPPQ͢ΔΑ͏εςʔτϚ γϯΛఆٛ͢Δ w -BNCEB&$4ͳͲͰXBJUMPPQ͢ΔλεΫ࡞ΕΔ͕࣮ߦ ࣌ؒʹରͯ͠ྉ͕ۚൃੜ͢Δ w ແݶϧʔϓʹͳΒͳ͍Α͏ඞͣؾΛ͚ͭΔʢεςʔτϚγ
ϯʹλΠϜΞτΛઃఆ͢Δ͜ͱͰ͋Δఔ؇Մೳʣ w .8""Ͱ4FOTPSΛར༻͢Δ
4UFQ'VODUJPOTͱ.8""ͲͪΒΛ࠾༻͢Δ͔ w 4UFQ'VODUJPOT w େྔʹϫʔΫϑϩʔΛฒྻ࣮ߦ͍ͨ͠ w ϫʔΫϑϩʔͷ࣮ߦස͕͍ w .8""
w ΦϯϓϨଞΫϥυͷ"JS fl PXΛ"84ʹҠߦ͍ͨ͠ w ཧ͢ΔϫʔΫϑϩʔ͕ଟ͘ཧը໘͕ཉ͍͠
·ͱΊ
·ͱΊ w 4UFQ'VODUJPOTίεύɺ࣮ߦੑೳڞʹߴ͍ w "84ʹशख़͍ͯ͠ΔͳΒ༗ྗީิ w .8""ͷڧΈطଘΤίγεςϜͷ࠶ར༻ w ඞཁͳཧػೳ8FC6*Ͱఏڙ͞Ε͍͍͢
w ͲͪΒΛ࠾༻ͯ͠ႈੑͷߟྀඞਢ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠
None