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
730
CloudGarageでGitBucketサーバをたててみた
zephiransas
0
500
プログラマが知っておくといいかもしれないCSSのハナシ
zephiransas
1
990
ラクして学ぶ英語(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
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
240
2025年に挑戦したいこと
molmolken
0
150
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
440
Unsafe.BitCast のすゝめ。
nenonaninu
0
200
RubyでKubernetesプログラミング
sat
PRO
4
160
Kotlin Multiplatformのポテンシャル
recruitengineers
PRO
2
150
Reactフレームワークプロダクトを モバイルアプリにして、もっと便利に。 ユーザに価値を届けよう。/React Framework with Capacitor
rdlabo
0
120
信頼されるためにやったこと、 やらなかったこと。/What we did to be trusted, What we did not do.
bitkey
PRO
0
2.1k
テストを書かないためのテスト/ Tests for not writing tests
sinsoku
1
170
AWSの生成AIサービス Amazon Bedrock入門!(2025年1月版)
minorun365
PRO
7
460
Godot Engineについて調べてみた
unsoluble_sugar
0
370
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Making the Leap to Tech Lead
cromwellryan
133
9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
570
Visualization
eitanlees
146
15k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Language of Interfaces
destraynor
155
24k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
Into the Great Unknown - MozCon
thekraken
34
1.6k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
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֤ʑͷσʔλͷϥΠϑαΠΫϧɺΞΫηεසɺ
ͳͲΛߟ͑ɺదͳσʔλετϨʔδʹσʔλΛ ஔ͜͏
͋Γ͕ͱ͏͍͟͝·ͨ͠