In this post I’ll share with you my “cheat sheet” for comparing the different database options on the Google Cloud Platform (GCP). This sheet is included in chapter 6 of my book, “The Professional Cloud Architect’s Big Fact Sheet”, which is a fact list for use by GCP architects or those preparing for a GCP architecture exam. You can read more about the book at economo.tech.

As a GCP architect, sooner or later, you’ll have to choose between the different GCP database options. My cheat sheet for use in such situations is all in one table, which you can see below. The table summarises the different features of seven database technologies that GCP offers. Note that this one is only about proper databases; other storage solutions, and other data services, are for a separate sheet (or you can check out chapters 5 and 7 in my book).

Each row in the cheat sheet looks at one aspect of working with a database. If you’re an experienced database engineer or architect then you’ll know these criteria quite well from work with other databases. (Or, if you’re not sure, I do go through them one-by-one in the book.)

The green smiley faces in the table mean “yes” or “comprehensive”. The red sad faces mean “no” or “very limited”, and the amber ones are somewhere in the middle. Places where there’s no face indicate that the topic is not relevant to the specific database.

In many places, a red face indicates a disadvantage of this option, but not always. For example, some of the database options don’t support column-based storage, but that’s because they follow a different concept, and it’s not necessarily a weakness. So a “no” here doesn’t mean it’s a bad thing.

Every face shown in the cheat sheet summarises a lot of detailed info, which you can find in the GCP formal documentation or other sources, including (as a very concise list of facts) in chapter 6 of my book. It’s important to note that this table isn’t exactly a standalone tool, because the topics it covers are complex, and some aspects are too subtle to be simply summarised as red, amber or green. I hope the table can help you remember the details (it has definitely helped me!) because it’s the details, rather than the funny faces, that really matter.

Some rows of the cheat sheet deal with factual info. For example, there’s no room for doubt regarding whether or not a database is NoSQL. But other rows are a matter of professional judgement, and you might have a different opinion from mine on these topics.

In the “analytics” row (*), Spanner and BigQuery are green because they support complex joins and very large datasets. Firebase doesn’t support such joins but I still gave it a smiley face because it allows multiple indexes. I’ve not given Cloud SQL a smiley because it’s not a tool for big data analytics.

In the “replication” row (**), green is for databases that offer a hierarchical approach to redundancy, both within regions and across regions. Amber is for databases with just a standby copy for use in case of failure.

The “capacity / quota limits” row (***) reflects my personal judgement about whether a complex project, processing very large datasets, is likely to hit capacity or quota constraints.

I hope you find this helpful!