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
Googleクラウドサービスを利用したシステム構築
Search
Naomichi Yamakita
March 21, 2012
0
8
Googleクラウドサービスを利用したシステム構築
Naomichi Yamakita
March 21, 2012
Tweet
Share
More Decks by Naomichi Yamakita
See All by Naomichi Yamakita
SRE が駆動するプロダクト品質と アーキテクチャ進化の仕組み
naomichi
0
140
今こそ聞きたい!ガバメントクラウド
naomichi
0
25
AWSにおける横断的なログ分析と コストの管理
naomichi
1
6k
失敗から始まるリアーキテクト: SREの実践例で見る改善の道筋
naomichi
0
760
プロダクト横断で可視化する ダッシュボードの開発
naomichi
0
350
第一回ライブラリ開発について考える会
naomichi
0
110
Serverless Application Repositoryでトイルを削減する
naomichi
0
330
SRE的観点から日常を振り返る
naomichi
0
1k
GMO Research Tech Conference 2023
naomichi
0
30
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
How GitHub (no longer) Works
holman
315
140k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Keith and Marios Guide to Fast Websites
keithpitt
412
23k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Speed Design
sergeychernyshev
32
1.2k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
980
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Transcript
(PPHMFΫϥυαʔϏεΛར༻ͨ͠γεςϜߏங %5$PSQ /BPNJDIJ:BNBLJUB
ΞδΣϯμ ௐࠪͷझࢫ (PPHMF"QQ&OHJOF (PPHMF"QQT(PPHMF"QQT4DSJQU ૯ׅ
ௐࠪͷझࢫ
ௐࠪత 8FCαʔϏεΛߏங͢Δ্Ͱ։ൃޮΛ্ͤ͞Δख๏Λݕ౼͢Δ ։ൃޮͱίετݮΛݕ౼͢Δ্Ͱɺௐࠪରͱͯ͠ڍ͕ٕͬͨज़ ΫϥυίϯϐϡʔςΟϯά ࠓճΫϥυͷதͰಛʹεέʔϥϏϦςΟͷߴ͍(PPHMF"QQ &OHJOFɺ(PPHMF"QQTΛௐࠪͨ͠
Ϋϥυͷఆٛ ΠϯλʔωοτΛϕʔεͱͨ͠8FCαʔϏεͷ૯শ ϢʔβσʔλιϑτΣΞͷॴΛҙࣝͤͣɺඞཁʹԠͯ͡ʢΫϥΠΞ ϯτͷڥʹґଘͤͣʣαʔϏεΛར༻͢Δ͜ͱ͕Ͱ͖Δ ແྉɺ͘͠ར༻͚ͨͩ͠ࢧ͏ܗଶ͕ଟ͍
Ϋϥυͷछྨɻݴ༿ࣗମ֮͑Δඞཁͳ͠ 4BB4ܕʢ4PGUXBSFBTB4FSWJDFʣ ιϑτΣΞΛ8FCαʔϏεͱͯ͠ఏڙ (PPHMF"QQTɺ.JDSPTPGU0OMJOF4FSWJDFTɺ&WFSOPUF 1BB4ܕʢ1MBUGPSNBTB4FSWJDFʣ
ԾԽ͞ΕͨαʔόڥΛఏڙ (PPHMF"QQ&OHJOFɺ"NB[PO4 )BB4ܕʢ)BSEXBSFBTB4FSWJDFʣ Πϯλʔωοτܦ༝ͷϋʔυΣΞΠϯϑϥΛఏڙ "NB[PO&$
(PPHMF"QQ&OHJOFͱ(PPHMF"QQTͷҧ͍ (PPHMF"QQ&OHJOF 8FCΞϓϦέʔγϣϯΛެ։ՄೳͳϗεςΟϯάαʔϏε (PPHMF"QQT (NBJMɺΧϨϯμʔɺυΩϡϝϯτɺ(PPHMF͕ఏڙ͢Δ8FCΞϓϦ έʔγϣϯΛಠࣗυϝΠϯͰ͑Δ
ʮ(PPHMF"QQT4DSJQUʯΛ༻͍ͯΞϓϦέʔγϣϯͷࣗಈԽ֎෦Ϧ ιʔεͱͷ࿈ܞ͕Մೳ
(PPHMF"QQ&OHJOF
(PPHMF"QQ&OHJOFʢ("&ʣͱ (PPHMF͕ఏڙ͢ΔΫϥυڥ ("&্Ͱ8FCαʔϏεΛߏங͢Δ͜ͱ͕Ͱ͖Δ ྨࣅαʔϏεʹ"NB[PO4ɺ.JDSPTPGU"[VSF͕͋Δ ରԠݴޠ+BWBɺ1ZUIPOɺ(P
։ൃऀ("&͕ఏڙ͢Δ4%,Λར༻ͯ͠αʔϏεΛߏங͢Δ &DMJQTFΛ͏͜ͱͰ։ൃ͔ΒςετɾσϓϩΠ·ͰҰݩͯ͠ཧ͢Δ͜ ͱ͕Մೳ Πϯελϯε࣌ؒϕʔεͷ՝ۚ Ϧιʔεʢ$16సૹྔʣΛফඅ͚ͨͩ͠՝ۚ
("&Λ͏ϝϦοτ ࣗࣾσʔληϯλͷӡ༻ίετݮ ݄ؒສ17ɺ.#·ͰͷετϨʔδແঈͰར༻Մೳ ԾԽ͞ΕͨΠϯϑϥΛ͏ͨΊɺαʔόͷߏஙӡ༻͕ෆཁͱͳΔ ཧίϯιʔϧʢෛՙঢ়گɺϩάϏϡʔϫʣ͕ఏڙ͞Ε͍ͯΔ
αʔϏε(PPHMF͕ఏڙ͢ΔΠϯϑϥ্ͰՔಇ͢Δ (PPHMFͷΠϯϑϥ͕࣋ͭύϑΥʔϚϯεͱεέʔϥϏϦςΟੈք࠷ߴ Ϩϕϧ αʔϏεʹର͢ΔϦΫΤετ͕૿͑ΔͱࣗಈతʹΠϯελϯεΛ૿ ͠ɺແ੍ݶʹεέʔϧΞτΛߦ͏
("&ͷཧը໘ Πϯελϯεͷཧ ΞϓϦέʔγϣϯͷόʔδϣϯཧ σʔλͷཧ Քಇঢ়گͷαϚϦʔ
ύϑΥʔϚϯεͱΠϯελϯεͷཧ ΞϓϦέʔγϣϯͷύϑΥʔϚϯεΛ੍ޚ ΞΠυϧΠϯελϯεͷ࠷େΛઃఆ ৽͍͠ΠϯελϯεΛੜ͢Δ·Ͱͷػ࣌ؒΛઃఆ
ࠓ·ͰͷεέʔϧΞτٕ๏ 8FCɾΞϓϦέʔγϣϯαʔόͷෛՙࢄ ฒྻʹΛՃ %#αʔόͷෛՙࢄ ϨϓϦέʔγϣϯ
ߋ৽ॲཧͰϚελʹෛՙ͕ूத͢Δ ΫϥελϦϯά ͕૿͑Δ΄Ͳಉظͷॲཧίετ͕ߴ·Δ ύʔςΟγϣχϯά ϓϩάϥϜͷϩδοΫ͕ෳࡶʹͳΔ
(PPHMFͷεέʔϧΞτٕज़
(PPHMFͷεέʔϧΞτٕज़ ΫϥΠΞϯτͷԠมΘΒͳ͍ Πϯελϯεࣗಈతʹ૿͑Δ
("&͕ఏڙ͢Δػೳ ಠࣗυϝΠϯ طఆυϝΠϯl\TFSWJDF@OBNF^BQQTPUDPNz (PPHMFΞΧϯτΛ༻͍ͨϢʔβೝূ ࣗಈεέʔϦϯάͱෛՙࢄ
ӬଓετϨʔδʢޙड़ʣ ϑΝΠϧγεςϜͷ֓೦͕ͳ͍ ϑϧػೳΛ݉Ͷඋ͑ͨ։ൃϓϥοτϑΥʔϜ εέδϡʔϦϯά͞ΕͨλεΫ
("&ͷσϝϦοτ طଘͷΞϓϦέʔγϣϯίʔυ("&্Ͱಈ࡞͠ͳ͍ 3%#.4͕ఏڙ͞Ε͍ͯͳ͍ͨΊɺσʔλͷཧ(PPHMF͕ఏڙ͢Δ ʮ#JH5BCMFʯΛ͏ ιέοτ௨৴εϨουར༻Ͱ͖ͳ͍ ݒ೦
ސ٬ใΫϥυ্ʹ༬͚Δඞཁ͕͋Δ αʔϏε͕ڥʹґଘ͢Δ
ΫϥυαʔϏεࣗମʹো͕ى͜Δ͜ͱ
ࣄଶվળͭͭ͋͠Δ
ӬଓετϨʔδ#JH5BCMF #JH5BCMF(PPHMF͕։ൃͨ͠ετϨʔδαʔϏε ࢄܕ,74 ڧྗͳΫΤϦΤϯδϯτϥϯβΫγϣϯػೳΛ࣋ͭ ΫΤϦૢ࡞(2-ʢ(PPHMF2VFSZ-BOHVBHFʣΛ༻͍Δ
(2-ςʔϒϧؒͷ݁߹Λ͑ͯαϙʔτ͍ͯ͠ͳ͍ ("&্ͰՔಇ͢ΔશͯͷΞϓϦͭͷ#JH5BCMFͰཧ͞Ε͍ͯΔ ('4ʢ(PPHMF'JMF4ZTUFNʣͷԸܙʹΑͬͯϑΝΠϧܽଛͷՄೳੑۃΊ ͍ͯ
݄ɺ(PPHMF$MPVE42-Λൃද
(PPHMF$MPVE42-ͷ֓ཁ .Z42-ͱ΄΅ಉͷػೳΛ࣋ͭσʔλϕʔεΛఏڙ +%#$ͱ%#ΞΫηε"1*Λαϙʔτ ݄ݱࡏϓϨϏϡʔϦϦʔεͷஈ֊
αʔϏεΛެ։͢Δ·Ͱͷखॱ ։ൃݴޠͷબఆ ‣ ࠓճ+BWBʢ+41ɺ4FSWMFUʣΛ༻ +7.্Ͱ1)13VCZΛ࣮ߦ͢Δ͜ͱՄೳ ։ൃڥͷߏங ‣
&DMJQTF (PPHMF1MVHJOGPS&DMJQTFʢ("&4%,ʣ ΞϓϦέʔγϣϯͷ։ൃ ιʔεͷίϯύΠϧͱσϓϩΠ ‣ &DMJQTFͰҰݩཧ
("&+ͷ։ൃڥʢ&DMJQTFʣ ιʔείϯύΠϧޙʹ("&ʹσϓϩΠ "QQ&OHJOF4%,
("& )5.-ͰήετϒοΫΞϓϦΛߏஙͯ͠Έͨ XJUI'CPPUTUSBQ
σϞϯετϨʔγϣϯ ΞϓϦέʔγϣϯͷ࡞ ‣ IUUQTBQQFOHJOFHPPHMFDPN ։ൃڥͷհ ‣ αϯϓϧ)FMMP8PSME ‣
ίϯύΠϧͱσϓϩΠɺಈ࡞֬ೝ ‣ αϯϓϧίϝϯτߘ ཧը໘ͷհ
ΫϥυαʔϏεͷൺֱ αʔϏε ϝϦοτ σϝϦοτ wແঈར༻Մೳ w։ൃڥ͕උ͞Ε͍ͯΔ w(PPHMF%BUB"1*͕ར༻Մೳ wରԠݴޠ͕গͳ͍ wݴޠͷػೳ੍ݶ͕͋Δ wଞͷαʔϏεͷҠ২͕ࠔ
wରԠݴޠ͕ଟ͍ w3%#.4͕͑Δ w։ൃڥҙ w)"ɺࢹػೳ͕ෆ wαʔϏε͕౷߹͞Ε͍ͯͳ͍ wରԠݴޠ͕ଟ͍ w3%#.4͕͑Δ w7JTVBM4UVEJPOFUΛ༻Մೳ wར༻Ͱ͖Δ·Ͱʹ͕͔͔࣌ؒΔ w։ൃڥ͕ݶఆ͞Ε͍ͯΔ
(PPHMF"QQT(PPHMF"QQT4DSJQU
(PPHMF"QQTͱ (PPHMF͕ఏڙ͢Δ8FCαʔϏεΛಠࣗυϝΠϯͰ͑Δ جຊແঈͰར༻Մೳʢػೳ੍ݶ͋Γʣ εϚʔτϑΥϯܞଳʹରԠ ఏڙ͞ΕΔαʔϏεͷҰྫ
(NBJM (PPHMFΧϨϯμʔ (PPHMFυΩϡϝϯτ (PPHMFαΠτ
(PPHMF"QQTͷཧը໘ ಠࣗυϝΠϯΛઃఆʢ%/4ʹ$/".&ΛՃʣ
(PPHMF"QQT4DSJQUʢ("4ʣͱ (PPHMFͷαʔϏεΛࣗಈԽ͢ΔαʔόαΠυ+BWB4DSJQU &YDFMͷϚΫϩʹࣅ͍ͯΔ ("4Λར༻ͯ͠(PPHMF"QQTΛࣗಈԽͰ͖Δ (PPHMF"QQTΛ༻͍ͯ͠ͳͯ͘ར༻Մೳ
։ൃڥ8FCϒϥβ σόοΨϩΨʔͷ΄͔ɺ؆୯ͳόʔδϣϯཧػೳΛ࣋ͭ
("4ͰͰ͖Δ͜ͱ ۀͷࣗಈԽ (PPHMFαʔϏεͱαʔυύʔςΟͷ࿈ಈ εϓϨουγʔτʹ͓͚ΔΧελϜؔͷ࡞ 6*ͷ࡞
("4ͷݴޠ༷ ݴޠ+BWB4DSJQUɻͨͩ͠ϒϥβΦϒδΣΫτ͑ͳ͍ 8JOEPXɺ&WFOUɺ%PDVNFOU αʔόαΠυ+BWB4DSJQUͷͨΊɺΫϩευϝΠϯ੍͕ͳ͍ ֎෦ͷ8FC"1*͕༻Մೳ
9.-ɺ+40/ɺ40"1ɺ0"VUIʹରԠ εϓϨουγʔτͷૢ࡞7#"ʹࣅ͍ͯΔ ΠϕϯτυϦϒϯDSPOͷΑ͏ͳఆظ࣮ߦ͕Մೳ +%#$"1*ܦ༝Ͱ֎෦3%#.4ʹଓՄೳ
)FMMP8PSME BMFSU ؔ͑ͳ͍ͨΊɺ("4"1*͕ ఏڙ͢ΔϝοηʔδදࣔؔΛ͏
(PPHMFΞΧϯτ͕͋Ε͙͢ར༻Մೳ εϓϨουγʔτͷʮπʔϧʯ͔Βىಈ
("4ͷ։ൃڥʢΤσΟλʣ +%#$ϥΠΫʹ42-ΛൃߦՄೳ ࣗಈิʹରԠ
("4ͷ։ൃڥʢ(6*Ϗϧμʔʣ *%&ͷΑ͏ʹ(6*ΛઃܭͰ͖Δ
("4͕ఏڙ͢Δ"1* %FGBVMU"1* #BTF $BDIF $BMFOEBS $IBSUT $POUBDUT %PDT-JTU %PDVNFOU %PNBJO
'JOBODF (NBJM (SPVQT +ECD -BOHVBHF -PDL .BJM .BQT 1SPQFSUJFT 4JUFT 4PSQ 4QSFBETIFFU 6* 6SJ'FUDI 6UJMJUJFT 9NM "1*T4FSWJDFT 6SM4IPSUFOFS 1SFEJDUJPO 5BTLT "E4FOTF άϥϑΛඳը 3%#.4ʹଓ εϓϨουγʔτͷૢ࡞ )551௨৴Λߦ͏ ॖ63-ͷੜ ಠࣗ6*ͷઃܭ σʔλͷӬଓԽ
σϞϯετϨʔγϣϯ (6*ͷઃܭͱ֎෦8FC"1*ͷݺͼग़͠ ΞϯέʔτϑΥʔϜػೳ +%#$Λར༻ͨ͠σʔλूܭ #SPXTFSB"1*Λར༻ͨ͠ΩϟϓνϟཧΞϓϦέʔγϣϯ
("4Λར༻ͨ͠σʔλूܭ εϓϨουγʔτ͕ར༻Ͱ͖ΔͨΊɺ8FCΞϓϦέʔγϣϯʹ͓͚Δച্ ཧొɾར༻ঢ়گͱ͍ͬͨσʔλूܭػೳͱඇৗʹ૬ੑ͕ྑ͍ σʔλͷදࣔͱάϥϑԽ ฒͼସ͑ɺϑΟϧλϦϯά σʔλͷ$47μϯϩʔυ&YDFMܗࣜͷม
ҟͳΔΞϓϦέʔγϣϯͷσʔλूܭػೳΛҰݩཧ͢Δ͜ͱ͕Ͱ͖Δ ։ൃʹ͔͔Δίετ͕ݮՄೳ (PPHMF"QQTΛͬͨσʔλूܭࠓޙͷ։ൃͰಋೖ͍ͨ͠
֎෦࿈ܞͰͰ͖Δ͜ͱ 5XJUUFSGBDFCPPLΛ͡Ίͱͨ͠8FC"1*ͱ࿈ܞՄೳ ֎෦͔Βऔಘͨ͠σʔλΛ(PPHMF"QQTͱ࿈ܞ༷ͤͨ͞ʑͳαʔϏε͕ߟ ͑ΒΕΔ ྫ͑ʜ 5XJUUFSͷλΠϜϥΠϯ͔ΒҙϢʔβͷΞΫςΟϏςΟΛऔಘ
εϓϨουγʔτͰूܭ ࣗಈߋ৽͞ΕΔ#05αΠτΛߏஙʢ(PPHMFαΠτʣ GBDFCPPLͷΠϕϯτΛ(PPHMFΧϨϯμʔʹࣗಈಉظͤ͞Δ ʮ͍͍Ͷʯʮ5XJUUFSʯͷϘλϯͷΧϯτΛूܭ
૯ׅ
αʔϏεΛߏங͢Δ্Ͱۤ࿑ͨ͠ (PPHMFͷαʔϏεৗʹਐԽ͍ͯ͠Δ ػೳυΩϡϝϯτ͕ෆؾຯ 8FC"1*ͷಛ্࣭ɺ༷มߋ͕ଟ͍ ("4ʹؔͯ͠։ൃڥ͕ൃల్্
(6*Ϗϧμʔػೳ͕த్ ιʔείʔυͷࣗಈิ͕Ұ෦ޮ͔ͳ͍ ϦϑΝΫλϦϯά͠ʹ͍͘ Ϟδϡʔϧͷཧ͕໘
(PPHMFΫϥυͷྑ͍ ಋೖ͕ൺֱత༰қ ੈք࠷ߴϨϕϧͷΠϯϑϥΛར༻Ͱ͖Δ ࠓޙαʔόΤϯδχΞͷׂมΘ͍ͬͯ͘ʢͰ͋Ζ͏ʣ ("4։ൃڥΛΘͳ͍
(PPHMFͷαʔϏεৗʹਐԽ͍ͯ͠Δ ৗʹ࣌ʹదԠٕͨ͠ज़͕͙͢ʹ͑Δ ػೳ͕ʑվળ͍ͯ͠Δ ୯७ʹ໘ന͍
͜Ε͔ΒͬͯΈ͍ͨ͜ͱ (PPHMF%BUB"1*ͷ׆༻ ("4Λར༻ͨ͠8FCΞϓϦέʔγϣϯͷσʔλϚΠχϯά Ϋϥυڥʹ͓͚Δ8FCΞϓϦέʔγϣϯͷߏஙͱӡӦ