云防火墙
使用我们灵活、可扩展的 NoSQL 云数据库来存储和同步数据,以进行客户端和服务器端开发。
Cloud Firestore 是一个灵活、可扩展的数据库,适用于 Firebase 和 Google Cloud 的移动、Web 和服务器开发。与 Firebase 实时数据库一样,它通过实时侦听器使您的数据在客户端应用程序之间保持同步,并为移动设备和 Web 提供离线支持,因此您可以构建响应式应用程序,无论网络延迟或互联网连接如何都能正常工作。 Cloud Firestore 还提供与其他 Firebase 和 Google Cloud 产品的无缝集成,包括 Cloud Functions。
关键能力
灵活性 | Cloud Firestore 数据模型支持灵活的分层数据结构。将您的数据存储在文档中,并组织成集合。除了子集合之外,文档还可以包含复杂的嵌套对象。 |
表达性查询 | 在 Cloud Firestore 中,您可以使用查询来检索单个特定文档或检索集合中与您的查询参数匹配的所有文档。您的查询可以包括多个链式过滤器并结合过滤和排序。默认情况下它们也被索引,因此查询性能与结果集的大小成正比,而不是与数据集的大小成正比。 |
实时更新 | 与实时数据库一样,Cloud Firestore 使用数据同步来更新任何连接设备上的数据。但是,它还旨在高效地进行简单的一次性获取查询。 |
离线支持 | Cloud Firestore 会缓存您的应用正在使用的数据,因此即使设备处于离线状态,应用也可以写入、读取、侦听和查询数据。当设备重新上线时,Cloud Firestore 会将任何本地更改同步回 Cloud Firestore。 |
专为扩展而设计 | Cloud Firestore 为您带来 Google Cloud 强大基础架构的精华:自动多区域数据复制、强一致性保证、原子批处理操作和真实事务支持。我们设计 Cloud Firestore 来处理来自世界上最大的应用程序的最棘手的数据库工作负载。 |
它是如何工作的?
Cloud Firestore 是一个云托管的 NoSQL 数据库,您的 Apple、Android 和 Web 应用程序可以通过本机 SDK 直接访问它。除了 REST 和 RPC API 之外,Cloud Firestore 还可以在原生 Node.js、Java、Python、Unity、C++ 和 Go SDK 中使用。
按照 Cloud Firestore 的 NoSQL 数据模型,您将数据存储在包含映射到值的字段的文档中。这些文档存储在集合中,集合是文档的容器,可用于组织数据和构建查询。文档支持许多不同的数据类型,从简单的字符串和数字到复杂的嵌套对象。您还可以在文档中创建子集合并构建随数据库增长而扩展的分层数据结构。 Cloud Firestore数据模型支持最适合您的应用的任何数据结构。
此外,Cloud Firestore 中的查询具有表现力、高效且灵活。创建浅查询以在文档级别检索数据,而无需检索整个集合或任何嵌套的子集合。为查询或游标添加排序、过滤和限制以对结果进行分页。要使您的应用程序中的数据保持最新,而不是每次发生更新时都检索整个数据库,请添加实时侦听器。每当您的客户端应用程序正在侦听的数据发生更改时,向您的应用程序添加实时侦听器会通过数据快照通知您,仅检索新的更改。
使用适用于 Android、Apple 平台和 JavaScript 的 Firebase 身份验证和 Cloud Firestore 安全规则,或适用于服务器端语言的身份和访问管理 (IAM),保护对 Cloud Firestore 中数据的访问。
实施路径
集成 Cloud Firestore SDK | 通过 Gradle、CocoaPods 或脚本包含快速包含客户端。 | |
保护您的数据 | 使用 Cloud Firestore 安全规则或身份和访问管理 (IAM) 来保护您的数据,分别用于移动/网络和服务器开发。 | |
添加数据 | 在您的数据库中创建文档和集合。 | |
获取数据 | 创建查询或使用实时侦听器从数据库中检索数据。 |
下一步
- 开始使用 Cloud Firestore — 设置您的数据库,然后添加数据并开始读取它。
- 详细了解 Cloud Firestore数据模型。
- 探索实时数据库和 Cloud Firestore 之间的区别。