Google Cloud Spanner 沼への誘い Basic GCPUG Admin Google Developers Expert Mercari / Merpay Solution Team @sinmetal
この記事では Cloud Spanner の並行性制御が何であるのか、結果として何を実現しているのかを見てから具体的なロックの実際の挙動について追っていく。 なお分散システムとしての話はあまりないので期待しないように。 この記事では実際の挙動を確認しながら書いているつもりだが、 2021年3月現在の挙動がサイレントに変わることもあることには注意してほしい。 TL;DR Cloud Spanner はロックフリーな Read-Only Transction と、堅実にロックを行う Read-Write Transaction の2つのアクセスパスを持ち、 ROMV と呼ばれる方式に最も近い。 その他技術との組み合わせの結果として分散システムでありながら Serializability と Linearizability を兼ね揃えた理論上最も強い一貫性を実現しており、 Google はそれを
本記事ではインターリーブテーブルを使いこなす、ちょっとしたテクニックを紹介します。 TL;DRCloud Spanner では SELECT AS STRUCT 構文をサブクエリに使うことで、親のテーブルとインターリーブされたテーブルのレコードを一発で高速に取得することができます。更に Cloud Spanner の CPU 使用率も抑えることができるので非常に効率的にクエリできます。 はじめにCloud Spanner ではインターリーブと呼ばれる、あるテーブルのレコードの物理的な配置を別のテーブルのレコードの配下に置ける仕組みがあります。この仕組みを使ってテーブル間に親子関係を作ることで、複数のテーブル間に参照整合性制約を持たせたり、パフォーマンスを向上させることができます。 このインターリーブですが、親のテーブルと子のテーブルを両方一辺に取得したいと思ったことはないでしょうか?ユーザ
20200725の #JTF2020 セッションスライド。 (資料内で説明した資料へのリンク) ・昨年のJTF発表資料 https://speakerdeck.com/tzkoba/cloud-nativekai-fa-zhe-falsetamefalsedatabase-with-kubernetes ・「2020年のNewSQL」 https://qiita.com/tzkoba/items/5316c6eac66510233115 ・「NewSQLのコンポーネント詳解」 https://qiita.com/tzkoba/items/3e875e5a6ccd99af332f ・Saga https://www.infoq.com/jp/news/2018/03/data-consistency-microservices/ ・「マイクロサービスとは分散システムである」 https://
話したネタ 2000年初頭のデータストアは何が主流だったのか? OLTPとDWH データベースから見るとReadのスケールアウトは難しくない Web系で難しいのはWriteのスケールアウト RDBのReadのスケールアウト方法とは? Web + RDB + Cache のアーキテクチャの辛い点は? UniverseとMultiverse Oracle Exadata RDBにおける全文検索 NewSQLとは何か? NoSQLとは何を指すか? トランザクション処理はなぜ難しいのか? マルチマスタの難しさ Google Cloud Spannerについて 金の弾丸 YugabyteDB/CockroachDB/TiDB YugabyteDBの特徴は? PostgreSQL互換とMySQL互換という売り NewSQLの技術要素は? NewSQLのレプリケーションはどうやるか? Raftとは? D
本記事は Google Cloud Platform その2 Advent Calendar 2018 の4日目の記事です。 はじめにCloud Spanner はトランザクションの一貫性保証のレベルに External Consistency を採用しており、複数のトランザクションが一貫性のある状態で並行に走れるよう制御されています。 ではその一貫性保証とは、具体的にどのような問題 (Anomaly) を防いでくれるのでしょうか。 本記事では、一貫性保証のレベルが弱い時に起こりうる以下の様々な Anomaly を Cloud Spanner ではどのように防いでくれるか、実際に複数のトランザクションを実行して検証していきたいと思います。 Dirty ReadLost UpdateNon-repeatable ReadPhantom ReadRead SkewWrite Skewこれらの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く