Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
AWS DMS ΛͬͨҟछDBؒҠߦͷ ͢͢Ί 2018-09-29 ୈ24ճ தࠃํDBษڧձ JPUGதࠃࢧ෦ ߴڮ Ұٍ 1
Slide 2
Slide 2 text
ҙࣄ߲ • εϥΠυޙͰެ։͠·͢ɻ • ࣭ͱ͔͝ࢦఠͱ͔͋Ε #ChugokuDB ͓ئ͍க͠·͢ɻ 2
Slide 3
Slide 3 text
͓͠ͳ͕͖ 1. ࣗݾհ 2. AWS DMSͱ 3. PostgreSQLΛҠߦઌʹબΜͩཧ༝ 3
Slide 4
Slide 4 text
ࣗݾհ • ߴڮ Ұٍ • ԬࢁͰWebΤϯδχΞ • ຊPostgreSQLϢʔβʔձ தࠃࢧ෦ • PostgreSQLྺ 3ϲ݄ ! • ϋϦωζϛͱωζϛͷҧ͍ʹ͍ͭͯ ݟ͋Γ·͢ɻ 4
Slide 5
Slide 5 text
גࣜձࣾΦϛΧϨ ࠗ׆ͱݴ͑ΦϛΧϨʂ \\͍͍݁ࠗͧʂʂ// ϩʔϯν͔Β7 ىۀ͔Β3ऑ 5
Slide 6
Slide 6 text
֓ཁ • ϩʔϯν͔Β̓ɺ৭Μͳେਓͷࣄ͔Β ͦΕͳΓʹ͍ΘΏΔٕज़తෛ࠴ͱݺΕΔͷ͕͋Δɻ ʮσʔλϕʔεߏΛோΊΔձΖ͏ʂʯ ʮ͜ͷςʔϒϧԿʹΘΕͯΔ͔ͬͯΔਓʔʔʁʯ ʮʮʮɻɻɻʯʯʯ ୭Βͳ͍ςʔϒϧͷڪා... 6
Slide 7
Slide 7 text
֓ཁ • ࠓޙͷࣄۀͷݟӽͯ͠WebϖʔδͷϦϑΝΫλϦϯά ඞཁͩ͠ɺRDBͷϦϑΝΫλϦϯάඞཁ. • ͳΔ͘ແఀࢭͰ͔ͭԁʹ։ൃΛਐΊΔͨΊʹ ߟ͑ͨRDBϦϑΝΫλϦϯάͷํ๏Λ͝հ͖ͤͯ͞· ͢ʂʂ 7
Slide 8
Slide 8 text
֓ཁ • ࠓޙͷࣄۀͷݟӽͯ͠WebϖʔδͷϦϑΝΫλϦϯά ඞཁͩ͠ɺRDBͷϦϑΝΫλϦϯάඞཁ. • ͳΔ͘ແఀࢭͰ͔ͭԁʹ։ൃΛਐΊΔͨΊʹ ͦʔ͍ͩ͞Μ͕ ߟ͑ͨRDBϦϑΝΫλϦϯάͷํ๏Λ͝հͤͯ͞ ͖·͢ʂʂ 8
Slide 9
Slide 9 text
ϦϑΝΫλϦϯάख๏ • MySQLΛ AWS DMS Ͱ PostgreSQLͷOLDεΩʔϚʹҠ͢ɻ • OLD εΩʔϚͷ֤ςʔϒϧʹ τϦΨʔΛఆٛ. τϦΨʔͰϦϑΝΫλϦϯάͯ͠ NEWεΩʔϚʹҠ͢ɻ • NEWεΩʔϚΛࢀর͢ΔΑ͏ʹ Γସ͍͑ͯ͘. 9
Slide 10
Slide 10 text
AWS DMS ͱ 10
Slide 11
Slide 11 text
AWS DMS ͱ Database Migration Service ωοτϫʔΫӽ͠ʹ σʔλҠߦΛߦ͏ࣄ͕ग़དྷΔαʔϏε ※ ίϐʔݩɺίϐʔઌͷͲͪΒ͔͕AWS ͷΤϯυϙΠϯτͰ͋ΕϨϓϦέʔγ ϣϯΛ͢Δࣄ͕ग़དྷΔɻ 11
Slide 12
Slide 12 text
AWS DMSͷΩʔϫʔυ • ιʔεΤϯυϙΠϯτ • σʔλͷίϐʔݩɻ EC2 on DB, RDS, ΦϯϓϨDB, S3 ͳͲɻ • λʔήοτΤϯυϙΠϯτ • σʔλͷίϐʔઌ EC2 on DB, RDS, ΦϯϓϨDB, S3, DynamoDB ͳͲɻ • ϨϓϦέʔγϣϯΠϯελϯε • ϨϓϦέʔγϣϯΛߦ͏Πϯελϯε 12
Slide 13
Slide 13 text
PostgreSQLΛҠߦઌʹબ Μͩཧ༝ 13
Slide 14
Slide 14 text
ͦΓΌ(JPUGཧࣄ͕ೋਓډΔΜ͔Β) ͦ͏Ζɻ 14
Slide 15
Slide 15 text
ͱ͍͏ͷຊԻɺͰͳ͍Ͱ͕͢ɻ 15
Slide 16
Slide 16 text
PostgreSQLτϦΨʔʹ͍ͭͯ CREATE TRIGGER 'τϦΨʔ໊' trigger_time trigger_event ON 'ςʔϒϧ໊' FOR EACH ROW '࣮ߦؔ' MySQL PostgreSQL trigger_time BEFORE, AFTER BEFORE, AFTER trigger_event INSERT,UPDATE,DELETE ͔ΒҰ ͭ INSERT,UPDATE,DELETE ͔Β1 ݸҎ্ ※ ͬͱ͋Δ͚Ͳɺলུ 16
Slide 17
Slide 17 text
PostgreSQLͷڧΈ(खଓ͖ܕݴޠ) ໊শ ݴޠ ํ๏ PL/pgSQL SQL جຊ PL/Perl Perl جຊ PL/Python Python جຊ PL/Java Java ֦ு PL/v8 JavaScript ֦ு ※ ͦͷଞ 17
Slide 18
Slide 18 text
͕࣌ؒ͋ΕσϞಈը(ଟ ແ͍) 18
Slide 19
Slide 19 text
·ͱΊ • AWS DMS҆ͯ͘खܰʹࢼͤΔͱ͍͏ͰҠߦπʔϧͱ͠ ͍͍ͯ͢ɻ • ·ͩ·ͩΓ࢝Ί͔ͨΓͰɺࠓͷॴக໋ইͳ͍ɻ (ই͕ແ͍ͱݴͬͯͳ͍) • ࠓޙଟ৭ʑͳࠈΛݟ͍ͯ͘ͱࢥ͏ͷͰͦ͏͍͏ͷࠓޙ ͷΠϕϯτͰΞτϓοτ͍ͯ͘͠ͷͰ͝ظ͍ͩ͘͞ 19
Slide 20
Slide 20 text
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝· ͨ͠ʂʂ 20