Context
1: Is choosing a database easy?
2: What are the different categories of databases?
2.1: What are Relational Databases?
Relational Databases – OLTP – Online Transaction Processing
Cloud SQL
Cloud Spanner
Cloud SQL vs Cloud Spanner
Relational Database – OLAP – Online Analytics Processing
BigQuery – Modern Data warehouse
2.2: What are NoSQL Databases?
Cloud Datastore and Firestore
Cloud BigTable
Choosing between Cloud Firestore, Datastore vs Cloud BigTable
2.3: What are In-memory Databases?
3: Let’s get a quick summary
Is Choosing a Database Easy?
Choosing a database for your use case is not easy. A few factors you would need to consider:
1: Do you want a fixed schema? Do you want flexibility in defining and changing your schema? Do you want to go schemaless?
2: What level of transaction properties do you need? (atomicity and consistency)
3: What kind of latency do you want? (seconds, milliseconds or microseconds)
4: How many transactions do you expect? (hundreds or thousands or millions of transactions per second)
5: How much data will be stored? (MBs or GBs or TBs or PBs)
Before we get into the details, let’s explore the different categories of databases: