From the course: Google Cloud Professional Data Engineer Cert Prep (2025)

Optimize for GCP database solutions

- [Narrator] An important part of using databases on the Google Cloud platform is to consider the trade-offs of one type of specialized database solution versus another. Let's take a look first here at this Google Cloud SQL option. It's a fully managed database service that lets you maintain a traditional type database so a Postgres or MySQL or SQL Server database. But the option here is that it allows you to use the Google Cloud infrastructure to do the heavy lifting for you. So this is really a good solution for people that already have deep experience with one of those common open source databases. Now, Bigtable is the next option here in that it can scale to billions of rows and thousands of columns. So for example, if you had petabytes of data, this might be a good place to take a look first. Now each of the rows is indexed and that value is a known row key. So it's a different type of solution here in that it's a single key data with very low latency and so it supports very high read and write throughput at low latency. And so it could be useful for, you know, MapReduce type operations. Another one that's a very unique offering to the Google Cloud is Spanner. And this is a globally distributed enterprise database service. So that's one of the big differences here is that from the very beginning, it's designed to be global scale and it's also non-relational horizontal scale or a relational database structure. These are both options that are available inside and it also gives you a very high SLA as well and enterprise-grade security. So if you wanted to build a global scale system, this would be, Spanner, a good solution for you. We also have Memorystore, which is a managed Redis service. So this is a caching based system that allows you to manage a cache-based database. So this is useful for storing, let's say, state in a game or storing things that potentially really need to be used at a frequent basis, but you don't necessarily need to change very frequently. We have Firestore as well, and Firestore is a NoSQL document database that's built for automatic scaling. So this is almost a, you know, no server type solution in the sense that you're really building on top of a service versus managing the service yourself. And application developers as well are, you know, very strong candidates for something like Firestore. We also have Firestore Realtime Database, and this is a JSON-based solution that allows you to build cross-platform apps for Google, iOS, Android, JavaScript, right? So you can build things very quickly by using these high level services. And then there's also Open Source databases as well. So you could use Mongo, Maria, Redis. So in a nutshell here, you have many different options. And for example, in the Spanner solution here, this is global scale from the very beginning, right? And if you wanted to build something that was going to be, let's say. a news organization that was distributing news content around the world, maybe this would be a good solution. If you already have a lot of Postgres solutions in your company and you're migrating to the cloud, maybe you'd pick this Cloud SQL option. So it's very important to know the pros and cons of each of these choices and either pick one solution or maybe several solutions and combine those together to create a unique value proposition for your organization on the Google Cloud.

Contents