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 Cloud Next 2019 わくわく報告会 / Google Cloud N...
Search
Masahiro Wakame
April 17, 2019
Technology
1
410
Google Cloud Next 2019 わくわく報告会 / Google Cloud Next 2019 WakuWaku Report
https://mercaridev.connpass.com/event/125881/
Masahiro Wakame
April 17, 2019
Tweet
Share
More Decks by Masahiro Wakame
See All by Masahiro Wakame
DatastoreからSpannerに 移行したいぞ途中編 / migrate Datastore to Spanner in progress
vvakame
0
1k
メルカリ社員100人に聞いたGoLandの使い方 / JetBrains Night Tokyo 2018
vvakame
27
13k
OSS入門 世界に参加する最初のひと押し / OSS first step
vvakame
7
690
GCP Compute 概要と選定 / DevFest Tokyo 2018
vvakame
12
1.6k
GoでGraphQLサーバを立てるぞ! / Building GraphQL server by go
vvakame
15
4.6k
『Re:VIEW+CSS組版やっていき』を やった話とWebエンジニアが期待する未来 / CSS Publishinng for Web Developers
vvakame
3
8.7k
go.mercari.io/datastore はいいぞ! / go.mercari.io/datastore is pretty good!
vvakame
4
1k
最強のDatastoreライブラリを作った / golang.tokyo #11
vvakame
3
10k
GAE/Go 1.8化の話題とnouhauの話 / yappari appengine ja night #2
vvakame
0
810
Other Decks in Technology
See All in Technology
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
OpenShift Virtualizationのネットワーク構成を真剣に考えてみた/OpenShift Virtualization's Network Configuration
tnk4on
0
130
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
1
300
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
160
watsonx.ai Dojo #5 ファインチューニングとInstructLAB
oniak3ibm
PRO
0
160
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
220
ハイテク休憩
sat
PRO
2
140
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
Turing × atmaCup #18 - 1st Place Solution
hakubishin3
0
470
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
The Pragmatic Product Professional
lauravandoore
32
6.3k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Fireside Chat
paigeccino
34
3.1k
Done Done
chrislema
181
16k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
A designer walks into a library…
pauljervisheath
204
24k
Producing Creativity
orderedlist
PRO
341
39k
Embracing the Ebb and Flow
colly
84
4.5k
Writing Fast Ruby
sferik
628
61k
Transcript
Google Cloud Next 2019 Θ͍Θ͍ใࠂձ In Mercari Θ͔Ί ·͞ͻΖ
Θ͔Ί ·͞ͻΖ @v vakame Masahiro Wakame Go GraphQL TypeScript AppEngine
US ڧߦ܉ •04/06 from HND to SFO •04/09-11 Cloud Next
•04/11-12 from SFO to HDN •04/14 ٕज़ॻయ6 (27Kmา͍ͨ) •04/17 ࠓʂʂ ·ͩ࣌ࠩϘέͯΔ
ࠓճͷײ (1/3) •ΞϓϦدΓ։ൃऀతʹNOT FUN •※ AppEngine/SE ͳਓؒͰ͢ •Anthosʹ࢝·ΓEnterpriseܥͷଟ͠ •Google͕CloudࢢຊؾͰऔΓʹདྷͨײ
ࠓճͷײ (2/3) •Kubernetes͔Βಀ͛ΒΕͳ͍…ʂ •͋Δఔ֮ޛܾΊΔඞཁ͕͋Γͦ͏ •͋ͱ1-2ఔಀ͛ΒΕΔؾ͢Δ •ฐࣾʹSREνʔϜ͕ډͯΑ͔ͬͨ
ࠓճͷײ (3/3) •Kubernetesͷcluester࠶࡞͔Β… •ಀΕͳ͍֮ޛΛͨ͠΄͏͕ͤʁ •Traffic Director… Istio… etc?
ࠓճͷײ (4/3) •AppEngineࢮͳΜ͞…ʂ •Cloud Run ͍͢͝Αͦ͞͏Ͱ͢Ͷ •2nd genͷҙຯ߹͍มΘ͖ͬͯͨ •ͬͯࢠݘࣂͬͯΔແ৬͕ݴͬͯͨ
Spanner Internals ࠓͷຊͰ͢ https://gist.github.com/vvakame/fd8e3e7b0ee430e9e62e83a500fd355f
Spanner Internals Part 1: What Makes Spanner Tick? Spanner Internals
Part 2: How GCP Builds Global Meta-Data and Scalable Data Backends on Spanner ࠷ۙɺࣾͰSpanner͕ ϗοτͩͬͨͷͰ… https://cloud.withgoogle.com/next/sf/sessions?session=DBS304 https://cloud.withgoogle.com/next/sf/sessions?session=DBS306
Spannerͱʁ •Relational DBͱಉ͡semantics •Schemas, ACID, Transactions, SQL •Horizontal Scale •Scale
out Ͱ͖Δʂ •MySQLͱ͔Ͱ͖ͳ͍…
Ͳ͏ͬͯʁ •PaxosΞϧΰϦζϜ •ࢄ߹ҙͷͨΊͷϓϩτίϧ •͙͙Εʂ(Θ͔Δ͚ͲΘ͔Βͳ͍ •TrueTime API •TxOpsͷॱং͚͕Մೳʹ
TrueTime? https://youtu.be/nvlt0dA7rsQ?t=860
TrueTime? •࠷৽ͷߏͷհ •1ϥοΫʹ4αʔό •2αʔό → GPSΛͬͨ࣌ࠁಉظ •2αʔό → ݪࢠ࣌ܭΛͬͨ࣌ࠁಉظ •2ͭͷݪࢠ࣌ܭͷϒϥϯυ͚Δ
TrueTime? •TrueTimeΛ͏ͱૢ࡞ͷॱ൪͕Ұҙʹ •௨৴ແ͠ʹͰ͖Δ͜ͱଟ͍ •ৄ͙͙͘͠Εʂ
Read, Write https://youtu.be/nvlt0dA7rsQ?t=977
ࢼ࡞൛Spanner •3-4ݸ͘Β͍ࢼ࡞Λ࡞ͬͨΒ͍͠ •2-3͔͔ͬͨ •৭ʑͳϛεΛͨ͠… •࠶ؼతͳσΟϨΫτϦͷαϙʔτͱ͔ •࣌ؒܦաͰղܾ͠Α͏ͱͨ͠Γͱ͔
ϑΝΠϧγεςϜͷ •ColossusͱBigtable্ʹߏங •File Systemͱಠཱ͍ͯ͠Δ •ϑΝΠϧཧHot spotΓ͠ ͯߟ͑Δ͜ͱ͕Ͱ͖ΔΒ͍͠ SpannerʹHot spot͕ͳ͍Θ͚Ͱͳ͍
҆ఆੑͷʁ •ׂͱΈΜͳΑ͘ಈ͘ •TrueTime৺Λਧ͖ඈͨ͠ •PaxosૉʹΑ͘ಈ͘ •CAPఆཧ •͋Δ͚Ͳਓੜͷେ͏·͍͘͘
ConsistencyͷͭΒΈ •Eventual consitencyਏ͘ͳ͍ʁ •Strong consistencyਓੜ͕๛͔ʹͳΔ •͋ʔͦΕΊͬͪΌΘʔ͔ʔΔʔ •୯७ʹߟ͑Δ͜ͱ͕ݮΔ •ίʔυॻ͘ྔݮΔ
SQL͍͍ΑͶ… •ॊೈ •ܕ͕͋Δʂ •ͬͺΓSchema͕͋Δͷͬͯਆͳ
୭͕ͬͯΔͷ •Merpay͕ͬͯΔΑʂ •…ஔ͍ͱ͍ͯ •Google͕ΨϯΨϯͬͯΔΑʂ •දࣄྫͱͯ͠GCSͰͷ͕ΨοπϦ
Googleͱಉ͡ͷʁ •͍͍ͩͨಉ͡ •ಉ͡Πϯϑϥ… •ಉ͡όΠφϦ…
Googleͱಉ͡ͷʁ •ҟͳΔ •ΞΫηεύε •ηΩϡϦςΟ, ίϯϓϥ •༻ޠ • Cloud Spanner nodes
→ ɹSpanner Servers • Cloud Spanner instance configurations → ɹSpanner configurations
GCSͷ •GCSͷmetadataͷཧͯ͢Spanner •SpannerʹΑΔϝϦοτͷͨ͘͞Μ •Multi regionͳҰ؏ੑ •Strongly consistent listings
GCSͷ https://youtu.be/zy-rcR4MoN4?t=604
GCSͷ https://youtu.be/zy-rcR4MoN4?t=834
GCSͷ https://youtu.be/zy-rcR4MoN4?t=1936
མͪึर͍ •Spannerͷྺ࢙ https://youtu.be/nvlt0dA7rsQ?t=1601
References •https://bit.ly/2KLGqIB •https://bit.ly/2wvMFWt •http://bit.ly/2vaskps •http://bit.ly/2IDjgl0