Cloud Firestore

  • Cloud Firestore is a highly-scalable NoSQL document database
    • No tables – data is stored in documents and organised into collections
    • Optimised for storing large collections of small files
    • Each document contains a set of key-value pairs
    • Collections can be nested
  • Supports web and mobile appliations at global scale
  • Provides live syncrhonisation and offline support
  • Integtes with Google Firebase and GCP for serverless apps
  • Support ACID transactions whereby the entire operations must suceed for the transaction to complete
  • Automated multi-region replication
  • Supports complex queries
  • Consider Cloud Firestore if the database schema is likely to change and strong consistency is required

Native Mode

  • New, strongly consistent storage layer
  • Collection and document data model
  • Real-time updates
  • Mobile and web client libraries

Datastore Mode

  • Backwards compatible with Cloud Datastore with the following benefits
    • Queries are strongly consistent (instead of eventually)
    • Transactions can exceed 25 entity groups
    • >1 write per second permitted

Documents

  • Basic unit of storage in the database
  • Contains a set of key-value pairs
  • Firestore supports a variety of data types including boolean, number, string and blobamongst others
  • Documents are located in collections