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
610
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.1k
ECSとALBで始めるblue/greenデプロイメント
zephiransas
2
300
DynamoDB関連のアップデート紹介 #reinvent2018
zephiransas
0
710
CloudGarageでGitBucketサーバをたててみた
zephiransas
0
490
プログラマが知っておくといいかもしれないCSSのハナシ
zephiransas
1
970
ラクして学ぶ英語(LT版)
zephiransas
0
190
あなたとCrystal、いますぐダウンロード
zephiransas
1
1.7k
使ってみようLombok
zephiransas
0
240
Modern Web Development with ninjaframework
zephiransas
0
3k
Other Decks in Technology
See All in Technology
フルカイテン株式会社 採用資料
fullkaiten
0
36k
生成AIとAWS CDKで実現! 自社ブログレビューの効率化
ymae
2
330
pandasはPolarsに性能面で追いつき追い越せるのか
vaaaaanquish
4
4.6k
バクラクにおける可観測性向上の取り組み
yuu26
3
420
分布で見る効果検証入門 / ai-distributional-effect
cyberagentdevelopers
PRO
4
700
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.6k
AIを駆使したゲーム開発戦略: 新設AI組織の取り組み / sge-ai-strategy
cyberagentdevelopers
PRO
1
130
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
9
120k
【若手エンジニア応援LT会】AWS Security Hubの活用に苦労した話
kazushi_ohata
0
170
Figma Dev Modeで進化するデザインとエンジニアリングの協働 / figma-with-engineering
cyberagentdevelopers
PRO
1
430
コンテンツを支える 若手ゲームクリエイターの アートディレクションの事例紹介 / cagamefi-game
cyberagentdevelopers
PRO
1
130
Featured
See All Featured
Building Your Own Lightsaber
phodgson
102
6k
Fireside Chat
paigeccino
32
3k
GitHub's CSS Performance
jonrohan
1030
460k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
43
6.6k
Faster Mobile Websites
deanohume
304
30k
Music & Morning Musume
bryan
46
6.1k
Designing the Hi-DPI Web
ddemaree
280
34k
Building Better People: How to give real-time feedback that sticks.
wjessup
363
19k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.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֤ʑͷσʔλͷϥΠϑαΠΫϧɺΞΫηεසɺ
ͳͲΛߟ͑ɺదͳσʔλετϨʔδʹσʔλΛ ஔ͜͏
͋Γ͕ͱ͏͍͟͝·ͨ͠