$30 off During Our Annual Pro Sale. View Details »

GAE_SE_Go_Second_generation_And_Cloud_Spanner.pdf

sonatard
December 04, 2018

 GAE_SE_Go_Second_generation_And_Cloud_Spanner.pdf

sonatard

December 04, 2018
Tweet

More Decks by sonatard

Other Decks in Programming

Transcript

  1. 1
    (PPHMF"QQ&OHJOF(P
    4UBOEBSE&EJUJPO4FDPOEHFOFSBUJPO
    "OE$MPVE4QBOOFS
    !TPOBUBSE
    ञͱήʔϜͱΠϯϑϥͱ($1ୈճ
    ʙ೥຤͔ͩΒ؊ଁʹμϝʔδड͚ͳ͍ఔ౓ʹҿΉͧʙ!%..DPN

    View Slide

  2. Server Side Engineer
    ͦͳͨ
    @sonatard
    2006 -
    • Linux Server and Network Engineer
    2010 -
    • Develop Wireless LAN Module Simulator with SystemC
    • Develop TCP/IP protocol stack on RTOS
    2014 -
    • Go in my free time
    - Command-line utility for searching Github repository.
    https://github.com/sonatard/ghs
    - LDAP Auth Client library
    https://github.com/sonatard/go-ldapc
    2017 -
    • Google App Engine Go Engineer

    View Slide

  3. • ͸͡Ίʹ
    • GAEͷۙ೥ͷಈ͖ͱ2nd-gen
    • GAEͱGKE
    • Cloud Spannerͷར༻ɺCloud SQL͔ΒͷҠߦ
    • એ఻

    View Slide

  4. 4
    ͸͡Ίʹ
    w ("&(PલఏͰ͓࿩͠·͢
    w TUHFOɺOEHFOͷ੍໿͸ݴޠʹΑͬͯҟͳΓ·͢

    View Slide

  5. • ͸͡Ίʹ
    • GAEͷۙ೥ͷಈ͖ͱ2nd-gen
    • GAEͱGKE
    • Cloud Spannerͷར༻ɺCloud SQL͔ΒͷҠߦ
    • એ఻

    View Slide

  6. 6
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOͷۙ೥ͷಈ͖
    w "QQ&OHJOF
    w (PPHMF࠷ॳͷΫϥ΢υαʔϏε
    w ($1Ҏલ͔Βଘࡏ
    w ݱࡏͰ͸"QQ&OHJOFҎ֎ʹ΋ଟ͘ͷ࣮ߦ؀ڥ͕ଘࡏ
    w ($&
    w "QQ&OHJOF'MFY&OWJSPONFOU
    w (,&
    w ,OBUJWF 4FSWFSMFTTBEEPOGPS(PPHMF,VCFSOFUFT&OHJOF

    w $MPVE'VODUJPOT
    w ଞͷ࣮ߦ؀ڥ͔Β΋ར༻Ͱ͖ΔΑ͏ʹ"QQ&OHJOFґଘػೳΛ($1ʹ੾Γग़͢ಈ͖͕͋Δ
    w "QQ&OHJOF%BUBTUPSF$MPVE%BUBTUPSF
    w "QQ&OHJOFDSPO$MPVE4DIFEVMFS
    w "QQ&OHJOFUBTLRVFVF$MPVE5BTLT

    View Slide

  7. 7
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOTUHFOͷ੍໿ͱฐ֐
    w TUHFOͷ࣮ߦ؀ڥͱͯ͠ͷ੍໿
    w ଞͷίϯςφͱΧʔωϧΛڞ༗͍ͯ͠Δ౎߹Ͱ৴པͰ͖ͳ͍γεςϜίʔϧΛ࣮ߦ͞
    ΕΔڪΕ͕͋ΔͨΊɺ௚઀γεςϜίʔϧΛ࣮ߦ͢Δ͜ͱ͸Ͱ͖ͳ͔ͬͨ
    w 8FCΞϓϦέʔγϣϯΛఏڙ͢Δ্Ͱ࠷௿ݶඞཁͳγεςϜίʔϧ͸ɺBQQFOHJOF
    QBDLBHFΛར༻͠ͳ͚Ε͹͍͚ͳ͍
    w (PPHMFࣾ಺ͷ։ൃऀ
    w BQQFOHJOFQBDLBHFͷ։ൃ
    w (PͷόʔδϣϯΞοϓ͝ͱʹɺ(Pຊମʹ"QQ&OHJOFઐ༻ͷύονΛ౰ͯΔ
    w "QQ&OHJOFར༻ऀ
    w "QQ&OHJOFઐ༻ͷ(PͷίʔυΛॻ͔ͳ͚Ε͹͍͚ͳ͍
    w ଞͷ࣮ߦ؀ڥ΁ͷҠ২ੑ͕௿͍ "QQ&OHJOF΁ͷϩοΫΠϯ͕ڧ͍

    View Slide

  8. 8
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPO΁ͷґଘͷ௿ݮ
    w "QQ&OHJOFࣗ਎΋"QQ&OHJOF΁ͷґଘΛݮΒͦ͏ͱ͍ͯ͠Δ
    w "QQ&OHJOF"1*͕ඇਪ঑ʹ ͍ͭഇࢭ͞ΕΔ͔͸ະఆ

    w *NBHF"1*
    w 6TFST"1* ೝূ

    w .BJM"1*
    w 4FBSDI"1*
    w .FNDBDIF

    View Slide

  9. 9
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOOEHFOͷొ৔
    w H7JTPSʹΑΓɺίϯςφ͝ͱʹϦιʔε͕෼ׂ͞Εͨ
    w ଞͷίϯςφʹର͢Δഁյతૢ࡞͕Ͱ͖ͳ͘ͳͬͨ
    w γεςϜίʔϧΛࣗ༝ʹୟ͚ΔΑ͏ʹͳͬͨ
    w H7JTPS͕࣮૷͍ͯ͠ΔγεςϜίʔϧݶఆ

    View Slide

  10. 10
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOOEHFO੍ݶղফʹΑΓՄೳʹͳͬͨ͜ͱ
    w TUHFOͰ͸ઈରʹͰ͖ͳ͔ͬͨ͜ͱ͕OEHFOͰ͸࠾༻Ͱ͖ΔΑ͏ʹ
    w ֎෦ͷίϚϯυΛμ΢ϯϩʔυ͓͍ͯͯ͠ɺͦͷόΠφϦΛ࣮ߦ͢Δ͜ͱ͕Մೳ
    w FYFD$PNNBOE
    w JOJU࣌ʹXHFUͰUNQμ΢ϯϩʔυUBSYWGͰίϚϯυΛ഑ஔ
    w ϦΫΤετ͝ͱʹͦͷίϚϯυΛ࣮ߦ
    w όΠφϦ͕)551ϦΫΤετΛ౤͛ΔΑ͏ͳ΋ͷ΋໰୊ͳ͍
    DVSMIUUQTTBNQMFEPUQSPKFDUJEBQQTQPUDPNDNE
    HPMBOHHP5IF(PQSPHSBNNJOHMBOHVBHF
    GVODJOJU
    \
    PVU FSSFYFD$PNNBOE XHFU lIUUQTBBBHITUBSH[z 0 UNQHITUBSH[
    $PNCJOFE0VUQVU

    PVU FSSFYFD$PNNBOE UBS YWG UNQHITUBSH[ $ lUNQ
    $PNCJOFE0VUQVU

    ^
    GVOD$NE)BOEMF XIUUQ3FTQPOTF8SJUFS SIUUQ3FRVFTU
    \
    PVU FSSFYFD$PNNBOE lUNQHIT HPMBOHHP N
    $PNCJOFE0VUQVU

    GNU'QSJOUG X W TUSJOH PVU


    ^

    View Slide

  11. 11
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOOEHFO੍ݶղফʹΑΓՄೳʹͳͬͨ͜ͱ
    w 4UBDLESJWFS1SPpMFS͕ར༻Մೳʹʂʂ
    w ݱࡏαϙʔτ͸͞Ε͍ͯͳ͍
    GVODJOJU
    \
    QSPKFDU*%PT(FUFOW (00(-&@$-06%@130+&$5

    JGFSSQSPpMFS4UBSU QSPpMFS$POpH\
    %FCVH-PHHJOHGBMTF
    1SPKFDU*%QSPKFDU*%
    ^
    FSSOJM\
    QBOJD FSS

    ^
    ^

    View Slide

  12. 12
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOOEHFOͷ੍໿
    w ར༻Ͱ͖ͳ͍ϓϩτίϧ
    w (31$͕࢖͑ͳ͍)551ͷΈ
    w 8FC4PDLFU͕࢖͑ͳ͍
    w "QQ&OHJOF"1*ͷҠߦઌ͕($1ʹͳ͍໰୊
    w .BJM"1*4FOE(SJE
    w 4FBSDI"1*&MBTUJDL4FBSDIPO($&
    w 6TFST"1* ೝূ
    'JSFCBTF"VUI (PPHMF4JHO*O 0QFO"1*
    w কདྷతʹ͸$MPVE*"1ʁ
    w .FNDBDIF3FEJT-BCT.FNDBDIFE$MPVE
    w কདྷతʹ͸$MPVENFNPSZTUPSFʁ
    w ݱࡏɺ7JSUVBM1SJWBUF$MPVEʢ71$
    ʹ"QQ&OHJOF͸઀ଓͰ͖ͳ͍ɻ

    View Slide

  13. 13
    (PPHMF"QQ&OHJOF4UBOEBSE&EJUJPOOEHFO͸Ҡߦ͢΂͖ʁ
    w "QQ&OHJOF"1*͸ඇਪ঑Ͱ͋Δ͕ར༻Ͱ͖ΔͷͰՄೳͳΒOEHFOʹҠߦͨ͠ํ͕ྑ͍
    w (P͕࢖͑Δ
    w ༷ʑͳ੍ݶ͕ͳ͘ͳΔ
    w "QQ&OHJOF"1*͕ഇࢭ͞ΕΔՄೳੑ͸͋Δ͕ɺͦΕ͸TUHFOͰ΋OEHFOͰ΋ಉ༷

    View Slide

  14. • ͸͡Ίʹ
    • GAEͷۙ೥ͷಈ͖ͱ2nd-gen
    • GAEͱGKE
    • Cloud Spannerͷར༻ɺCloud SQL͔ΒͷҠߦ
    • એ఻

    View Slide

  15. 15
    "QQ&OHJOFͱ(,&
    ؅ཧͷ༰қ͞
    ࣗ༝౓
    "QQ&OHJOFTU
    ॳظ(,&

    View Slide

  16. 16
    "QQ&OHJOFͱ(,&
    ؅ཧͷ༰қ͞
    ࣗ༝౓
    "QQ&OHJOFTU "QQ&OHJOFOE
    ॳظ(,&
    ݱࡏͷ(,&
    पลαʔϏε

    View Slide

  17. 17
    "QQ&OHJOFͱ(,&
    ؅ཧͷ༰қ͞
    ࣗ༝౓
    "QQ&OHJOFTU "QQ&OHJOFOE
    ॳظ(,&
    ݱࡏͷ(,&
    पลαʔϏε

    View Slide

  18. 18
    "QQ&OHJOFͱ(,&
    ؅ཧͷ༰қ͞
    ࣗ༝౓
    "QQ&OHJOFTU "QQ&OHJOFOE
    ॳظ(,&
    ݱࡏͷ(,&
    पลαʔϏε
    "QQ&OHJOF
    OFYU
    (,&
    OFYU

    View Slide

  19. 19
    "QQ&OHJOFͱ(,&
    ؅ཧͷ༰қ͞
    ࣗ༝౓
    "QQ&OHJOFTU "QQ&OHJOFOE
    ॳظ(,&
    ݱࡏͷ(,&
    पลαʔϏε
    "QQ&OHJOF
    OFYU
    (,&
    OFYU
    /FX
    1SPEVDU

    View Slide

  20. • ͸͡Ίʹ
    • GAEͷۙ೥ͷಈ͖ͱ2nd-gen
    • GAEͱGKE
    • Cloud Spannerͷར༻ɺCloud SQL͔ΒͷҠߦ
    • એ఻

    View Slide

  21. 21
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦ
    w ΠϯλʔϦʔϒΛҙࣝͨ͠ςʔϒϧઃܭ
    w BVUPJODSFNFOU͕ͳ͍
    w ಛఆͷϊʔυ͕ϗοτεϙοτʹͳΒͳ͍Α͏1,͸66*%ʹ͓ͯ͘͠
    w 3FBE5SBOTBDUJPO
    w ಉҰ࣌ࠁͷσʔλΛಡΈऔΔ͜ͱ͕Ͱ͖ΔɻϩοΫ͸औΒͳ͍ɻ
    w ΫΤϦʔͷରԠঢ়گ
    w ରԠ
    w 4&-&$5ɺ*/4&35ɺ61%"5&ɺ%&-&5&
    w -*.*5ɺ0''4&5ɺ+0*/ɺ*/ɺ03ɺ)"7*/(
    w ະରԠ
    w -*,&

    View Slide

  22. 22
    $MPVE42-ɺ$MPVE'JSFTUPSFɺ$MPVE4QBOOFS
    w $MPVE42-
    w εέʔϧΞ΢τ͠ͳ͍
    w ϝϯςφϯεʹΑΔ࠶ىಈ͕(PPHMF౎߹Ͱ਺ϲ݄ʹ౓ൃੜ͢Δ
    w ։ൃ؀ڥ.Z42-ΛࣗલͰཱͯΔ
    w $MPVE'JSFTUPSF OBUJWFNPEF EBUBTUPSFNPEF

    w Ϣʔβࢦఆ࣌ࠁͷόοΫΞοϓػೳ͕ͳ͍
    w ॴఆ࣌ࠁ΁ͷϩʔϧόοΫ͕Ͱ͖ͳ͍ͱۚ༥Ͱ͸ར༻͕೉͍͠
    w ։ൃ؀ڥΤϛϡϨʔλ͋Γ
    w $MPVE4QBOOFS
    w εέʔΞ΢ϧτ͢Δ
    w ϝϯςφϯεʹΑΔ࠶ىಈ͸ͳ͍
    w Ϣʔβࢦఆ࣌ࠁͷόοΫΞοϓػೳ͕͋Δ
    w ϊʔυ՝ۚͷͨΊݸਓαʔϏεͰ͸ར༻ͮ͠Β͍
    w ݄࠷௿ສɺϓϩμΫτͰ͸ϊʔυͷ৑௕ߏ੒Ͱສ
    w ։ൃ؀ڥΤϛϡϨʔλ͕ͳ͍
    w

    View Slide

  23. 23
    $MPVE4QBOOFSPO"QQ&OHJOF(P74$MPVE42-BOEEBUBTUPSF
    w $MPVE4QBOFOS74$MPVE42-
    w Ձ֨໘ͱ.Z42-ͷػೳΛϑϧʹ࢖͍͍ͨ৔߹Ҏ֎Ͱ$MPVE42-Λར༻͢Δཧ༝͸
    w ػೳ͕ෆ଍͍ͯͯ͠΋ӡ༻ෆՄ͕Լ͕Δ΄͏Λબͼ͍͔ͨͲ͏͔࣍ୈ
    w $MPVE4QBOOFS74EBUBTUPSF
    w EBUBTUPSF͸,74ͳͷͰ.Z42-͔ΒͷҠߦ͸EBUBTUPSFͷํ͕େม
    w 4QBOOFS͸ଟগϊ΢ϋ΢͕ඞཁͳͷͰɺEBUBTUPSFͷํ͕ར༻͸༰қ
    w Ձ֨໘͸αʔϏεن໛࣍ୈ

    View Slide

  24. 24
    $MPVE4QBOOFSPO"QQ&OHJOF(P
    w TUHFOͰ͸ɺBQQFOHJOFDPOUFYUͱ$MPVE4QBOOFSͷηογϣϯͷ౎߹Ͱར༻ෆՄ
    w OEHFOͰ͸ར༻Ͱ͖ΔΑ͏ʹͳͬͨ
    w Πϯελϯεىಈ࣌ʹ4QBOOFSͷηογϣϯΛషͬͨΫϥΠΞϯτΛੜ੒
    w ϦΫΤετ͝ͱʹ࡞੒ͨ͠4QBOOFSΫϥΠΞϯτΛར༻͢Δ
    w ࣮૷Ͱ"QQ&OHJOFಛ༗ͷۤ࿑ͱ͍͏ͷ͸ͳ͍

    View Slide

  25. 25
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦ࣮ࡍʹࠔͬͨ͜ͱ
    w ରԠ͍ͯ͠Δܕ͕গͳ͍
    w JOU͕ଘࡏ͠ͳ͍
    w 1SPUPDPM#V⒎FSTͷFOVN͸JOUͳͷͰɺJOU΁ͷΩϟετ͕ඞཁ
    w ߏ଄ମ͸อଘͰ͖ͳ͍
    w %FDJNBMߏ଄ମΛอଘ͍͕ͨ͠खஈ͕ͳ͍
    w ਺஋ΛTUSJOHʹ͢Δ͔ɺߏ଄ମͷཁૉΛ෼ղͯ͠ΧϥϜʹೖΕΔ͔͠ͳ͍
    w */&5@/50"ͳͲ͕ͳ͍
    w 4&-&$5*/&5@/50" JQ@BEESFTT
    '30.UBCMF͕࣮ߦͰ͖ͳ͍
    w ఘΊͨ

    View Slide

  26. 26
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦΞʔΩςΫνϟ
    w σʔλϕʔεͷ౎߹͕ΞϓϦέʔγϣϯ૚υϝΠϯ૚ʹӨڹΛ༩͑ͳ͍Α͏࣮૷͢Δ
    w υϝΠϯͱ%#ͷςʔϒϧߏ଄Λผߏ଄ମͰఆٛ
    w ΞϓϦέʔγϣϯ૚͔Β͸3FQPTJUPSZΛܦ༝ͯ͠$36%Λ࣮ߦ͢Δɻ
    w υϝΠϯΛ౉ͯ͠ɺ%#ͷςʔϒϧͷߏ଄ମ΁ม׵
    QBDLBHFSFQPTJUPSZ
    UZQF6TFSJOUFSGBDF\
    (FU#Z5ZQF DUYDPOUFYU$POUFYU UYEC3FBE5SBOTBDUJPO UQC5ZQF
    EPNBJO6TFS FSSPS

    ^
    QBDLBHFEPNBJO
    UZQF6TFSTUSVDU\
    *%TUSJOH
    5ZQFQC5ZQFJOU
    ^
    QBDLBHFJOGSB
    UZQF6TFSTUSVDU\
    *%TUSJOH
    5ZQFJOU
    ^

    View Slide

  27. 27
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦΞʔΩςΫνϟ
    w σʔλϕʔεͷ౎߹͕ΞϓϦέʔγϣϯ૚υϝΠϯ૚ʹӨڹΛ༩͑ͳ͍Α͏࣮૷͢Δ
    w ΞϓϦέʔγϣϯ૚ͷτϥϯβΫγϣϯ΋4QBOOFSʹґଘ͠ͳ͍Α͏ந৅Խ
    w 4QBOOFSʹ͸3FBE0OMZ5SBOTBDUJPO͕ଘࡏ
    w ந৅Խͯ͠ར༻͢Δ͜ͱΑΓ΋ɺҠߦ͢Δͱ͖ʹ͢΂ͯ௚͢ίετͷํ͕௿͍
    Մೳੑ΋ߟྀͯ͠νʔϜͰ૬ஊɻ
    UZQF6TFSJOUFSGBDF\
    (FU DUYDPOUFYU$POUFYU UYEC3FBE5SBOTBDUJPO V*%TUSJOH
    EPNBJO6TFS FSSPS

    ^
    UZQF6TFSJOUFSGBDF\
    (FU DUYDPOUFYU$POUFYU UYTQBOOFS3FBE5SBOTBDUJPO V*%TUSJOH
    EPNBJO6TFS FSSPS

    ^

    View Slide

  28. 28
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦΞʔΩςΫνϟ
    w 3FBE8SJUF5SBOTBDUJPO
    JG@ FSSTQBOOFS3FBE8SJUF5SBOTBDUJPO DUY GVOD DUYDPOUFYU$POUFYU UYTQBOOFS3FBE8SJUF5SBOTBDUJPO
    FSSPS\
    V FSSSFQPT6TFS(FU DUY UY *%

    JG@ FSSEC3FBE8SJUF5SBOTBDUJPO DUY GVOD DUYDPOUFYU$POUFYU UYEC3FBE8SJUF5SBOTBDUJPO
    FSSPS\
    V FSSSFQPT6TFS(FU DUY UY *%

    w 3FBE0OMZ5SBOTBDUJPO
    UYTQBOOFS3FBE0OMZ5SBOTBDUJPO

    V FSSSFQPT6TFS(FU DUY UY *%

    UYEC3FBE0OMZ5SBOTBDUJPO
    .Z42-ʹ͸3FBE0OMZ5SBOTBDUJPO͸ͳ͍͕ʜ
    V FSSSFQPT6TFS(FU DUY UY *%

    View Slide

  29. 29
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦ࣮ࡍʹࠔͬͨ͜ͱ
    w ΫΤϦʔύϥϝʔλͷࢦఆ
    w JOUFSGBDF\^ܕͳͷͰ࣮ߦ࣌Τϥʔ͕Α͘ى͖Δ
    w ίϯύΠϧ࣌ʹؾ͕͚ͭͳ͍
    GVOD SSFQP
    (FU%PNBJO" DUYDPOUFYU$POUFYU *%JOU
    EPNBJO%PNBJO" FSSPS
    \
    TUNUTQBOOFS4UBUFNFOU\
    42-GNU4QSJOUG 4&-&$5'30.UBCMF"8)&3&*%!*%z

    1BSBNTNBQJOUFSGBDF\^\
    Ҿ਺͸JOUɺςʔϒϧͷ*%͸JOUͰ࣮ߦ࣌ʹΤϥʔ
    *%*%
    ^
    ^

    View Slide

  30. 30
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦ࣮ࡍʹࠔͬͨ͜ͱղܾࡦ
    w ΫΤϦʔύϥϝʔλͷࢦఆ
    w ύϥϝʔλ͸ඞͣ%#ͷςʔϒϧͷܕΛܦ༝ͯ͠౉͢
    UZQF%PNBJO"&OUJUZTUSVDU\
    *%JOU
    /BNFTUSJOH
    ^
    GVOD SSFQP
    (FU%PNBJO" DUYDPOUFYU$POUFYU *% JOU
    EPNBJO%PNBJO" FSSPS
    \
    QBSBNT%PNBJO"&OUJUZ\
    *%JOU JE

    ^
    TUNUTQBOOFS4UBUFNFOU\
    42-GNU4QSJOUG 4&-&$5'30.UBCMF"8)&3&*%!1BSBNT*%z

    1BSBNTNBQJOUFSGBDF\^\
    1BSBNTQBSBNT
    ^
    ^

    View Slide

  31. 31
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦศརͩͬͨ͜ͱ
    w */ͱ6//&45
    w TMJDFΛ6//&45͢Δ͜ͱͰ*/ʹ౉ͤΔ
    w .Z42-ͷͱ͖ͷ*/͸ར༻͢ΔϥΠϒϥϦґଘͩͬͨ
    GVOD SSFQP
    (FU#Z/BNFT DUYDPOUFYU$POUFYU OBNFT<>TUSJOH
    <>EPNBJO%PNBJO" FSSPS
    \

    TUNUTQBOOFS4UBUFNFOU\
    42-GNU4QSJOUG 4&-&$5'30.UBCMF"8)&3&OBNF*/6//&45 !OBNFT


    1BSBNTNBQJOUFSGBDF\^\
    OBNFTOBNFT
    ^
    ^

    ^

    View Slide

  32. 32
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦศརͩͬͨ͜ͱ
    w NVUBUJPO
    w ෳ਺ͷΫΤϦʔͷNVUBUJPOΛ࡞੒ͯ͠ಉ࣌ʹ࣮ߦ͢Δ͜ͱ͕Մೳ
    w ίʔυ্ͰτϥϯβΫγϣϯΛషͬͯɺͭͷΫΤϦʔ͕ࣦഊͨ͠ΒϩʔϧόοΫͱ
    ͍͏͜ͱΛදݱ͠ͳͯ͘Α͍
    GVOD SSFQP
    6QEBUF DUYDPOUFYU$POUFYU UYTQBOOFSVUJM8SJUF5SBOTBDUJPO EEPNBJO%PNBJO"
    FSSPS\
    F/FX&OUJUZ E

    N FSSTQBOOFS6QEBUF4USVDU F5BCMF/BNF
    F

    MPH΋ಉ࣌ʹ࡞੒
    MFF-PH

    MN FSSTQBOOFS*OTFSU4USVDU MF5BCMF/BNF
    MF

    JGFSSUY#V⒎FS8SJUF <>TQBOOFS.VUBUJPO\N MN^
    FSSOJM\
    SFUVSOFSSPST8SBQ FSS FSSUBH&SSPS5BH


    ^

    View Slide

  33. 33
    .Z42-͔Β$MPVE4QBOOFS΁ͷҠߦศརͩͬͨ͜ͱ
    w (PͷຒΊࠐΈʹରԠ͍ͯ͠Δ
    w ҎԼͷ%PNBJO"&OUJUZΛ*OTFSU͢Δ͜ͱ͕Մೳ
    UZQF%PNBJO"&OUJUZTUSVDU\
    *%TUSJOH
    %PNBJO#&OUJUZ
    ^
    UZQF%PNBJO#&OUJUZTUSVDU\
    *%TUSJOH
    /BNFTUSJOH
    ^

    View Slide

  34. • ͸͡Ίʹ
    • GAEͷۙ೥ͷಈ͖ͱ2nd-gen
    • GAEͱGKE
    • Cloud Spannerͷར༻ɺCloud SQL͔ΒͷҠߦ
    • એ఻

    View Slide

  35. 35
    ຊ౰ʹ࢖͍͍ͨͷ͸(31$
    w ࢖͍͍ͨͷ͸*%- *OUFSGBDF%FTDSJQUJPO-BOHVBHF

    w ΋ͦ͠͏ͳΒͦΕ͸(31$Ͱ͸ͳ͘1SPUPDPM#V⒎FST
    w QSPUPDHFOHPIUUQ
    w (FOFSBUFl1SPUPDPM#V⒎FST31$PO)551z$PEF*OTUFBEPG+40/31$
    w IUUQTOBNFUBLFHJUIVCJPQPTUTQSPUPDHFOHPIUUQ
    w 4VQQPSUPOMZ1045NFUIPE
    w 8BJUUPTVQQPSUPQUJPO HPPHMFBQJIUUQ
    1VMM3FRVFTU
    w 4VQQPSU1SPUPDPM#V⒎FSTBOE+40/
    w 1PTTJCMFUPVTF1SPUPDPM#V⒎FST31$PO)551PO"QQ&OHJOF
    w 3FqFDUWFSTJPO
    w $VSSFOUMZOPU044
    w 4VQQPSU1045#PEZ 1045'PSN7BMVF (&52VFSZ4USJOH

    View Slide

  36. 36
    $**NBHF
    w %PDLFS*NBHFGPSUIF(PPHMF"QQ&OHJOF(PFOWJSPONFOUTFDPOEHFOFSBUJPO
    w IUUQTHJUIVCDPNHDQVHEPDLFSBQQFOHJOFHP

    View Slide

  37. 37
    OEHFO΁ͷҠߦͷαϯϓϧίʔυ
    w IUUQTHJUIVCDPNTPOBUBSEBQQFOHJOFHPTBNQMF

    View Slide

  38. 38
    3FGFSFODF
    w "QQ&OHJOF(P
    w IUUQTDMPVEHPPHMFDPNBQQFOHJOFEPDTTUBOEBSEBQQFOHJOFHFOFSBUJPO
    w IUUQTDMPVEHPPHMFDPNBQQFOHJOFEPDTTUBOEBSEHPHPEJ⒎FSFODFT
    w IUUQTDMPVEHPPHMFDPNBQQFOHJOFEPDTTUBOEBSEHPSVOUJNF
    w ೝূͷҠߦઌ
    w IUUQTDMPVEHPPHMFDPNBQQFOHJOFEPDTTUBOEBSEHPBVUIFOUJDBUJOHVTFST
    w ΠϯετʔϧࡁΈύοέʔδ
    w IUUQTDMPVEHPPHMFDPNBQQFOHJOFEPDTTUBOEBSEHPSFGFSFODFTZTUFNQBDLBHFT
    w H7JTSP
    w IUUQTEPDTHPPHMFDPNQSFTFOUBUJPOEUSY[@LT3Z)EKD"(7,JZHUYR"&9C[-SB#%FEJUTMJEFJEQ
    w IUUQTHJUIVCDPNHPPHMFHWJTPS
    w ͱ͸EFQSFDBUFE
    w IUUQTHSPVQTHPPHMFDPNGPSVNUPQJDHPPHMFBQQFOHJOFHPFP1/PNEBL
    w αϯϓϧίʔυ
    w IUUQTHJUIVCDPN(PPHMF$MPVE1MBUGPSNHPMBOHTBNQMFT
    w $MPVEUBTLT
    w IUUQTDMPVEHPPHMFDPNUBTLTEPDTNJHSBUJOH IMFO
    w IUUQTHJUIVCDPN(PPHMF$MPVE1MBUGPSNHPPHMFDMPVEHPUSFFNBTUFSDMPVEUBTLTBQJWCFUB
    w $MPVOE'VODUJPOTBMQIB
    w IUUQTUXJUUFSDPNCSPBEZTUBUVT
    w (PPHMF"QQ&OHJOFੈ୅ަ୅
    w IUUQTEPDTHPPHMFDPNQSFTFOUBUJPOEUSY[@LT3Z)EKD"(7,JZHUYR"&9C[-SB#%FEJUTMJEFJEQ
    w 4UBDLESJWFS1SPpMFS
    w IUUQTDMPVEHPPHMFDPNQSPpMFSEPDTQSPpMJOHHP

    View Slide