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
DynamoDB Step Zero to One
Search
Takafumi Yoshida
May 18, 2019
Technology
0
620
DynamoDB Step Zero to One
Takafumi Yoshida
May 18, 2019
Tweet
Share
More Decks by Takafumi Yoshida
See All by Takafumi Yoshida
ECSとSQSでスケーラブルなバッチを作った
zephiransas
2
1.2k
ECSとALBで始めるblue/greenデプロイメント
zephiransas
2
310
DynamoDB関連のアップデート紹介 #reinvent2018
zephiransas
0
720
CloudGarageでGitBucketサーバをたててみた
zephiransas
0
500
プログラマが知っておくといいかもしれないCSSのハナシ
zephiransas
1
980
ラクして学ぶ英語(LT版)
zephiransas
0
190
あなたとCrystal、いますぐダウンロード
zephiransas
1
1.7k
使ってみようLombok
zephiransas
0
240
Modern Web Development with ninjaframework
zephiransas
0
3.1k
Other Decks in Technology
See All in Technology
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
260
Wvlet: A New Flow-Style Query Language For Functional Data Modeling and Interactive Data Analysis - Trino Summit 2024
xerial
1
110
宇宙ベンチャーにおける最近の情シス取り組みについて
axelmizu
0
110
AIのコンプラは何故しんどい?
shujisado
1
190
生成AIのガバナンスの全体像と現実解
fnifni
1
180
Jetpack Composeで始めるServer Cache State
ogaclejapan
2
170
LINEスキマニにおけるフロントエンド開発
lycorptech_jp
PRO
0
330
日本版とグローバル版のモバイルアプリ統合の開発の裏側と今後の展望
miichan
1
130
私なりのAIのご紹介 [2024年版]
qt_luigi
1
120
10個のフィルタをAXI4-Streamでつなげてみた
marsee101
0
170
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
170
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Gamification - CAS2011
davidbonilla
80
5.1k
Scaling GitHub
holman
458
140k
Designing Experiences People Love
moore
138
23k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Transcript
%ZOBNP%# 4UFQ;FSPUP0OF ٢ాوจ ![FQIJSBOTBT Ϋϥεϝιουגࣜձࣾ
εϥΠυޙͰೖख͢Δ͜ͱ͕ग़དྷ·͢ͷͰ ൃදதͷ༰ΛϝϞ͢Δඞཁ͋Γ·ͤΜɻ ࣸਅࡱӨΛ͢Δ߹ ϑϥογϡɾγϟολʔԻ͕ग़ͳ͍Α͏ʹྀ͍ͩ͘͝͞ Attention
#ChugokuDB
ࣗݾհ ٢ాوจ ![FQIJSBOTBT wΫϥεϝιουגࣜձࣾ wϞόΠϧΞϓϦαʔϏε෦ wԬࢁ+BWBϢʔβձදΦʔϓϯη ϛφʔԬࢁ࣮ߦҕһ
w͖ͳ"84ͷαʔϏε w&$4 %ZOBNP%#
ΞδΣϯμ w3%#ͱ%ZOBNP%# wΩϟύγςΟϢχοτ wύʔςΟγϣϯΩʔͱϨϯδΩʔ wσʔλ֨ೲʹ͍ͭͯ wݕࡧํ๏ w̎ͭͷಡΈࠐΈ߹ੑ w࣮ࡍͷར༻ྫ
RDBͱDynamoDB
3%#ͷಛ wߦͱΧϥϜͰߏ͞Εͨςʔϒϧ w42-Λͬͯɺࣗ༝ʹσʔλΛߜΓࠐΜͩΓ͠ ͯݕࡧ͕Ͱ͖Δ wσʔλͷҰ؏ੑ $POTJTUFODZ ɺॻ͖ࠐΈૢ࡞ ͷݪࢠੑ
"UPNJDJUZ wՄ༻ੑͱ֦ுੑΛߋʹٻΊΒΕΔΑ͏ʹͳͬͯ ͖ͨ
Մ༻ੑͱ֦ுੑΛͲ͏ߴΊΔͷ͔ʁ Մ༻ੑΛ্͛ΔʹԽ wෳͷϊʔυʹσʔλͷίϐʔΛ࣋ͭ wͲ͔͕͜োΛ͓ͯ͜͠ɺଞͷϊʔυͰॲཧ ΛܧଓͰ͖Δ ֦ுੑΛ্͛ΔʹʹࢄԽ wϊʔυ͝ͱʹड͚࣋ͭσʔλΛ͚Δ wࢄ͢Δ͜ͱͰੑೳΛ୲อ͢Δ
͔͠͠ԽɺࢄԽ͢Δͱ Ұ؏ੑΛอ࣋͢Δ͜ͱ͕͍͠
Մ༻ੑˍ֦ுੑ ͱ Ұ؏ੑτϨʔυΦϑ
Ұ؏ੑΛଟগ٘ਜ਼ʹͭͭ͠ ߴՄ༻ੑɺߴ֦ுੑΛऔΔ Ұ؏ੑͦΕ΄ͲॏཁͰͳ͍έʔεଟ
%ZOBNP%#ͷಛ wϑϧϚωʔδυ wΩʔͱͷอଘͷΈʹಛԽ wͭͷ";ʹσʔλΛίϐʔ͢Δ͜ͱͰɺߴ͍Մ ༻ੑΛ֬อ wෳͷϊʔυͰσʔλΛड͚࣋ͭ͜ͱͰɺߴ͍ ֦ுੑΛ֬อ
%ZOBNP%#ͷಛʢࠓ͞ͳ͍ʣ w55- 5JNFUP-JWF w%ZOBNP%#4USFBNT w%"9
3%#ͱൺͯͰ͖ͳ͍͜ͱ wॊೈͳݕࡧ wूܭ wςʔϒϧಉ࢜ͷ+0*/ w͍ϨίʔυʢLC੍ݶʣ wҰ؏ੑͷ͋ΔಡΈऔΓ wτϥϯβΫγϣϯʢݶఆతʣ
ΩϟύγςΟϢχοτ
ΩϟύγςΟϢχοτ wඵؒͨΓͷεϧʔϓοτΛࣄલʹઃఆͰ͖Δ wಡΈࠐΈɺॻ͖ࠐΈผʹࢦఆ w͍ͭͰແఀࢭͰ্͛ͨΓɺԼ͛ͨΓͰ͖Δ w$6ͷͰར༻ྉ͕ۚ΄΅ܾ·Δ
ΩϟύγςΟϢχοτ 3FBEDBQBDJUZ wϢχοτͰɺຖඵLCͷσʔλΛಡΈ͜ΊΔ 8SJUFDBQBDJUZ wϢχοτͰɺຖඵLCͷσʔλΛॻ͖͜ΊΔ wσʔλͷฏۉαΠζͱɺཁٻ͞ΕΔඵؒͷε ϧʔϓοτ͕͔ΕɺࣄલʹઃఆͰ͖Δ
ΩϟύγςΟϢχοτ ͑ΔͱͲ͏ͳΔͷʁ wεϩοτϦϯά͕ൃੜ͢ΔʢΤϥʔʹͳΔʣ w4%,ଆͰϦτϥΠͯ͘͠ΕΔ w$MPVE8BUDIͳͲͰεϩοτϦϯά͕ൃੜͯ͠ ͍ͳ͍͔ɺదʹࢹ wదͳ$6Λઃఆ͢Δඞཁ͕͋Δ
ΩϟύγςΟϢχοτ "VUP4DBMJOH wҰఆ࣌ؒɺࢦఆͨ͠$6Λ͍͑ͯͨ߹ʹɺ ࣗಈͰ$6Λ૿͢ʢݮΒ͢ʣ w༗ޮԽ͢Δͱ$MPVE8BUDI"MBSNʹ֤छ "MBSN͕࡞͞ΕΔͷͰɺͦͷ༰ΛνΣοΫ
ΩϟύγςΟϢχοτ 0O%FNBOE wશ͓·͔ͤίʔε wͨͩ͠ɺগʑ͓ߴ͍ʢఔʣ wIUUQTEFWDMBTTNFUIPEKQDMPVEBXT SFJOWFOUDPNQBSFEZOBNPECPO EFNBOEQSJDFXJUIQSPWJTJPOFEQSJDF
ύʔςΟγϣϯΩʔͱ ϨϯδΩʔ
ύʔςΟγϣϯΩʔͱ ύʔςΟγϣϯΩʔʢϋογϡΩʔʣ w3%#Ͱ͍͏ͱ͜ΖͷओΩʔ wͭͷΈࢦఆ wྫ͑Ϣʔβ*%ͳͲ wͲͷϊʔυʹσʔλΛ֨ೲ͢Δ͔ͷஅʹΘ ΕΔ
ςʔϒϧͷΠϝʔδ *E /BNF (SBEF 7BMVF ߴւઍՎ
ล༵ ࡩསࢠ ࠃాՖؙ
ϨϯδΩʔͱ ϨϯδΩʔʢιʔτΩʔʣ wύʔςΟγϣϯΩʔͱผʹɺෳ߹Ωʔͱͯ͠ ༻͢Δଐੑ wྫ͑λΠϜελϯϓͳͲ wݕࡧ࣌ʹ݅ࢦఆͰ͖Δ wΠίʔϧɺେখɺCFUXFFOɺCFHJOXJUI
ςʔϒϧͷΠϝʔδ *E %BUF 7BMVF
σʔλ֨ೲํ๏ʹ͍ͭͯ
JUFNࢄͨ͠ύʔςΟγϣϯʹอଘ͞ΕΔ *E ϋογϡ BCDE BDCE *E
ϋογϡ CBDE *E ϋογϡ DBCE node-A node-B node-C
JUFNͭͷ";ʹϨϓϦέʔτ͞ΕΔ *E ϋογϡ BCDE BDCE AZ1
*E ϋογϡ BCDE BDCE AZ2 *E ϋογϡ BCDE BDCE AZ3
σʔλ֨ೲͷΠϝʔδ /PEF ύʔςΟγϣϯΩʔ ϋογϡ ϨϯδΩʔ " BCDE
" BCDE " "DCE # CBDE $ DBCE
ݕࡧํ๏
%ZOBNP%#ͷݕࡧํ๏ w4DBO w(FU*UFN w2VFSZ
4DBO wશ݅ಡΈࠐΈ wίετ͕ߴ͍ wϑΟϧλΛࢦఆͰ͖Δ wશ݅औಘޙʹϑΟϧλ͕ద༻͞ΕΔ
(FU*UFN wύʔςΟγϣϯΩʔɺ·ͨύʔςΟγϣϯ ΩʔͱϨϯδΩʔΛࢦఆͯ͠ɺd݅ͷJUFNΛ औಘ͢Δ wϨϯδΩʔΛൣғࢦఆͰ͖ͳ͍
2VFSZ wύʔςΟγϣϯΩʔͱϨϯδΩʔΛࢦఆͯ͠ɺ ෳ݅ͷJUFNΛऔಘ͢Δ wϨϯδΩʔʹΠίʔϧɺେখɺCFUXFFOɺ CFHJOXJUIͳͲΛࢦఆͰ͖Δ
w%ZOBNP%#ͰσʔλΛߴʹݕࡧ͢Δͨ ΊɺύʔςΟγϣϯΛಛఆͰ͖ͳ͍ݕࡧఏڙ ͞Ε͍ͯͳ͍
σʔλ֨ೲͷΠϝʔδ /PEF ύʔςΟγϣϯΩʔ ϋογϡ ϨϯδΩʔ " BCDE
" BCDE " BDCE # CBDE $ DBCE
2ͭͷ ಡΈࠐΈ߹ੑ
̎ͭͷಡΈࠐΈ߹ੑ ݁Ռ߹ੑ wJUFNΛߋ৽ޙɺ͙͢͜ΕΛಡΈࠐΉͱݹ͍ σʔλ͕ฦͬͯ͘Δ߹͕͋Δ w࠷େͰඵఔ ڧ͍߹ੑ wඞͣ࠷৽ͷσʔλ͕ฦͬͯ͘Δ wͨͩ͠$6ΛഒҎ্ফඅ͢Δ
JUFNͭͷ";ʹϨϓϦέʔτ͞ΕΔ *E /BNF )PHF AZ1 AZ2 AZ3
*E /BNF )PHF *E /BNF )PHF
ߋ৽ॲཧΛͨ͠߹ɾɾɾ *E /BNF )PHF AZ1 AZ2 AZ3
*E /BNF 'VHB *E /BNF 'VHB
ڧ͍߹ੑͰಡΈࠐΜͩ߹ *E /BNF )PHF AZ1 AZ2 AZ3
*E /BNF 'VHB *E /BNF 'VHB
࣮ࡍͷར༻ྫ
ΞϓϦͷૢ࡞ϩά wϢʔβ*%ΛύʔςΟγϣϯΩʔ wλΠϜελϯϓΛϨϯδΩʔ wΠϕϯτϩάΛߴʹॻ͖͜Ή w%ZOBNP%#4USFBNT-BNCEB4 "UIFOBͰूܭ
ΧϨϯμʔσʔλ w3%#͚ͩͩͱΩπΠ w܁Γฦ͠ɺऴ༧ఆɺଞϢʔβͱͷڞ༗ΧϨϯ μʔɺެ։ൣғɾɾɾ w3%#ͷσʔλΛݩʹ424ʹλεΫΛ࡞ w%ZOBNP%#্ʹϢʔβɺผʹݸผʹ σʔλ࡞
·ͱΊ w3%#ɺ%ZOBNP%#ͦΕͧΕͷಛੑΛ׆͔͢ wΩϟύγςΟϢχοτదʹ w%ZOBNP%#͕σʔλΛͲͷΑ͏ʹอ͍࣋ͯ͠Δ ͔Πϝʔδ͢Δ͜ͱେࣄ wΫϥυͩͱ3%#%ZOBNP%#ͷଞʹσʔλ ετϨʔδ͋Δ w֤ʑͷσʔλͷϥΠϑαΠΫϧɺΞΫηεසɺ
ͳͲΛߟ͑ɺదͳσʔλετϨʔδʹσʔλΛ ஔ͜͏
͋Γ͕ͱ͏͍͟͝·ͨ͠