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
武田隆志
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
小さいから、全部わかる。— 常駐AI "xangi" のすすめ
sugupoko
0
240
BPaaSで進むAIオペレーションの現在地 AI実装が効く領域とスケーラビリティの選定と実装
kentarofujii
0
260
きのこカンファレンス2026_肩書きを外したとき私は誰か
yamasatimi
1
130
product engineering with qa
nealle
0
140
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.3k
ゼロをイチにする仕事が終わったあと
smasato
0
250
Kotlin 開発のツラミを爆破した話! / Explode the difficulty of Kotlin dev!
eller86
0
140
Claude Codeとハーネスについて考えてみる
oikon48
14
6.4k
知見・人・API・DB・予算 ─ ナイナイ尽くしだった人事データ整備 with dbt、5年間の学び
ken6377
1
140
トークン最適化のためのユーザーストーリー分析 / User Story Analysis for Token Optimization
oomatomo
0
160
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
AIペネトレーションテスト・ セキュリティ検証「AgenticSec」紹介資料
laysakura
2
8k
Featured
See All Featured
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
160
Optimizing for Happiness
mojombo
378
71k
Leo the Paperboy
mayatellez
7
1.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Crafting Experiences
bethany
1
200
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
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