Firestore 概览
Firestore 是一种企业级全托管式文档数据库,可提供多区域数据复制、高级 Google Cloud 查询功能和符合 ACID 标准的事务。Firestore 的服务等级协议 (SLA) 承诺 99.999% 的可用性,并提供托管式备份等灾难恢复功能,是一种高可用性 NoSQL 数据库,可支持任务关键型工作负载。
除了惯用的 Firestore 客户端库之外,Firestore 还提供与 MongoDB 兼容的 API,让您可以使用 Firestore 和现有的 MongoDB 应用。Firestore 还支持(但并非必需)与 Firebase 移动应用和 Web 应用开发平台集成。
主要功能
无论您以何种方式访问 Firestore,都可以使用以下主要功能:
| 无服务器基础架构 | Firestore 采用按用量计费模式。Firestore 无需预先预配任何资源,并且会自动扩缩以匹配您的负载。 |
| 近乎无限的扩缩能力 | Firestore 可按需无缝扩缩计算和存储资源 无需配置容量、分片或预配存储空间和 I/O。 |
| 业界领先的高可用性 | 所有 Firestore 数据库都具备高可用性,单区域部署的可用性为 99.99%,多区域部署的可用性为 99.999%。 Firestore 具有自动多区域数据复制、强一致查询、原子批量操作和事务支持。 |
| 低延迟 | Firestore 提供几毫秒的读取延迟时间。 |
| 企业级安全和监控 | 通过集中式 Google Cloud 治理(包括 Identity and Access Management [IAM]、VPC Service Controls [VPC-SC]、Access Transparency、 Access Approval、Cloud Monitoring 和 Cloud Logging )来保护 Firestore。通过集成的 Database Center,您可以更清楚地了解 Firestore 数据库舰队的运行情况,并简化管理工作。集中式控制和 AI 辅助可让您获得统一的舰队视图和 简化的管理。 |
您可以根据应用的要求,通过多个界面与 Firestore 进行交互。
如何设置企业级无服务器文档数据库?
使用 Firestore 数据库,并使用 Firestore 客户端 库、Google Cloud CLI 和 Google Cloud 控制台进行连接。
建议需要文档数据库的开发者使用。这是利用最新、最先进的 Firestore 功能、企业级可配置性、可观测性和安全性的最佳方式。凭借全面的客户端库支持,Firestore 可融入您选择的企业架构和开发技术栈。
如何将 MongoDB 应用迁移到无服务器云数据库?
使用与 MongoDB 兼容的 Firestore,并使用 MongoDB 客户端库和工具进行连接。
如果您要从 MongoDB 迁移应用,或者计划在外部部署依赖于 MongoDB 的 多云或混合云,建议使用此方法。 Google Cloud Firestore 与 MongoDB 网络兼容的 API 支持直接原样迁移。除了 MongoDB 客户端库之外,您还可以使用熟悉的工具(如 mongosh、mongoimport、Compass)与 Firestore 进行交互。
请参阅与 MongoDB 兼容的 Firestore 支持的功能。
如何构建具有完全集成、零配置后端的 Web 应用或移动应用?
使用 Firestore,并将 Firebase 平台与您的应用集成。
建议寻求后端即服务 (BaaS) 解决方案(而不是独立数据库)的用户使用。Firebase 提供了一个 固执己见、开箱即用、端到端的解决方案,其中包括应用托管以及与许多 Google Cloud 服务(如 Firestore、Cloud Storage 和 Cloud Run functions)的集成。通过产品之间的紧密集成,您可以使用 Firebase SDK 和 Firebase 控制台与 Firestore 数据库进行交互。
详细了解如何将 Firestore 与 Firebase 搭配使用。
虽然 Firebase 非常适合提高开发效率,但如果您的企业 架构和治理框架需要对堆栈的许多方面进行精细控制,那么直接使用 Firestore 等单个 Google Cloud 产品可以获得最大的灵活性。
如何移植旧版 Datastore 应用以使用 Firestore?
使用与 Datastore 兼容的 Firestore 和 Datastore 客户端库。
Datastore 兼容模式支持基于 Datastore 和 App Engine 构建的旧版应用。Datastore 兼容性是 Firestore 之上的 API 层,具有相同的可用性、性能、一致性和可伸缩性。除了更好地与 App Engine 集成之外,Datastore 兼容性与直接使用 Firestore 相比没有任何优势。