The NoSQL movement came along to give the horizontal scalability to databases, but often at the very high developer and data integrity cost of limitations in query languages, transactions and data consistency.
Then NewSQL came along adding back standardised SQL querying across horizontally scaled databases, but still not with the consistency that comes with a SQL database running on a single server.
Google Spanner database is the closest to the holy grail of a distributed ACID SQL database, thanks in part to Google’s GPS and atomic clock mediated TrueTime across its data centers, and extensive private global fiber optic network.
After making the regionally distributed version of Spanner available earlier in the year, Google has now released the full multi-regional service, providing a truely global distributed, consistent SQL database.
The regionally distributed Spanner has 3 read-write replicas in 3 separate availability zones within a region per node, which costs $0.90/hr. A minimum of 3 nodes are required for the 99.99% availability SLA to apply, and the recommended minimum production configuration. This brings the cost to $2.70/hr, or $23,652/year.
Each Cloud Spanner node in this configuration can provide up to 10,000 QPS of reads or 2,000 QPS of writes (writing single rows at 1KB data per row), and 2 TiB storage.
The new multi-regional service increases the replicas per node, with two options available.
The first is nam3 (North America 3). This configuration provides per node:
2 read-write replicas in us-east4 (Northern Virginia - default leader region)
2 read-write replicas in us-east1 (South Carolina)
1 node costs $3.00/hr, making a 3 node configuration $9/hour, or $78,840/year
The second is nam-eur-asia1 the global configuration, which each node having:
2 read-write replicas in us-central1 (Iowa) - default leader region
2 read-write replicas in us-central2 (Oklahoma) - private GCP region
2 read-only replicas in europe-west1 (Belgium)
2 read-only replicas in asia-east1 (Taiwan)
Each node in nam-eur-asia1 can provide up to 7,000 QPS of reads per region, or 1,000 QPS of writes across all regions in this configuration (writing single rows at 1KB data per row), and 2 TiB storage.
With a single nam-eur-asia1 node costing $9.00/hour, making 3 nodes $27.00/hour, this brings a minimum production configuration to $236,520/year
At this price its not your backyard startup that will be launching nam-eur-asia1 configurations, but enterprises that want a fully managed service the scalability and data integrity that simply isn’t available elsewhere.