Databases Across the Three Clouds
Relational, NoSQL, warehouse — each of these has a named service on every major cloud. The names differ, the underlying concepts do not. This topic maps the database catalog so that when you see "DynamoDB," "BigQuery," or "Cosmos DB" in a job description or an architecture diagram, you know immediately what family it belongs to.
There is also an important distinction to understand here: some database services run open-source engines (PostgreSQL, MySQL, Redis) that you can run anywhere, while others are proprietary cloud inventions that only exist on one provider. That difference has real consequences for how freely you can move between clouds.
The Mapping: Same Families, Different Names
All three clouds cover the full database landscape: managed relational, managed NoSQL, data warehouse, and managed cache. Each is a different cloud brand for the same fundamental kind of store. The services in each row below do the same job.
Signature Offerings Worth Knowing
Two services stand out as genuinely distinctive. Google's BigQuery was one of the first truly serverless, massively-parallel data warehouses — you query petabytes without provisioning any servers, and you pay per query rather than per running cluster. AWS's Redshift and Azure Synapse Analytics are comparable, but BigQuery's fully serverless design was a step ahead when it launched and remains a benchmark. It is worth knowing by name.
Azure's Cosmos DB is also unusual. Where most NoSQL databases specialize in one model (DynamoDB is key-value and document; Firestore is document), Cosmos DB is multi-model — the same service can behave as a document store, a key-value store, a wide-column store, or a graph database, depending on the API you use. That breadth is architecturally distinctive; no other cloud has a direct equivalent.
Open vs Proprietary: Why It Matters
Some managed database services run open-source engines: PostgreSQL, MySQL, MariaDB, Redis. Because these engines are open standards, you could move your database from AWS RDS to Google Cloud SQL to Azure Database without rewriting any queries — the SQL dialect, the behavior, and the backup format are the same. Open-source managed databases give you portability: the cloud runs the engine, but the engine is not owned by the cloud.
Other services are proprietary: DynamoDB (AWS), BigQuery (Google), Cosmos DB (Azure), and Google's Spanner, for example, are cloud-only inventions. They may be excellent tools for the right problem — BigQuery's scale is genuinely hard to replicate elsewhere — but they create lock-in. If you build a large application on DynamoDB's specific API, migrating to a different cloud means rewriting significant parts of your data layer. The decision to use a proprietary database is a real architectural choice, not just a service-name swap.
A practical rule of thumb: open-source managed databases (RDS for PostgreSQL, Cloud SQL, Azure Database) are portable; proprietary managed databases (DynamoDB, BigQuery, Cosmos DB) are not. Both have their place; the difference is worth understanding before you commit.
Reading the Menu
In practice, recognizing a database service in the wild is mostly pattern-matching. Services with "RDS," "SQL," or a database name (PostgreSQL, MySQL) in them are relational. "DynamoDB," "Firestore," "Cosmos DB" are NoSQL. "Redshift," "BigQuery," "Synapse" are warehouses. "ElastiCache," "Memorystore," "Cache for Redis" are caches. The categories from this chapter are the decoder ring for the whole catalog.
- "BigQuery and Redshift are identical." They are both data warehouses, but BigQuery's fully serverless design — no cluster to provision, pay per query — is architecturally different from Redshift's provisioned model. Close in purpose, not identical in design.
- "All managed databases are portable." Open-source engines (PostgreSQL, MySQL, Redis) are portable: the same queries and backups work on any cloud. Proprietary engines (DynamoDB, BigQuery, Cosmos DB) are not — their APIs are cloud-specific and migrating away requires significant rewriting.
- "Cosmos DB is Azure's version of MySQL." Cosmos DB is a multi-model proprietary NoSQL service — very different from MySQL. Azure's equivalent of MySQL is Azure Database for MySQL, which is a straightforward open-source managed relational service.
- Database choice drives both technical capability and long-term flexibility. Understanding which services are portable (open-source) and which create lock-in (proprietary) is something leaders and architects weigh in every cloud decision.
- With this map, any provider's database catalog becomes readable. You no longer need to memorize names — you recognize the family from the name and know what trade-offs come with it.
- The open-vs-proprietary split is a pattern that recurs across the whole cloud catalog, not just databases. Understanding it here gives you a framework for evaluating any service on any cloud.
Knowledge Check
Which of these is Google Cloud's managed relational database service?
- BigQuery
- Cloud SQL
- Firestore
- Memorystore
Why does choosing DynamoDB (AWS) or Cosmos DB (Azure) create more lock-in than choosing a managed PostgreSQL service?
- Proprietary services charge a higher exit fee when you cancel or move to another provider
- Their APIs are cloud-specific; migrating away requires rewriting your data layer
- Proprietary databases offer weaker durability than open-source ones
- They cannot scale beyond what a single cloud region supports
What makes Google's BigQuery stand out among cloud data warehouses?
- It answers individual record lookups faster than any relational database
- It runs on AWS and Azure as well, making it fully portable
- It is fully serverless — no cluster to provision, pay per query run
- It requires a proprietary query language unrelated to SQL
A team is using managed PostgreSQL on AWS RDS and wants to move to Google Cloud. How much rewriting will their database queries need?
- Very little — PostgreSQL is open-source and runs the same on both clouds
- A complete rewrite — every cloud uses a different SQL dialect
- As much rewriting as migrating from DynamoDB to Cosmos DB
- They must export to plain files first, since managed databases are cloud-locked
You got correct