Upgrade to Pro — share decks privately, control downloads, hide ads and more …

google-inside-fintech-2019-06-10

 google-inside-fintech-2019-06-10

Tomokazu Kozuma

June 10, 2019
Tweet

More Decks by Tomokazu Kozuma

Other Decks in Technology

Transcript

  1. Πϯϑϥ؅ཧෆཁͷ'JSFCBTFͱ

    (,&Ͱ࣮ݱ͢ΔϞόΠϧΞϓϦ։ൃ
    June 10th, 2019
    Tomokazu Kozuma

    View Slide

  2. Tomokazu Kozuma
    @Tomokazu106
    ౦ژ޻ۀେֶେֶӃଔۀޙɺαΠόʔΤʔδΣϯτͰεϚϗήʔϜͷαʔόɺΠϯϑϥશ
    ൠΛ୲౰ɻϒϩοΫνΣʔϯԾ૝௨՟ʹ͍ٕͭͯज़ϒϩάΛॻ͍ͯΔ͏ͪʹ೤த͠ɺຊ
    ৬ͱͯ͠஫ྗ͢ΔͨΊʹ(JODPʹೖࣾɻ(JODPͰ͸ૹۚϓϩτίϧͷ࣮૷ɺϒϩοΫ
    νΣʔϯϊʔυӡ༻ɺϋʔυϑΥʔΫରԠͳͲ෯޿͘୲౰ɻ

    View Slide

  3. ։ൃͷ࿩ͷલʹʜ(JODPʹ͍ͭͯ

    View Slide

  4. U
    U
    U
    Wallet Mining
    Solution
    ϞϯΰϧͰͷ
    Ծ૝௨՟ϚΠχϯά
    ϒϩοΫνΣʔϯͷ
    αʔϏε։ൃˍ࣮ূ࣮ݧ
    αϙʔτ
    ҆৺ɾ҆શͷ
    Ծ૝௨՟΢ΥϨοτ
    ϒϩοΫνΣʔϯʹಛԽͨ͠ݚڀɾ։ൃΛߦ͍ɺ΢ΥϨοτ΍ϚΠχϯάͳͲΛࣄۀԽ

    View Slide

  5. U
    U
    ϒϩοΫνΣʔϯʹಛԽͨ͠ݚڀɾ։ൃΛߦ͍ɺ΢ΥϨοτ΍ϚΠχϯάͳͲΛࣄۀԽ
    U
    Wallet Mining
    Solution
    ϞϯΰϧͰͷ
    Ծ૝௨՟ϚΠχϯά
    ϒϩοΫνΣʔϯͷ
    αʔϏε։ൃˍ࣮ূ࣮ݧ
    αϙʔτ
    ҆৺ɾ҆શͷ
    Ծ૝௨՟΢ΥϨοτ

    View Slide

  6. Ծ૝௨՟΢ΥϨοτͱ͸
    [
    [
    ࢿ࢈Λಈ͔͢͜ͱ͕Ͱ͖Δൿີ伴Λ؅ཧ
    [
    [
    ൿີ伴͕औΒΕΔʹࢿ࢈͕౪·ΕΔ
    Ծ૝௨՟ͷૹडۚɾऔҾཤྺɾ࢒ߴΛ؅ཧ
    αʔόܕͱΫϥΠΞϯτܕ͕͋Δ

    View Slide

  7. ΫϥΠΞϯτܕ΢ΥϨοτΞϓϦ
    Ϣʔβʔͷ୺຤಺Ͱࢿ࢈Λ҆શʹ؅ཧ
    ෳ਺ϒϩοΫνΣʔϯʹରԠ
    ࢖͍΍͘͢෼͔Γ΍͍͢6*69

    View Slide

  8. ϦϦʔε
    #$)ରԠ
    -5$ରԠ
    931ରԠ
    ¥10,000,000,00
    &5$ରԠ
    ྦྷܭೖֹۚۚ
    μ΢ϯϩʔυ਺
    ԯԁ
    100
    50,000 DL+
    ࠃ಺།ҰͷϚϧνϒϩοΫνΣʔϯରԠ
    %&9ػೳ΍ϙʔτϑΥϦΦػೳ΋׬උ

    View Slide

  9. ࣄۀऀ޲͚΢ΥϨοτγεςϜ
    U
    ࢿ࢈͸ϚϧνγάͰ؅ཧ
    U
    ൿີ伴͸Ϣʔβʔͷ୺຤಺Ͱ҆શʹ؅ཧ
    U
    ෳ਺ϒϩοΫνΣʔϯʹରԠ

    View Slide

  10. ಠࣗͷݎ࿚ͳΠϯϑϥ
    શͯͷϒϩοΫνΣʔϯ
    ϊʔυΛࣗΒ؅ཧӡ༻
    ϒϩοΫνΣʔϯͷσʔλΛ

    ݕࡧ͢ΔγεςϜΛࣗ෼ୡͰߏங
    ߴ͍εέʔϥϏϦςΟ
    Node Block Explorer Scalability

    View Slide

  11. (JODPͷઆ໌͸Ҏ্

    View Slide

  12. ϞόΠϧΞϓϦͷٕज़બఆ

    View Slide

  13. ϦϦʔε·Ͱͷ։ൃνʔϜ
    [
    [
    όοΫΤϯυΤϯδχΞਓ
    J04ΤϯδχΞਓ

    View Slide

  14. ݄ ݄ ݄ ݄ ݄
    ཁ݅ఆٛ
    Ќ൛։ൃ
    Ќ൛ʢ&5)ʣ
    ϦϦʔε
    W։ൃ
    ਖ਼ࣜ൛ʢ#5$ʣ
    ϦϦʔε
    ։ൃεέδϡʔϧ

    View Slide

  15. [
    [
    [
    ൿີ伴ͷ҆શͳ؅ཧ௨՟ରԠ ΫϥΠΞϯτͰ࣮૷
    ϒϩοΫνΣʔϯϊʔυӡ༻ ,VCFSOFUFT (,&

    ɾϚϧνϒϩοΫνΣʔϯ
    ɾՄ༻ੑ
    ϒϩοΫΤΫεϓϩʔϥͷߏங
    ɾૹडۚͷऔҾཤྺ
    'JSFCBTF
    ɾΞυϨε௨՟ผͷ࢒ߴ؅ཧ
    ΢ΥϨοτʹඞཁͳ΋ͷ

    View Slide

  16. [
    [
    ஫ྗ͢΂͖͸ൿີ伴ͷ؅ཧɺ௨՟ରԠɺ6*69
    ϊʔυӡ༻ͱϒϩοΫΤΫεϓϩʔϥ΋ॏཁ͚ͩͲ
    ෛ୲ΛݮΒ͍ͨ͠
    ͦͷͨΊʹ(,&ͱ'JSFCBTFΛར༻
    ॏཁͳ͜ͱʹ஫ྗ͍ͨ͠

    View Slide

  17. (,&Λ࢖ͬͨϒϩοΫνΣʔϯϊʔυӡ༻

    View Slide

  18. [
    [
    • "͕#ʹૹͬͨͱ͍͏ཤྺʢτϥϯβΫγϣϯʣΛอ࣋
    • ୭ͷڐՄ΋ͳ͘ӡ༻Ͱ͖த਎Λ֬ೝͰ͖Δ
    • ϊʔυ͸ੈքதͰӡ༻͞Ε͍ͯͯɺ૬ޓʹσʔλΛड͚౉͢͜ͱͰಉ͡σʔλΛಉظ
    ϒϩοΫνΣʔϯͱ͸
    ΢ΥϨοτΛ։ൃ͢Δ্ͰϒϩοΫνΣʔϯ্ͷσʔλʹৗʹΞΫηεͰ͖Δ͜ͱ͕ॏཁ

    View Slide

  19. [
    [
    [
    ϒϩοΫνΣʔϯϊʔυͷӡ༻Ͱେࣄͳ͜ͱ
    Մ༻ੑ
    ֤ϊʔυͷόʔδϣϯΞοϓͷ͠΍͢͞
    3%͕͠΍͍͢

    View Slide

  20. [
    • ঢ়ଶΛίʔυͰઃఆˠએݴతઃఆ
    • มߋΛՃ͑ΒΕͳ͍৽نͰ࡞Γ௚͢ˠ*NNVUBCJMJUZ
    • ࢦఆͨ͠ঢ়ଶʹࣗಈͰम෮ˠηϧϑώʔϦϯά
    [
    • શͯͷΠϯϑϥΛZBNMϑΝΠϧͰ؅ཧͰ͖ɺ$*πʔϧΛ࢖ͬͯσϓϩΠՄೳ
    • ߏங͢΂͖Ϧιʔεଟ͍ͷͰΠϯελϯεΑΓ΋ίϯςφͷํ͕։ൃӡ༻ָ͕
    • ىಈ͕ૣ͍ͷͰ࡞ͬͯյͯ͠ͷ3%͕΍Γ΍͍͢
    બఆཧ༝
    ,VCFSOFUFTͷಛ௃

    View Slide

  21. [
    (,&ͷಛ௃
    • ,VCFSOFUFTͷϑϧϚωʔδυαʔϏε
    • ΫϥελʔͷΦʔτεέʔϦϯά
    • ,VCFSOFUFTͷࣗಈΞοϓάϨʔυ
    • 4UBDLESJWFSʹΑΔϩΪϯάϞχλϦϯά

    View Slide

  22. [
    ଞࣾϑϧϚωʔδυ,VCFSOFUFTͱͷҧ͍
    • ϩΪϯάϞχλϦϯάͷ࢖༻ʹ௥Ճઃఆ͸ඞཁͳ͍
    • *OHSFTTʹࣗಈͰ-ͷ-#ׂ͕Γ౰ͯΒΕΔ
    • Φʔτεέʔϧͷઃఆ͸0/0''ͷ੾Γସ͑ͷΈ
    • ,VCFSOFUFTͷࣗಈόʔδϣϯΞοϓʢ0/0''Ͱ੾Γସ͑Մೳʣ
    [
    (,&ͳΒઃఆͳ͠ʹ͙͢ʹ࢖͍࢝ΊΒΕΔ

    View Slide

  23. (JODPͰ࣮ࡍʹͲͷ͘Β͍࢖༻͍ͯ͠Δ͔

    View Slide

  24. Engine
    Kubernetes
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    ཤྺ༻
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    ૹۚ༻
    ؀ڥ͋ͨΓϊʔυ

    View Slide

  25. %FWFMPQɿ5FTUOFU 4UBHJOHɿ-JWFOFU 1SPEVDUJPO-JWFOFU
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    Bitcoin Bitcoin
    Bitcoin Cash
    Bitcoin Cash
    Litecoin Litecoin
    XRP XRP
    Ethereum Ethereum
    Classic
    Ethereum
    Classic
    Ethereum
    [
    • શ؀ڥͰϊʔυҎ্Λӡ༻
    • ϒϩΫνΣʔϯಛԽͷϔϧενΣοΫػೳ
    • ಠࣗͷϑΣΠϧΦʔόʔػೳ
    શ؀ڥ

    View Slide

  26. [
    Bitcoin
    )FBMUI$IFDL

    4FSWJDF
    #MPDL)FJHIU
    Bitcoin
    Bitcoin
    Engine
    Kubernetes

    [
    ࠷৽ϒϩοΫΛಉظͰ͖͍ͯͳ͍৔߹-#͔Β֎͢
    -BUFTU#MPDL
    ϒϩοΫνΣʔϯಛԽͷϔϧενΣοΫػೳ

    View Slide

  27. [
    Bitcoin
    )FBMUI$IFDL

    4FSWJDF
    /PEF"
    Bitcoin
    Bitcoin
    Engine
    Kubernetes
    /PEF# /PEF$
    [
    ಉظͰ͖͍ͯͳ͍ϊʔυʹਖ਼ৗͳϊʔυΛڭ͑઀ଓͤ͞Δ
    /PEF$ʹ"Λڭ͑Δ
    ಠࣗͷϑΣΠϧΦʔόʔػೳ

    View Slide

  28. [
    CircleCI
    Engine
    Container
    $MPVE

    #VJME
    Engine
    Kubernetes
    Stackdriver
    $POUBJOFS

    3FHJTUPSZ
    ᶄϏϧυ5FTU
    ᶅ*NBHFΛϏϧυ
    ᶆ*NBHFΛొ࿥ ᶇ1PEͷ*NBHFͷߋ৽
    GitHub
    ᶃϚʔδͨ͠ΒΩοΫ
    (,&΁ͷσϓϩΠ

    View Slide

  29. ,VCFSOFUFTΛ࢖ͬͯͷར఺
    [
    [
    [
    ϚΠΫϩαʔϏεͱͯ͠ಠࣗͷػೳΛ௥Ճ͠΍͍͢
    ༷ʑͳछྨͷϦιʔε؅ཧͱσϓϩΠ͕༰қ
    (,&ͳΒॳظઃఆ͕ॆ࣮͍ͯ͠ΔͷͰ͙͢ʹຊ൪ར༻Ͱ͖Δ

    View Slide

  30. 'JSFCBTFΛ࢖ͬͨϒϩοΫΤΫεϓϩʔϥͷߏங

    View Slide

  31. [
    • ϒϩοΫνΣʔϯͷσʔλΛݕࡧ͢ΔγεςϜ
    • ϒϩοΫνΣʔϯϊʔυࣗମʹॊೈͳݕࡧγεςϜ͕ͳ͍
    • ϒϩοΫνΣʔϯϊʔυ͸ߴෛՙʹ͸଱͑ΒΕͳ͍
    • ΢ΥϨοτʹݶΒͣϒϩοΫνΣʔϯΛ࢖ͬͨαʔϏεΛ࡞Δʹ͸Ϛετͳػೳ
    ϒϩοΫνΣʔϯ
    ϒϩοΫΤΫεϓϩʔϥ 5Y ࢒ߴ
    ϒϩοΫΤΫεϓϩʔϥʔͱ͸ʁ

    View Slide

  32. ϒϩοΫΤΫεϓϩʔϥʔͰେࣄͳ͜ͱ
    [
    [
    [
    શͯͷϒϩοΫνΣʔϯͰͷ౷ҰతͳΠϯλʔϑΣʔε
    σʔλݕࡧͷ͠΍͢͞
    ϦΞϧλΠϜʹมߋΛऔಘͰ͖Δ

    View Slide

  33. [
    [
    ଞࣾ੡ϒϩοΫΤΫεϓϩʔϥ
    ࣗࣾ੡ϒϩοΫΤΫεϓϩʔϥ
    #JUDPJOͷΤΫεϓϩʔϥ
    &UIFSFVNͷΤΫεϓϩʔϥ
    3JQQMFͷΤΫεϓϩʔϥ
    ɾ
    ɾ
    (JODPͷϒϩοΫΤΫεϓϩʔϥ
    ̍ͭͰෳ਺ରԠ

    View Slide

  34. ϒϩοΫΤΫεϓϩʔϥʔΛࣗ࡞͢Δཧ༝
    ଞࣾ੡ ࣗࣾ੡
    ϝϦοτ ͙͢࢖͍࢝ΊΒΕΔ
    શϒϩοΫνΣʔϯͰ*'Λ౷Ұ
    ϦΞϧλΠϜʹऔಘ͢Δ৔߹΋*'Λ౷Ұ
    σϝϦοτ ϒϩοΫνΣʔϯຖʹ*'͕มΘΔ ϒϩοΫνΣʔϯͷਂ͍ཧղͱ࣮૷޻਺

    View Slide

  35. ϒϩοΫΤΫεϓϩʔϥͷߏஙͷมભ

    View Slide

  36. [
    • ("&$MPVE%BUBTUPSFΛ࢖༻
    • "1*࣮૷ɺΠϯλʔϑΣʔεͷࡲΓ߹Θͤʹ࣌ؒΛফඅ
    • ϦΞϧλΠϜʹσʔλऔಘ͢Δʹ͸͞Βʹ޻਺͕͔͔Δ
    • ਓ਺͕গͳ͍ͨΊ஫ྗ͍ͨ͠΢ΥϨοτͷ։ൃʹूதͰ͖ͳ͍
    Cloud Datastore
    ϒϩοΫΤΫεϓϩʔϥ
    ։ൃॳظ

    View Slide

  37. [
    • N#BB4ɿϞόΠϧόοΫΤϯυαʔϏε
    • αʔόαΠυͷ։ൃ޻਺Λ࡟ݮ͢ΔͨΊʹϓογϡ௨஌ͳͲ

    ൚༻ػೳΛΫϥ΢υαʔϏεͱͯ͠ఏڙ
    • "VUI %BUBTUPSFʢ'JSFTUPSFʣ 4UPSBHF 'VODUJPOT
    • .FTTBHJOH "OBMZUJDT 3FNPUF$POpH )PTUJOH
    'JSFCBTFͱ͸ʁ

    View Slide

  38. [
    • αʔόϨεͰ؅ཧίετແ͠
    • άϩʔόϧϨϕϧͷεέʔϦϯά଱ੑ
    • ϦΞϧλΠϜΞοϓσʔτ
    • ΦϑϥΠϯαϙʔτ
    • $MPVE'VODUJPOTͳͲଞαʔϏεͱͷ࿈ܞ
    $MPVE'JSFTUPSFಛ௃

    View Slide

  39. [
    Cloud Datastore
    ϒϩοΫΤΫεϓϩʔϥ
    'JSFTUPSFͰͲ͏มΘ͔ͬͨ

    View Slide

  40. [
    $MPVE'JSFTUPSFʹͯ͠ಘΒΕͨϝϦοτ
    • ௚઀ΞΫηε͢Δ͜ͱͰHFUTFUܥͷ"1*͕ඞཁͳ͍
    • XFCTPDLFUͷ࣮૷ͳ͠ʹϦΞϧλΠϜͳมߋΛऔಘͰ͖Δ
    • Πϯϑϥͷෳࡶੑ͕ͳ͘ͳΔ
    • αʔό։ൃ؅ཧςετ޻਺Λ࡟ݮ
    • ͦͷ݁Ռɺൿີ伴ͷ؅ཧɺෳ਺௨՟ରԠɺ6*69ͷ࣮૷ʹઐ೦

    View Slide

  41. 'JSFTUPSF࢖ͬͯΈͯͷ஌ݟ

    View Slide

  42. 'JSFTUPSFΛ࢖ͬͯΈͯͷ஌ݟ
    [
    [
    ϥϯχϯάίετӡ༻ίετ
    ΞΫηείϯτϩʔϧ

    View Slide

  43. ϥϯχϯάίετӡ༻ίετ

    View Slide

  44. [
    'JSFTUPSFͷඅ༻ײ
    • શ؀ڥ߹Θͤͯ΋ສԁఔ౓
    • ىಈ࣌ؒͰ͸ͳ͘ݺͼग़͠ճ਺ͱอଘσʔλྔʹ՝ۚ͞ΕΔ
    • ແྉ࿮͕͋ΔͷͰɺϦϦʔε·Ͱ͸ίετΛ཈͑Δ͜ͱ͕Ͱ͖Δ
    • ແྉ࿮͸σΠϦʔ3FBEສճɺ8SJUF%FMFUFສճ
    • ϦϦʔεલ͸݄ສԁఔ౓ͱελʔτΞοϓʹ༏͍͠

    View Slide

  45. [
    'JSFTUPSFͷ৑௕Խ
    • σʔλͷ৑௕Խ͸κʔϯؒͰࣗಈͰෳ੡͞ΕΔ
    • ϚϧνϦʔδϣϯͰͷ৑௕Խ΋ઃఆՄೳ
    • ࡞੒࣌ʹεϖοΫͷઃఆ͕͍Βͳ͍
    • ؆୯ʹ࢖͍࢝ΊΒΕͯͦͷ··ຊ൪ӡ༻͕Ͱ͖Δ
    • 'JSFTUPSFͳΒΠϯϑϥઐ೚ͷΤϯδχΞ͸ඞཁͳ͍

    View Slide

  46. [
    'JSFTUPSFͷεΩʔϚΠϯσοΫε
    • εΩʔϚϨεͳͷͰϚΠάϨʔγϣϯ͕͍Βͳ͍
    • "MUFSจ͸ͳ͍ͷͰࣗྗͰόονΛ࣮૷͢Δඞཁ͕͋Δ
    • ୯ҰϑΟʔϧυͷΠϯσοΫε͸ࣗಈͰுͬͯ͘ΕΔ
    • ෳ਺ϑΟʔϧυʹର͢ΔΫΤϦ͸ෳ߹ΠϯσοΫε͕ඞਢ

    View Slide

  47. [
    ӡ༻ϝϯόʔ
    • ࠷ऴతʹΞϓϦΤϯδχΞͷΈͰӡ༻
    • %#ઃܭ͸ϊ΢ϋ΢͕ඞཁͳͷͰ૬ஊ͠ͳ͕ΒਐΊΔ
    • ΞϓϦΤϯδχΞͷ੹೚ൣғ͕޿͘ͳΔ͕

    খ͍͞νʔϜͰεέʔϧ͢ΔαʔϏεΛ࡞Δ͜ͱ͕Ͱ͖Δ

    View Slide

  48. 'JSFTUPSFͷΞΫηείϯτϩʔϧ

    View Slide

  49. [
    'JSFTUPSFͷΞΫηείϯτϩʔϧ
    • ΫϥΠΞϯτ͔Β௚઀'JSFTUPSFʹΞΫηεՄೳ
    • ΞΫηεʹ͸"1*Ωʔ͕ඞཁ
    • "1*Ωʔ͸ΫϥΠΞϯτʹຒΊࠐΉͷͰ୭Ͱ΋֬ೝՄೳ
    • ୭Ͱ΋ΞΫηεͰ͖ΔͨΊSVMFTͰ੍ޚ
    [
    "1*ΩʔͰΞΫηε

    View Slide

  50. [
    Firestore
    Cloud
    Rules
    "1*ΩʔͰΞΫηε
    • SFBEXSJUFݖݶ
    • σʔλͷόϦσʔγϣϯ
    'JSFTUPSFSVMFT

    View Slide

  51. [
    match /Users/{uid} {
    allow get: if someCondition();
    allow create: if someCondition();
    }
    function someCondition() { … }
    SFBE୯ҰEPDΛऔಘ͢ΔHFUͱෳ਺औಘ͢ΔMJTU
    XSJUFDSFBUF VQEBUF EFMFUF
    SFBEXSJUFݖݶ

    View Slide

  52. [
    match /Users/{uid} {
    allow update: if
    request.resource.data.keys().hasOnly(["name", "age"])
    && request.resource.data.name is string
    && request.resource.data.name != ""
    && request.resource.data.age == resource.data.age
    }
    'JSFTUPSFͷมߋલͷσʔλɿSFTPVSDFEBUB
    'JSFTUPSFͷมߋޙͷσʔλɿSFRVFTUSFTPVSDFEBUB
    ܕɿJOU TUSJOH CPPM UJNFTUBNQͳͲ
    LFZɿIBT"MM IBT0OMZ IBT"OZ
    σʔλͷόϦσʔγϣϯ

    View Slide

  53. [
    'JSFCBTF-PDBM&NVMBUPS
    • ೥݄ʹ'JSFTUPSF-PDBM&NVMBUPS͕ൃද
    • SVMFTͷςετ͸ϩʔΧϧ؀ڥ͚ͩͰ׬݁
    • ଞਓͷ࡞ۀΛҙࣝ͠ͳͯ͘ྑ͘ͳͬͨͷͰSVMFTͷ௥Ճɾमਖ਼͕͠΍͘͢ͳͬͨ
    • ςετ࣮ߦ࣌ؒ͸ʹ࡟ݮ

    View Slide

  54. 'JSFCBTFͷͦͷଞͷػೳʹ͍ͭͯ

    View Slide

  55. [
    • ϓογϡ௨஌
    • Ϋϥογϡϩάʢ*TTVFԽ4MBDL௨஌ʣ
    • Ϣʔβʔߦಈϩάͷه࿥
    • ڧ੍Ξοϓσʔτ
    • 'JSFTUPSFͷόοΫΞοϓͱ#JH2VFSZ࿈ܞ
    • ϞχλϦϯά
    ΢ΥϨοτҎ֎ͷػೳ

    View Slide

  56. [
    Functions
    Cloud
    ᶃσʔλ͕ߋ৽͞ΕͨΒ'VODJUPOTΛىಈ ᶄ.FTTBHJOHʹ௨஌
    ᶅ.FTTBHJOH͔Β୺຤ʹ௨஌
    Firestore
    Cloud
    Messaging
    Cloud
    ϓογϡ௨஌

    View Slide

  57. [
    Ϋϥογϡϩά
    ᶃΫϥογϡϩάΛ௨஌
    Functions
    Cloud
    ᶄ'VODUJPOΛىಈ
    ᶆ(JU)VCʹJTTVF࡞੒
    Crashlytics
    GitHub
    Slack
    ᶇ4MBDLʹ௨஌
    ᶅ'VODUJPO͔Β֤छαʔϏεʹ௨஌

    View Slide

  58. [
    ᶃΞΫγϣϯΛ&WFOUʹϓογϡ
    Analytics
    Functions
    Cloud
    ᶄ&WFOUΛτϦΨʔʹىಈ
    ֎෦ API
    ᶅ֎෦"1*Λ࣮ߦʢ޿ࠂͷଌఆʣ
    ΞΫγϣϯͷαϚϦΛݟΕΔ
    Ϣʔβʔߦಈϩάͷه࿥

    View Slide

  59. [
    ڧ੍Ξοϓσʔτ
    Config
    Remote
    ᶃىಈ࣌ʹ3FNPUF$POpH͔Β࠷௿όʔδϣϯΛऔಘ
    04ผʹ࠷௿όʔδϣϯΛઃఆ
    ɾJ04W
    ɾ"OESPJEW

    View Slide

  60. [
    'JSFTUPSFͷόοΫΞοϓͱ#JH2VFSZ࿈ܞ
    Scheduler
    Cloud
    Functions
    Cloud
    ᶃ#BDLVQ"1*Λ࣮ߦ
    Storage
    Cloud
    ᶄ#BDLVQϑΝΠϧ͕࡞੒͞ΕΔ
    BigQuery
    ᶅ#BDLVQϑΝΠϧͷ࡞੒͕׬ྃޙ

    ɹ#JH2VFSZ΁ϩʔυ͢Δ"1*Λ࣮ߦ

    View Slide

  61. [
    4UBDLESJWFS-PHHJOH.POJUPSJOH
    Engine
    Kubernetes
    Stackdriver
    Functions
    Cloud
    Slack
    ᶅᮢ஋Λ௒͑ͨΒ௨஌
    ᶄ4UBDLESJWFSͰϞχλϦϯά
    ᶃࣗಈͰ4UBDLESJWFSʹूܭ͞ΕΔ

    View Slide

  62. 4UBDLESJWFS-PHHJOH

    View Slide

  63. 4UBDLESJWFS&SSPS3FQPSUJOH

    View Slide

  64. 4UBDLESJWFS.POJUPSJOH

    View Slide

  65. ·ͱΊ
    [
    [
    [
    (,&Λ࢖͏͜ͱͰ๲େͳϦιʔε؅ཧ͕༰қʹͳΔ
    'JSFCBTFͳΒখ͍͞νʔϜͰ΋εέʔϥϒϧͳαʔϏε։ൃ͕Ͱ͖Δ
    ݁Ռͱͯ͠伴؅ཧɺ௨՟ରԠɺ6*69ͳͲॏཁͳ͜ͱʹ࣌ؒΛ࢖͑Δ

    View Slide