关于本文
本文是通过利用生成式 AI 的自动化生成流程创建的。
Firebase Realtime Database 是一种 NoSQL 数据库,能够将 JSON 格式的数据保存到云端,并将更改实时同步到已连接的应用程序中。它是理解聊天或协同操作等“需要立即传达变化”用途的入门途径。
信息确认基准日:2026-09-19
首先给出结论
Realtime Database 的核心理念是在应用程序之间同步单个 JSON 树。Cloud Firestore 也支持实时更新,但由于集合/文档(collection/document)模型、更丰富的查询以及可扩展性,Google 建议在现代应用程序中也可以考虑使用 Firestore。
| 视角 | Realtime Database | Cloud Firestore |
|---|---|---|
| 数据结构 | JSON 树 | 集合 / 文档 |
| 优势 | 简单的实时同步 | 丰富的数据模型、查询和可扩展性 |
| 客户端直接连接 | 可通过 Firebase SDK 实现 | 可通过 Firebase SDK 实现 |
| 访问控制 | Realtime Database 安全规则 | Firestore 安全规则 |
| 离线 | 支持 | 支持 |
flowchart LR A[スマホA] --> RTDB[(Realtime Database)] B[Web B] --> RTDB RTDB --> A RTDB --> B Auth[Firebase Authentication] --> Rules[Security Rules] Rules --> RTDB
在 Google 整体中的定位
它是 Firebase 的“数据库”担当。与 Firebase Authentication 结合使用可以识别用户,并通过 Security Rules 控制读写。如果将其理解为 Cloud Storage 负责图片等文件,而 Firestore/Realtime Database 负责结构化应用数据,分工会更容易理清。
与谁相关?
普通用户与文职人员: 作为聊天、协同编辑、状态显示等即时更新机制背后的支撑而相关。
IT 管理员: 确认项目(Project)、计费、数据库位置(database location)、安全规则(Security Rules)以及认证方式。
开发人员: 设计 JSON 结构、查询(query)、侦听器(listener)、离线功能以及安全规则(Security Rules)。
位置、费用与限制
创建数据库时需选择位置(location),且创建后无法更改位置设置,因此需提前确认与用户及关联服务的距离。Spark 计划有并发连接等限制,而 Blaze 支持使用多个数据库。由于费用和上限可能会有变动,请在设计时查阅官方的定价(Pricing)与限制(Limits)说明。
与 Microsoft / Azure 相比如何?
在“从应用程序处理云端 NoSQL 数据”这一目的上,它可以与 Azure Cosmos DB 等处于同一层级进行考量,但 Realtime Database 的特点在于 Firebase SDK、JSON 同步以及与 Firebase Security Rules 的深度融合。不建议将产品名称进行一一对应,而是可以拆分为“数据存储”、“实时通知”、“认证与授权”这三个要素来进行比较。
安全地进行尝试
在验证项目中将demo/status保存到诸如这样的虚拟路径中,并以在另一个浏览器或客户端中反映出更新为成功条件。将修改位置限制在"ready"的值上,可以更容易地观察实时同步。status
不要让安全规则(Security Rules)保持无条件公开,应结合 Firebase Authentication 设计最低限度的读写权限。请勿将实际数据、令牌(token)和服务账号(Service Account)密钥保存在公开仓库中。
Google 官方信息
接下来应该做什么?
列出所需的数据结构和查询,并对 Firestore 和 Realtime Database 进行比较。如果选择 Realtime Database,请确认地理位置、安全规则、身份验证、并发连接数以及定价,并使用虚拟数据测试同步。
深入探讨各个一手信息
Firebase Realtime Database 是一个可实时同步 JSON 树的数据库。它与 Firestore 在数据模型和查询特性上有所不同。虽然它对于简单的实时同步而言很容易理解,但切勿无计划地构建庞大的 JSON 树,应优先设计安全规则和数据结构。
Google 官方一手信息
Papanda TRY:再现 JSON 树的实时更新
制作一个演示:当向虚拟聊天数据的 JSON 树中添加消息时,两个浏览器窗格会同时更新。通过“树状结构”以可视化的方式呈现与 Firestore 文档模型的区别。
这到底是个怎样的服务?
Firebase Realtime Database 是 Firebase 的一个 NoSQL 数据库,可将 JSON 数据的更改实时同步到多个客户端。对于初学者来说,可以将其理解为“即时同步共享 JSON 的机制”,通过确认其与 Firestore 在数据模型、查询和可扩展性方面的区别来选择,这样会更容易理解。
