Picking the right database solution on Google Cloud Platform can be tricky. There are so many options to choose from, and sometimes the differences between them are not very obvious. In this course, you will learn about Firestore, one of Google’s NoSQL databases. We will cover what it can do, how it differs from some other databases, and how to get started using it.

Learning Objectives

  • Understand what Google Cloud Firestore is
  • Learn how to use it to store and retrieve data
  • Know how to create indexes
  • Know how to install the emulators for local development

Intended Audience

  • Database administrators
  • Cloud Architects
  • GCP Developers
  • Anyone preparing for a Google Cloud certification


  • Some experience with databases and writing queries

In this lesson, I am going to provide you with a general overview of what Cloud Firestore is and what it can do.  I am also going to explain how it differs from some of the other main database technologies on Google Cloud Platform.

So first, what is Cloud Firestore?  Well, Firestore is a managed, highly scalable, NoSQL document database.  There are a lot of details packed into that last sentence, so let’s break it down.

First, Firestore is fully managed by Google.  That means you don’t have to install or configure any software yourself.  Firestore is offered as SaaS (or Software-as-a-service).  So all you have to do is load in your data and start writing queries.  Google handles all the heavy lifting for you, including patches and upgrades.  

Second, Firestore is highly scalable.  That means it can hold and process a staggering amount of data.  Even if you are storing petabytes, your queries will still execute at lightning speed.  Also, it is capable of handling an extremely high number of simultaneous operations.  Firestore can do millions of writes per second.  So there is no need to do any capacity planning.  As your product and customer base grows, Firestore will automatically scale with it.

Third, Firestore is a non-relational (or noSQL) database.  Relational (or SQL) databases store their data into organized rows and columns and they work best for structured data.  Non-relational databases (like Firestore) work best for unstructured data, things like documents, or key-value pairs.  So if you don’t need multi-row transactions, but you do need scalability and speed, then Firestore can be a great option.

To help you understand exactly where Firestore fits into Google’s database offerings, let me show you this simple chart.  

The top row contains relational databases.  The bottom row contains non-relational.  The column on the left contains the databases best suited for building applications.  And the column on the right contains the databases best suited for analytics and Big Data.  So hopefully this helps you understand where Firestore fits into the big picture. 

About the Author
Learning Paths

Daniel began his career as a Software Engineer, focusing mostly on web and mobile development. After twenty years of dealing with insufficient training and fragmented documentation, he decided to use his extensive experience to help the next generation of engineers.

Daniel has spent his most recent years designing and running technical classes for both Amazon and Microsoft. Today at Cloud Academy, he is working on building out an extensive Google Cloud training library.

When he isn’t working or tinkering in his home lab, Daniel enjoys BBQing, target shooting, and watching classic movies.