Google Cloud Firestore 与 Google Cloud Spanner 的区别?

Posted

技术标签:

【中文标题】Google Cloud Firestore 与 Google Cloud Spanner 的区别?【英文标题】:Difference between Google Cloud Firestore vs Google Cloud Spanner? 【发布时间】:2019-07-07 02:51:02 【问题描述】:

云数据库技术似乎越来越多地重叠和扩散。

为了理解它,比较方法可能会有所帮助。

Google Cloud Firestore 与 Google Cloud Spanner 之间的确切区别是什么?

【问题讨论】:

【参考方案1】:

Cloud Firestore 是:

来自 Firebase 和 Google Cloud Platform 的灵活、NoSQL(非关系)可扩展数据库,用于移动、Web 和服务器开发。

另一方面,Cloud Spanner:

水平可扩展、高度一致的关系数据库服务。

所以它们之间的主要区别在于,一个是非关系数据库,而另一个是关系数据库。此外,Cloud Firestore 还是一个实时数据库,这意味着对于数据库中发生的每次更改,您都会立即得到通知。

【讨论】:

【参考方案2】:

Cloud Firestore 是一个快速、完全托管、无服务器、云原生 NoSQL 文档 简化存储、同步和查询您的移动设备、Web 和 全球范围内的物联网应用程序。其客户端库提供实时同步和离线 支持,其安全功能和与 Firebase 和 GCP 的集成加速 构建真正的无服务器应用程序。 Cloud Firestore 支持 ACID 事务,具有自动多区域复制和强一致性,您的数据安全 并且可用,即使发生灾难。 Cloud Firestore 甚至允许您运行 针对您的 NoSQL 数据的复杂查询,而不会降低 表现。

Cloud Spanner 是一项专为云构建的服务,旨在结合以下优势 具有非关系水平尺度的关系数据库结构。 该服务可以提供 PB 级的容量并提供事务一致性 全球规模、模式、SQL 和自动同步复制 可用性。用例包括财务应用程序和库存应用程序 传统上由关系数据库技术提供服务。

【讨论】:

以上是关于Google Cloud Firestore 与 Google Cloud Spanner 的区别?的主要内容,如果未能解决你的问题,请参考以下文章

init() 中的 Swift Array.append 不能与 Firestore (Google Cloud/FIrebase) 结合使用

Google Cloud Firestore

限制通过VPC网络访问Google Cloud Firestore。

导出 Firestore 备份数据的云功能。使用 firebase-admin 或 @google-cloud/firestore?

使用 firebase_admin 或 google.cloud.firestore 在 python 中的 Firestore 客户端(作为用户)

Google Firestore 是 Google Cloud Datastore 的子集还是超集?