Scan with Phone

Scan to instantly open and share this page on your mobile device.

Link copied to clipboard!

Group 7: NoSQL & In-Memory

Non-relational and caching databases: Firestore (document database), Bigtable (wide-column), Memorystore (Redis/Memcached), Firebase Realtime Database (mobile sync). Each serves different data models: documents, wide-column, key-value caching, and real-time synchronization.

Data Model Selection: Firestore for documents with rich queries; Bigtable for time-series and wide-column data; Memorystore for caching and session storage; Firebase Realtime Database for mobile real-time sync.

Services & Core Identity

Firestore

Serverless document database with real-time synchronization, offline support, and ACID transactions.

Bigtable

High-performance wide-column database for time-series, IoT, and analytics workloads requiring low latency.

Memorystore

Fully managed Redis and Memcached for caching, session storage, and high-speed data access.

Firebase Realtime Database

NoSQL cloud database optimized for mobile applications with real-time synchronization and offline capabilities.

Key Differences

DimensionFirestoreBigtableMemorystoreFirebase Realtime DB
Data ModelDocumentWide-columnKey-valueJSON tree
Query CapabilitiesRich queriesRow key/scanKey operationsLimited queries
ConsistencyStrongEventualStrongEventual
ScalingAutomaticManual clustersManual/automaticAutomatic
Use CasesWeb/mobile appsTime-series, IoTCaching, sessionsMobile sync
LatencySingle-digit msSub-10msSub-millisecondReal-time

Mathematical Selection Model

Criteria [0..10]. Higher scores indicate better database fit.

Score_Firestore = 0.30*C_documentData + 0.25*C_complexQueries + 0.20*C_offlineSupport + 0.15*C_transactions + 0.10*C_serverless Score_Bigtable = 0.35*C_timeSeriesData + 0.25*C_highThroughput + 0.20*C_lowLatency + 0.15*C_iotWorkloads + 0.05*(10 - C_complexQueries) Score_Memorystore = 0.40*C_cachingNeed + 0.25*C_sessionStorage + 0.20*C_ultraLowLatency + 0.10*C_dataStructures + 0.05*(10 - C_offlineSupport) Score_FirebaseRealtime = 0.35*C_mobileApp + 0.30*C_realTimeSync + 0.20*C_offlineSupport + 0.10*C_simpleData + 0.05*(10 - C_complexQueries)
{{s.name}}: {{s.val | number:2}}

Interpretation Rules

  • Firestore: Content management, user profiles, catalog data, collaborative applications
  • Bigtable: Time-series analytics, IoT data ingestion, financial data, AdTech
  • Memorystore: Session management, gaming leaderboards, real-time analytics, cache layer
  • Firebase Realtime DB: Chat applications, gaming, collaborative editing, mobile-first apps

When NOT to Use NoSQL

  • Complex relational data with ACID requirements (consider Cloud SQL)
  • Analytical workloads requiring SQL (consider BigQuery)
  • Strong consistency across global regions (consider Cloud Spanner)
  • Complex reporting and business intelligence (consider data warehouse solutions)

Summary

GCP NoSQL services address different data patterns and performance requirements. Firestore excels for document-oriented applications, Bigtable handles high-throughput time-series data, Memorystore provides ultra-fast caching, and Firebase Realtime Database enables mobile real-time synchronization. Choose based on data model, consistency requirements, and access patterns.

next