Google Cloud Platform (GCP) 上週推出 Cloud Spanner,只要使用 GCP 平台的都可以使用。
GCP 推出的 Cloud Spanner 資料庫服務
Cloud Spanner 是資料庫的系統,到底有什麼特別的呢?
Cloud Spanner 可以使用 SQL 語法(俱有 RDBMS ACID 的能力),又有 NoSQL 的 自動擴充 (Scalability) 和 可用性 (Availability)。
主要是強打可以滿足 CAP (Consistency、Availability、Partition tolerance),
不過這個已經被驗證最多只能同時滿足兩項條件,是如何做到的呢?
- 註:CAP 三個條件無法同時被滿足,所以資料庫系統都會挑選其中兩點來滿足。
- 例如:
- MySQL / PostgreSQL:CA
- NoSQL (Cassandra):CP
詳見官方新聞:Introducing Cloud Spanner: a global database service for mission-critical applications
Cloud Spanner 主要是做 CAP 的 CP,然後把 A 做到遇到 downtime,掛掉的時間也小到不會被在意的程度,也算是一種做法~
若不使用 GCP 就無法使用 Cloud Spanner,還是有 Open Source 專案可以試用看看,如 CocoroachDB,下述連結是 CocoroachDB 的相關網頁