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

わたしの研究開発紹介 - 技術者から研究者へ - / Introduction to my research

わたしの研究開発紹介 - 技術者から研究者へ - / Introduction to my research

1. なぜ技術者から研究者へ転向したのか
2. 事業での実践を研究へ昇華した事例 (前職)
3. 今後の研究開発の構想 (さくらインターネット)

Yuuki Tsubouchi (yuuk1)

April 10, 2019
Tweet

More Decks by Yuuki Tsubouchi (yuuk1)

Other Decks in Research

Transcript

  1. ͘͞ΒΠϯλʔωοτ
    גࣜձࣾ
    (C) Copyright 1996-2019 SAKURA Internet Inc
    ͘͞ΒΠϯλʔωοτ
    ݚڀॴ
    Θͨ͠ͷݚڀ։ൃ঺հ
    - ٕज़ऀ͔Βݚڀऀ΁ -
    2019/04/10 ݚڀһ ௶಺ ༎थ
    @yuuk1t / id:y_uuki

    View Slide

  2. 2
    ࣗݾ঺հ
    ௶಺ ༎थ / Ώ͏͏͖ https://yuuk.io/
    େࡕେֶ جૅ޻ֶ෦ ৘ใՊֶՊ
    େࡕେֶ େֶӃ৘ใՊֶݚڀՊ
    ɹ৘ใωοτϫʔΫֶઐ߈ ത࢜લظ՝ఔ
    ܦྺ
    גࣜձࣾ͸ͯͳ
    WebΦϖϨʔγϣϯΤϯδχΞɾSRE
    ͘͞ΒΠϯλʔωοτגࣜձࣾ
    ͘͞ΒΠϯλʔωοτݚڀॴ ݚڀһ
    ฒྻॲཧ
    TCP/IPελοΫ
    WebαʔϏεͷ
    ։ൃɾӡ༻
    WebɾΠϯλʔωοτ
    ج൫ٕज़ݚڀ
    5.5೥
    5೥
    ݱࡏ

    View Slide

  3. 3
    1. ͳٕͥज़ऀ͔Βݚڀऀ΁స޲ͨ͠ͷ͔
    2. ࣄۀͰͷ࣮ફΛݚڀ΁ঢ՚ͨ͠ࣄྫ (લ৬)
    3. ࠓޙͷݚڀ։ൃͷߏ૝ (͘͞ΒΠϯλʔωοτ)
    ͓఻͍͑ͨ͜͠ͱ
    ͜ΕΒͷҰ߲໨͝ͱʹ࣭ٙͷ࣌ؒΛ͍͍ͨͩͯ
    ٞ࿦ϕʔεͰ͓࿩ΛਐΊ͍͚ͤͯͨͩ͞Ε͹ͱࢥ͍·͢

    View Slide

  4. 1.
    ͳٕͥज़ऀ͔Βݚڀऀ΁స޲ͨ͠ͷ͔

    View Slide

  5. 5
    ͜͜Ͱͷٕज़ऀͱ͸
    ɾΠϯλʔωοταʔϏεΛ։ൃɾӡ༻͢ΔͨΊͷٕज़Λ਎ʹ͚ͭɺ
    ໰୊Λղܾ͢Δਓ
    ɾ։ൃɾӡ༻ٕज़ͷதͰ΋ɺOSS΍Ϋϥ΢υίϯϐϡʔςΟϯάΛओ
    ʹར༻͍ͯ͠Δ
    ɾWeb্Ͱٕज़ʹؔ͢Δ৘ใΛΦʔϓϯʹڞ༗͠ɺڞ༗͞Εͨ಺༰Λ
    ࣗ෼ͨͪͷϓϩμΫτʹ൓ө͢ΔྲྀΕ͕͋Δ
    ɾձࣾͷϓϩμΫτҎ֎ʹɺࣗ਎ͷண૝Λιϑτ΢ΣΞͰ࣮ݱ͠ɺ
    OSSͱͯ͠ެ։͍ͯ͠Δਓͨͪ΋͍Δ
    ɾ৽ͯ͘͠༗༻ͳʮ୅දతϓϩμΫτʯͱݺ͹ΕΔ΋ͷ͕ੜ·ΕΔ

    View Slide

  6. 6
    ࣗ਎ͷٕज़ʹର͢ΔϞνϕʔγϣϯ
    ɾ࡞ऀͷإ͕ݟ͑ΔΑ͏ͳ୅දతϓϩμΫτΛ࡞Γ͍ͨ
    ɾ୅දతϓϩμΫτΛ࡞ΔաఔͰɺ஥ؒͱٞ࿦͠ɺࢥߟ͠ͳ͕Βࣗ෼
    ͷண૝Λ࣮ݱ͍ͯ͘͜͠ͱࣗମָ͕͍͠
    ɾ୯ൃͷ੒ՌͰऴΘΒͣʹɺෳ਺ͷ୅දతϓϩμΫτΛҰͭྲྀΕͱ͠
    ͯ๰͍ͰɺΑΓେ͖ͳ੒Ռͱͳ͍͚ͬͯ͹ɺΑΓָ͍͠͸ͣ
    ɾ݁Ռతʹɺ୅දతϓϩμΫτΛ࡞Γଓ͚ΒΕΔঢ়ଶͱͳΓɺָ͠͞
    ΛܧଓͰ͖Δ

    View Slide

  7. 7
    ࠷ۙͷٕज़ͷைྲྀʹର͢Δҧ࿨ײ
    ɾେखΫϥ΢υࣄۀऀ͕ఏڙ͢ΔϚωʔδυαʔϏε΍ɺେ͖ͳਓؾ
    ΛތΔج൫ιϑτ΢ΣΞ͕OSSͱͯ͠ొ৔͖ͯͨ͠
    ɾ͜ΕΒΛ࢖͏͚ͩͰ໨ͷલͷ໰୊͕ղܾͯ͠͠·͍ͭͭ͋Δ
    ɾاۀͱͯ͠͸ɺ໰୊͕ղܾ͢ΔͷͰ͋Ε͹ͦΕͰҰݟΑͦ͞͏ͩ
    ͕ɺࣗ෼ͨͪͰ։ൃ͠ͳ͘ͳΓɺࣗࣾͷٕज़ͰࠩผԽͰ͖ͳ͘ͳΔ
    ɾݸਓͱͯ͠͸ɺ୅දతϓϩμΫτͷ։ൃ͢Δ໨ඪ͔Β͸ԕ͔ͬͯ͟
    ͠·͏
    ɾධՁ͕ओ؍తͳͨΊʹɺͲΜͳ৚݅Λຬͨͤ͹ɺ৽ͯ͘͠༗༻ͳ୅
    දతϓϩμΫτͱݴ͑Δͷ͔͕Θ͔Βͳ͍

    View Slide

  8. 8
    ݚڀͷੈք΁ண໨
    ɾ໨ͷલͷ໰୊͚ͩͰͳ͘ɺ਺೥ઌΛݟਾ͑ͨ໰୊ʹऔΓ૊Ή͜ͱ
    Ͱɺݸਓͱͯ͠ͷ୅දతϓϩμΫτͷ։ൃΛ࠶౓໨ࢦ͢
    ɾ࡞Γํ͕Θ͔Βͳ͍ͨΊɺ୅දతϓϩμΫτΛҰ଍ඈͼʹ͸࡞Εͳ
    ͍ɻҰาҰาਐΉͨΊͷʮ٬؍తج४ʯΛઃఆ͢Δ
    ɾֶज़ݚڀͷੈքʹ͸ɺ͔͍͍ͬ͜ͱࢥ͑Δ٬؍తج४ͱͯ͠ɺࠪಡ
    ΍৹ࠪΛલఏͱͨ͠ձٞɺ࿦จࢽɺത࢜߸ͳͲ͕͋Δ
    ɾ͞Βʹɺֶज़࿦จࣗମʹ΋৽نੑɾ༗༻ੑͳͲͷ٬؍తج४͕͋Δ
    ɾ։ൃͨ͠ιϑτ΢ΣΞΛ΋ͬͯ٬؍తج४ʹ௅ઓ͠ϑΟʔυόοΫ
    Λಘͯɺ୅දతϓϩμΫτ΁޲͔͍ɺࣗ෼Λָ͍͠ঢ়ଶʹஔ͘

    View Slide

  9. 9
    ݚڀ։ൃ࣮੷1
    1.௶಺༎थ, ࣗવͷ͝ͱ͘ෳࡶԽͨ͠΢ΣϒγεςϜͷࣗ཯తӡ༻ʹ޲͚ͯ, ਓ޻஌ೳֶձ ߹ಉݚڀձ ୈ3ճ΢Σϒ
    αΠΤϯεݚڀձ(ট଴ߨԋ), 2017೥11݄24೔
    2.௶಺༎थ, ߴ౓ʹൃୡͨ͠γεςϜͷҟৗ͸ਆͷౖΓͱݟ෼͚͕͔ͭͳ͍, IPSJ-ONE 2017, 2017೥03݄18೔
    3.௶಺༎थ, αʔόϞχλϦϯά޲͚࣌ܥྻσʔλϕʔεͷ୳ڀ, ୈ9ճΠϯλʔωοτͱӡ༻ٕज़γϯϙδ΢Ϝ
    (IOTS2016)(ট଴ߨԋ), 2016೥12݄01೔
    ɾࠪಡ෇͖࿦จ(ࠃ಺)
    ɾߨԋ(ࠃ಺)
    1.௶಺༎थ, ࿬ࡔேਓ, ᖛా݈, দ໦խ޾, Ѩ෦ത, দຊ྄հ, “HeteroTSDB: ҟछࠞ߹ΩʔόϦϡʔετΞΛ༻͍ͨࣗಈ
    ֊૚ԽͷͨΊͷ࣌ܥྻσʔλϕʔεΞʔΩςΫνϟ”, Πϯλʔωοτͱӡ༻ٕज़γϯϙδ΢Ϝ࿦จू, 2018, 7-15
    (2018-11-29), 2018೥12݄.
    ɾࠃࡍձٞ࿦จ
    1.Yuuki Tsubouchi, Asato Wakisaka, Ken Hamada, Masayuki Matsuki, Hiroshi Abe, Ryosuke Matsumoto, “HeteroTSDB:
    An Extensible Time Series Database for Automatically Tiering on Heterogeneous Key-Value
    Stores”, Proceedings of The 43rd Annual International Computers, Software & Applications Conference (COMPSAC),
    July 2019. (to apper)

    View Slide

  10. 10
    ݚڀ։ൃ࣮੷2
    ɾॻ੶ɾࡶࢽ
    1.Ҫ্େี,പ୩େี,ਿࢁ޿௨,ాத৻࢘,௶಺༎थ,দ໦խ޾, Mackerel αʔό؂ࢹʦ࣮ફʧೖ໳, ٕज़ධ࿦ࣾ, 2017೥8
    ݄26೔
    2.௶಺༎थ, MackerelͰ͸͡ΊΔαʔό؅ཧ ୈ17ճ ϩʔϧฤ੒ͷߟ͑ํ, Software Design 2016೥7݄߸, ٕज़ධ࿦ࣾ,
    2016೥6݄18೔
    3.௶಺༎थ, MackerelͰ͸͡ΊΔαʔό؅ཧ ୈ13ճ MackerelͱServerspecΛ૊Έ߹ΘͤͨΠϯϑϥςετ, Software
    Design 2016೥3݄߸, ٕज़ධ࿦ࣾ, 2016೥2݄18೔
    4.௶಺༎थ, MackerelͰ͸͡ΊΔαʔό؅ཧ ୈ9ճ MackerelͷΞʔΩςΫνϟΛ஌Δ, Software Design 2015೥11݄߸,
    ٕज़ධ࿦ࣾ, 2015೥10݄17೔
    5.௶಺༎थ, Perl Hackers Hub ୈ34ճ DockerʹΑΔPerlͷWebΞϓϦέʔγϣϯ։ൃ, WEB+DB PRESS Vol.88, ٕज़
    ධ࿦ࣾ, 2015೥8݄24೔
    6.௶಺༎थ, MackerelͰ͸͡ΊΔαʔό؅ཧ ୈ6ճ Mackerelपลͷӡ༻πʔϧͱAWS࿈ܞϊ΢ϋ΢, Software Design
    2015೥8݄߸, ٕज़ධ࿦ࣾ, 2015೥7݄18೔
    7.௶಺༎थ, MackerelͰ͸͡ΊΔαʔό؅ཧ ୈ3ճ ӡ༻͠ͳ͕ΒҭͯΔαʔό؂ࢹͷϧʔϧ, Software Design 2015೥5
    ݄߸, ٕज़ධ࿦ࣾ, 2015೥4݄18೔

    View Slide

  11. 11
    ത࢜՝ఔ΁ͷؔ৺
    ɾτοϓΧϯϑΝϨϯε(COMPSAC)ʹࠪಡΛ௨ͤͨ͜ͱ΋͋Γɺ୅
    දతϓϩμΫτΛ࡞Εͨ͜ͱΛ٬؍తʹࣔ͢͜ͱ͕Ͱ͖ͭͭ͋Δ
    ɾ͔͠͠ɺ࣍ͷண૝͔Β୅දతϓϩμΫτΛ࡞Εͨͱͯ͠ɺҰͭͷε
    τʔϦʔʹ݁߹͢Δʹ͸ɺͦΕ·Ͱͱ͸ҟͳΔೳྗ͕ඞཁʹࢥ͑Δ
    ɾෳ਺ͷݚڀΛ౷߹͠ɺҰͭʹ·ͱΊΔͱ͍͏ത࢜࿦จͷϑϨʔϜ
    ϫʔΫΛҎͬͯɺετʔϦʔʹ·ͱΊΔೳྗΛ਎ʹண͚ΒΕͳ͍͔
    ͱ͍͏ظ଴Λ΋͍ͬͯΔ

    View Slide

  12. 2.
    ٕज़ऀͱͯ͠ͷ੒ՌΛ·ͱΊͨݚڀ

    View Slide

  13. 13
    ٕज़ऀͱͯ͠ͷ੒Ռ
    ɾαʔό؂ࢹαʔϏεΛ։ൃɾӡ༻͍ͯͨ͠
    ɾαʔϏεར༻ऀ͔Βͷɺ؂ࢹର৅ͷখ͞ͳมԽΛݟಀ͞ͳ͍ͨΊʹɺ
    ؂ࢹ݁Ռͷ஝ੵͰ͋Δ࣌ܥྻσʔλͷߴղ૾౓Խɺ௕ظอଘԽ͢Δཁ
    ๬͕͋ͬͨ
    ɾઃܭͱ࣮૷ͷҰ෦ɺϦϦʔε·ͰͷϓϩδΣΫτ؅ཧΛ຿Ίͨ
    ɾ୅දతϓϩμΫτͱͯ͠ঢ՚͢ΔͨΊʹֶज़࿦จͱ͍͏٬؍తج४΁
    ௅ઓ
    ɾIOTS2018 ࠾࿥
    ɾIEEE COMPSAC 2019 ϝΠϯγϯϙδ΢Ϝ (short paper) ࠾࿥

    View Slide

  14. HeteroTSDB: An Extensible
    Time Series Database for Automatically Tiering
    on Heterogeneous Key-Value Storesa
    HeteroTSDB: ҟछࠞ߹ΩʔόϦϡʔετΞ
    Λ༻͍ͨࣗಈ֊૚ԽͷͨΊͷ
    ࣌ܥྻσʔλϕʔεΞʔΩςΫνϟ

    View Slide

  15. 15
    ຊݚڀͷഎܠͷ֓؍
    ࣾձͷഎܠ ΠϯλʔωοταʔϏεͷ৴པੑΛৗʹܭଌ͢Δͷ͕౰ͨΓલʹ
    ࣾձͷ
    ཁٻᶃ
    ࣌ܥྻσʔλΛߴղ૾౓ʹऔಘ͠
    ௕ظอଘ͍ͨ͠
    ࣾձͷ
    ཁٻᶄ
    ࣌ܥྻσʔλΛάϥϑҎ֎ͷ
    ෳ਺ͷҟͳΔ༻్Ͱࢀর͍ͨ͠
    طଘͷղܾ
    • ࣌ܥྻσʔλͷѹॖ (ࠩ෼ූ߸Խ)
    • ϝϞϦʹॻ͖ࠐΈɺσΟεΫ΁·ͱ
    ΊҠಈͤͯ͞ॻ͖ࠐΈޮ཰޲্
    ಺෦ߏ଄͕ີ݁߹ͳͨΊɺ
    σʔλߏ଄Λ௥Ճ͢Δ͜ͱ͕೉͍͠
    ߴղ૾౓ => I/Oճ਺͕େ͖͍
    ௕ظอଘ => σΟεΫ࢖༻͕େ͖͍
    ༻్͝ͱʹσʔλࢀরύλʔϯ͕ҟͳΔͨ
    ҟͳΔσʔλߏ଄͕ඞཁ
    ੑೳ
    ՝୊
    ֦ு՝୊
    ղܾ͞Ε͍ͯͳ͍՝୊

    View Slide

  16. 16
    ຊݚڀͷ໨తͱఏҊͷ֓؍
    ݚڀ໨త
    ॻ͖ࠐΈޮ཰ͱσʔλอଘޮ཰Λ௿Լͤͣ͞ʹ
    σʔλߏ଄Λ֦ுՄೳͳ࣌ܥྻσʔλϕʔεͷఏҊ
    ֦ு՝୊ͷղܾ
    1ͭͷ༻్ʹ͖ͭɺ1ͭͷDBMSΛ௥Ճ
    σʔλߏ଄Λ௥Ճ͠΍͍͢Α͏ʹ
    σʔλ(·ͨ͸ͦͷҰ෦)Λෳ੡ͯ͠ҟͳ
    ΔDBMSʹॻ͖ࠐΊΔΑ͏ʹૄ݁߹Խ
    ੑೳ՝୊ͷղܾ
    ҟछࠞ߹DBMSͷ૊Έ߹Θͤ
    (ΠϯϝϞϦDBMSͰॻ͖ࠐΈ
    ΦϯσΟεΫDBMS΁·ͱΊͯҠಈ)
    ఏҊͷৄࡉ
    • DBMSؒͷҰ؏ੑΛอͭͨΊͷɹ
    ႈ౳ੑΛ΋ͭσʔλߏ଄
    • ࣌ܥྻσʔλͷҠಈख๏
    • σʔλߏ଄ͷ௥Ճख๏

    View Slide

  17. ͔͜͜ΒΑΓৄࡉʹઆ໌

    View Slide

  18. ࣌ܥྻσʔλϕʔεͷઌߦख๏
    18
    0QFO54%# (PSJMMB *OqVY%#
    ॻ͖ࠐΈޮ཰ ϝϞϦόοϑΝ ΠϯϝϞϦ ϝϞϦόοϑΝ
    σʔλอଘޮ཰ ແѹॖ ѹॖ ѹॖ
    ૄ݁߹ੑ ີ݁߹
    ॻ͖ࠐΈʹ͍ͭͯ

    ີ݁߹
    ີ݁߹

    View Slide

  19. ఏҊγεςϜͷॲཧϑϩʔ
    19
    Message
    Broker
    (1) write
    Client
    Metric
    Writer
    Metric
    Reader
    In-Memory
    DBMS
    On—Disk
    DBMS
    (2) subscribe and write
    (3) migration
    (i) query
    (ii)
    read from each dbms
    (iii)
    merge datapoints
    (ii)

    View Slide

  20. 20
    0
    1
    2
    3
    4
    5
    0 20 40 60 80 100 120
    datapoint writes / min (mega)
    minutes
    In-Memory KVS
    On-Disk KVS
    ΠϯϝϞϦKVS΁ͷ෼ؒॻ͖ࠐΈճ਺͸
    ໿4MͰҰఆ
    ΦϯσΟεΫKVS΁෼ؒॻ͖ࠐΈճ਺͸
    70k͔Β170kͷؒΛਪҠ
    ΦϯσΟεΫKVS΁ͷ
    ෼ؒॻ͖ࠐΈճ਺Λ
    ໿1/20ʹ࡟ݮͨ͜͠ͱ͕Θ͔Δ
    ॻ͖ࠐΈεϧʔϓοτͷ࣌ؒมԽ

    View Slide

  21. 21
    0
    10
    20
    30
    40
    50
    60
    70
    80
    90
    100
    0 20 40 60 80 100 120
    0
    2
    4
    6
    8
    10
    12
    14
    16
    CPU usage (%)
    Free memory size (GB)
    minutes
    master CPU usage (%)
    slave1 CPU usage (%)
    slave2 CPU usage (%)
    Free memory size (GB)
    50෼Λ௒͑ͨͱ͜ΖͰ
    ۭ͖ϝϞϦ࢖༻ྔ͕10.5GBͰҰఆʹͳͬ
    ͍ͯΔͨΊσʔλҠಈͰ͖͍ͯΔͱ͍͑Δ
    CPUར༻཰ͱϝϞϦ࢖༻ྔ

    View Slide

  22. αʔό؂ࢹαʔϏεͷ࣮؀ڥ΁ͷద༻
    • 2017೥7݄͔Β2018೥8݄·Ͱͷ1೥ؒͷՔಇ࣮੷
    • ಉظؒͷো֐݅਺2݅ɺނোճ਺2݅
    • ো֐1: ಛఆͷΠϯϝϞϦKVSͷϊʔυʹॻ͖ࠐΈෛՙ͕ूத͠ɺϝϞ
    Ϧ্ݶʹୡ͠ɺOSʹڧ੍ఀࢭ͞Εɺσʔλফࣦൃੜ
    • ϝοηʔδϒϩʔΧʔ্ͷσʔλΛ࠶ॲཧ͠σʔλ෮چ
    • ো֐2: ಉҰͷϝτϦοΫ໊ͱλΠϜελϯϓΛ΋ͭσʔλ఺͕୹࣌ؒ
    ʹେྔʹॻ͖ࠐ·ΕɺΠϯϝϞϦKVSͷॻ͖ࠐΈαΠζ্ݶʹୡͨ͠
    • ΠϯϝϞϦKVSʹॻ͖ࠐΉલʹॏෳΛഉআ͢Δ͜ͱͰղܾ
    22

    View Slide

  23. Mackerelͷ࣮؀ڥ΁ͷద༻
    • ނোʹ͍ͭͯ͸ɺ͍ͣΕ΋ΠϯϝϞϦKVSͷϊʔυ͕ఀࢭ͠ɺ
    ౰֘ϊʔυ͕Ϋϥελ͔Β֎ΕΔ·ͰͷؒʹΤϥʔ͕ൃੜͨ͠
    • Lambdaؔ਺࣮ߦͷࣗಈ࠶ࢼߦʹΑΓࣗಈͰσʔλ෮چ
    • Ұ෦ͷϝτϦοΫͷॻ͖ࠐΈ͕਺෼஗Ԇ͢ΔʹͱͲ·ͬͨ
    23

    View Slide

  24. ·ͱΊ
    • ੑೳͱ֦ுੑΛཱ྆͢Δ࣌ܥྻσʔλϕʔεΞʔΩςΫνϟͷ
    ఏҊ
    • AWSͷϚωʔδυαʔϏεʹΑΓҟछࠞ߹σʔλετΞΛલఏ
    ͱͨ͠ΞʔΩςΫνϟͷߴ͍࣮ݱੑ
    • Mackerelͷ࣌ܥྻσʔλϕʔεͱͯ͠1೥ͷՔಇ࣮੷
    24

    View Slide

  25. 25
    ຊݚڀͷ՝୊
    ɾධՁͷ؍఺
    ɾଞͷख๏ͱൺֱͨ͠ධՁ݁Ռ͕ͳ͍͜ͱ
    ɾ֦ுੑͷධՁ݁Ռ͕ͳ͍͜ͱ
    ɾؔ࿈ݚڀͷ໢ཏ
    ɾ࿦จͱͯ͠ɺఏҊख๏ͷཱͪҐஔΛࣔͨ͢Ίͷ࠷௿ݶͷؔ࿈ݚڀͷ
    Έͱͳ͍ͬͯΔ͜ͱ

    View Slide

  26. 3.
    ࠓޙͷݚڀ։ൃߏ૝

    View Slide

  27. 27
    ݚڀ։ൃߏ૝ͷ֓؍
    ɾ͘͞ΒΠϯλʔωοτݚڀॴͷϏδϣϯͰ͋Δʮ௒ݸମܕσʔληϯ
    λʔʯʹΑΓɺΫϥ΢υͷܭࢉػೳྗ͕͔͋ͨ΋ਓʑͷ਎ۙʹଘࡏ͢
    Δ͔ͷΑ͏ͳίϯϐϡʔςΟϯάΛ໨ࢦ͢
    ɾࣗ෼ͷಘҙ෼໺ͱབྷΊͯςʔϚͷେ࿮ΛߜΓࠐΜͩ
    খن໛σʔληϯλʔͱΫϥ΢
    υΛ༗ػతʹ݁߹͢ΔͨΊʹ
    σʔλͷҰ؏ੑΛอͪͳ͕Βɺ
    ͍͔ʹޮ཰Α͘ಡΈॻ͖͢Δ͔
    খن໛σʔληϯλʔͱΫϥ΢
    υ͕݁߹ͨ͠ঢ়ଶʹ͓͍ͯ
    γεςϜͷঢ়ଶΛ͍͔ʹܭଌ
    ͠ɺ೺Ѳ͢Δ͔
    σʔλू໿ΞϓϦέʔγϣϯ γεςϜ؍ଌ

    View Slide

  28. 28
    ςʔϚᶃ: σʔλू໿ΞϓϦέʔγϣϯͷલఏ
    ɾ௒ݸମܕσʔληϯλʔ͸ɺ֤σʔληϯ
    λʔ͕ͲͷΑ͏ʹ෼ࢄ͢Δ͔͸نఆ͍ͯ͠ͳ͍
    ɾ·ͣ͸ɺΫϥ΢υͱΤοδ(ར༻ऀͷۙ๣)Λར
    ༻ͨ͠ΤοδίϯϐϡʔςΟϯάͷܗͰ੍໿Λ
    ͔͚Δ
    ɾࣗ෼͕ಘҙͳWebΞϓϦέʔγϣϯ͕ಈ࡞͢
    Δ΋ͷͱ͢Δ
    ɾΤοδ͸ɺIaaSΛఏڙ͢Δখن໛σʔληϯ
    λʔΛ૝ఆ
    Cloud
    Edge
    Edge
    Edge
    Edge

    View Slide

  29. 29
    ɾ֤ΤοδؒͱΫϥ΢υͰɺར༻ऀ͕Ͳͷڌ఺ʹ઀ଓͯ͠΋ಉ͡σʔ
    λΛฦ͔͢ɺฦ͞ͳ͍͔
    ɾྫ͑͹ϒϩάαʔϏεͰ͋Ε͹ɺಉ͡σʔλΛฦ͢ඞཁ͕͋Δ
    ɾ஍ཧతʹॲཧ͕׬݁͢ΔαʔϏεͳΒಉ͡σʔλΛฦ͞ͳͯ͘Α͍
    ɾαʔϏε࢓༷ͷ੍໿͕খ͍͞ɺಉ͡σʔλΛฦ͢ํࣜΛબ୒
    ɾಉ͡σʔλΛฦ͢৔߹ɺҰ؏ੑͱԠ౴ੑೳͷτϨʔυΦϑ͕͋Δ
    ɾΤοδؒ͸ϨΠςϯγ͕େ͖͍ͨΊɺҰ؏ੑΛڧ͘͢ΔͱɺશΤο
    δͰσʔλ͕ಉظ͞ΕΔ·Ͱ଴ͭඞཁ͕͋ΓɺԠ౴ੑೳ͕௿Լ
    ɾҰ؏ੑΛ؇ΊΔͱΞϓϦέʔγϣϯʹݹ͍σʔλΛฦ͢Մೳੑ͋Γ
    ɾ·ͨɺ߹ܭσʔλྔ͕େ͖͘ͳΔ՝୊͕͋Δ
    ςʔϚᶃ: σʔλू໿ΞϓϦέʔγϣϯͷצॴ

    View Slide

  30. 30
    ɾҰ؏ੑͱੑೳͷτϨʔυΦϑΛɺಡΈࠐΈͱॻ͖ࠐΈͷΞΫηεൺ
    ཰ͱɺΞϓϦέʔγϣϯͷมߋՄ൱ʹԠͯ͡ɺ੍໿Λઃఆ
    ɾಡΈࠐΈओମͰ͋Ε͹ɺσʔλͷߋ৽ස౓͕গͳ͍ͨΊɺҰ؏ੑΛ
    ڧΊͯ΋ɺಉظճ਺͕খ͘͞ͳΓɺԠ౴ੑೳͷ௿ԼͷӨڹ͸૬ରత
    ʹখ͘͞ͳΔ
    ɾҰ؏ੑΛڧΊɺΞϓϦέʔγϣϯΛมߋ͠ͳ͍ͱ͍͏੍໿Λઃఆ
    ɾσʔλྔ࡟ݮͷͨΊɺΩϟογϡΛڞ༗͢ΔΑ͏ʹ͢Δ
    ɾॻ͖ࠐΈओମͰ͋Ε͹ɺಡΈऔΓओମͱٯͱͳΓɺԠ౴ੑೳͷ௿Լ
    ͷӨڹ͕େ͖͘ͳΓɺҰ؏ੑΛڧ͘͢Δͷ͸ݱ࣮తͰ͸ͳ͍
    ɾ۩ମతͳΞϓϦέʔγϣϯΛنఆɻྫ)࣌ܥྻσʔλऩूγεςϜ
    ςʔϚᶃ: ۩ମతͳςʔϚ੍໿Λઃఆ

    View Slide

  31. ௒ݸମܕσʔληϯλʔΛ໨ࢦͨ͠
    ෼ࢄڠௐΫΤϦϦβϧτΩϟογϡߏ૝

    View Slide

  32. Proxy͕Ωϟογϡͷಉظͱ
    ΫΤϦͷϑΥϫʔσΟϯά
    Small Datacenter
    DBCache
    Proxy
    32
    DBΫΤϦΩϟογϡΞʔΩςΫνϟ
    DB
    Cloud
    Small Datacenter
    DBCache
    Proxy
    App
    Web
    Read/Write
    Read/Write
    App
    Web
    Ωϟογϡڞ༗

    View Slide

  33. Ұ࣌తͳԠ౴଎౓ͷ
    ௿Լ͸ڐ༰
    DBCache
    Proxy
    33
    దԠతΫϥελ੍ޚΞʔΩςΫνϟ
    DB
    Cloud
    DBCache
    Proxy
    App
    Web
    Read/Write
    Read/Write
    App
    Web
    App
    Web
    (1) ෆௐͳΤοδΛݕ஌ DB
    Manager
    (2) ෆௐͳΤοδͷΫΤϦΛ
    ࢭΊΔΑ͏ʹ఻ୡ
    (3) όοΫάϥϯυͰΩϟογϡΛഇغ
    ͠ɺۙ๣·ͨ͸Ϋϥ΢υ͔Βಉظ
    ෆௐͳSmall Datacenter
    ʹҾ͖ͮΒΕͳ͍Α͏ʹ
    Small Datacenter
    Small Datacenter

    View Slide

  34. 34
    ςʔϚᶄ: γεςϜ؍ଌͷצॴ
    ɾطଘͷ؍ଌख๏͸ɺαʔόϝτϦοΫ(CPUར༻཰ͳͲ)ऩूɺϩάऩ
    ूɾղੳͳͲ
    ɾ௒ݸମܕσʔληϯλʔʹ͓͍ͯ͸ɺΫϥ΢υͱൺֱ͠ɺγεςϜ؅
    ཧऀ͸஍ཧతͳ෼ࢄΛߟྀʹ͍Εͳ͚Ε͹ͳΒͳ͍
    ɾγεςϜͷߏ੒ཁૉಉ࢜ͷؔ܎ੑ͕֮͑ΒΕͣɺӨڹൣғෆ໌ͱͳΔ
    ɾΞϓϦέʔγϣϯΛมߋ͠ͳ͍ܗͰɺTCP/UDP૚Ͱ઀ଓؔ܎Λ௥੻
    Ͱ͖ΔΑ͏ͳ࢓૊ΈΛߟ͑Δ
    ɾγεςϜ؅ཧऀ޲͚ͷՄࢹԽΑΓ͸ɺܭࢉػγεςϜ͕ࣗ཯తʹ؍ଌ
    ݁ՌʹԠͯ͡൑அͰ͖ΔΑ͏ͳख๏Λ໨ࢦ͍ͨ͠

    View Slide

  35. ௒ݸମܕσʔληϯλʔΛ໨ࢦͨ͠
    ωοτϫʔΫґଘؔ܎ͷࣗ཯త௥੻ͷߏ૝

    View Slide

  36. 4.
    ·ͱΊ

    View Slide

  37. 37
    ·ͱΊ
    ɾ୅දతϓϩμΫτΛ໨ࢦͯ͠ɺݚڀͷੈք΁དྷͨ
    ɾαʔό؂ࢹαʔϏεͷ࣌ܥྻσʔλϕʔεͷݚڀ։ൃ಺༰Λ঺հͨ͠
    ɾݚڀ։ൃߏ૝ͱͯ͠ɺσʔλू໿ΞϓϦέʔγϣϯͱɺγεςϜ؍ଌ
    ͷͦΕͧΕʹ͍ͭͯ঺հͨ͠

    View Slide