Firestore 价格
本文档介绍 Firestore 企业版的价格详情。 如需了解标准版的价格,请参阅 Firestore 价格。
Firestore 企业版提供最先进的 Firestore 功能,可最大限度地提高开发者的灵活性和控制力。 Firestore 企业版支持与 MongoDB 兼容的 Firestore API。
使用 Firestore 企业版时,您需要为以下各项支付费用:
- 读取单位,指读取数据时处理的文档或索引,按 4 KiB 为一档位计算。
- 写入单位,表示将数据写入数据库时处理的数据,按 1 KiB 为一档位计算。
- 事件单位:表示每个事件中包含的数据,以 4 KiB 分批计算。
- 数据库使用的存储空间容量,包括元数据和索引的开销。
- 您的网络带宽使用量。
存储空间和带宽使用量是以吉比字节 (GiB) 为单位计算的,其中 1 GiB = 230 个字节。所有费用每天进行累计。
以下部分详细介绍了 Firestore 企业版用量的收费方式。
免费层级使用量
Firestore 提供免费层级,让您可以零成本开始使用。下表列出了免费层级用量。
免费层级用量按日计算,并在美国太平洋时间零点重置。
免费层级仅适用于每个项目中的 1 个 Firestore 数据库。在没有免费层级数据库的项目中创建的第一个数据库会获得免费层级。如果删除了应用免费层级的数据库,则下一个创建的数据库会获得免费层级。
| 免费层级 | 金额 |
|---|---|
| 数据存储 | 1 GiB |
| 读取单位 | 每天 50000 次 |
| 写入单位 | 每天 40,000 次 |
| 出站数据传输 | 每月 10 GiB |
| 活动单元 | 每天 10,000 个 |
以下操作和功能不包括免费使用量:
- 托管式删除
- PITR 数据
- 备份数据
- 恢复操作
- 克隆操作
不同位置的价格
如果您使用非美元货币付费,请参阅 Cloud Platform SKU 上以您的币种列出的价格。
读取、写入和删除
读取操作按读取单位收费,读取单位反映了为满足查询而处理的数据量,以 4 KiB 为一批次计量。
写入和删除操作按写入单位收费,写入单位反映了执行操作时处理的数据量,以 1 KiB 为批次计量。
读取、写入和删除操作的收费方式有一些您应该注意的细节。以下部分将详细介绍这些细节问题。
读取操作
大多数读取操作都涉及根据标识符对特定文档执行点读取,或扫描一系列数据。读取操作会消耗读取单位。
点读取操作的费用根据读取的数据量计算,以 4 KiB 为一批次向上取整。例如,按 ID 查找 3 KiB 文档时,系统会将文档大小向上舍入为 4 KiB,并收取 1 个读取单位的费用。
扫描操作涉及读取连续的数据范围。扫描操作期间读取的数据量取决于数据本身的形状、索引的可用性以及查询计划的复杂性等因素。扫描的连续数据总量将汇总在一起,并以 4 KiB 为一批次按读取单位计费。
查询费用根据处理查询时读取的数据量(索引和/或文档)收取,该数据量可能超过返回的数据量。
所有读取操作的最低费用为 1 个读取单元。
Firestore 查询解释可以帮助您了解每个查询的处理方式和计费方式。
写入操作
写入操作包括创建新文档和更新现有文档。写入操作会消耗写入单位。
创建新文档的费用取决于创建的文档大小和写入的索引条目大小。写入的每个文档或索引条目均按写入的单个条目向上取整到最接近的 1KiB 来计费。
更新文档需要读取数据以找到要更新的文档,评估要对文档本身和相应索引执行的更改,然后将这些更改写入数据库。所收取的文档大小是更新前后的文档大小中较大的那个,并且需要更新和删除的索引条目会产生费用。如上所述,更新所涉及的数据总量按 1 KiB 分批计算写入单位费用。
删除操作
删除操作的费用取决于要删除的文档和相应索引条目的大小。删除的每个项均按 1 KiB 分批计入写入单位。
价格示例
如需了解 Firestore 企业版结算费用如何累计,请参阅价格示例页面。
查询解释
Firestore 查询解释可以帮助您了解查询的归因费用。如果仅检索查询计划,则最低费用为 1 个读取单位。如果检索到查询计划并执行了查询,则会产生查询费用。
数据库存储空间大小
数据库存储空间大小 您需要为您在 Firestore 中存储的数据量支付费用,包括相关存储开销。存储开销包括元数据和索引。
Firestore 中存储的每个文档都需要以下元数据:
- 文档 ID,包括集合 ID 和文档名称。
- 每个字段的名称和值。由于 Firestore 是无架构的,因此文档中每个字段的名称必须与字段值一起存储。
- 引用了该文档的任何索引。每个索引条目都包含集合 ID、任意数量的字段值(具体取决于索引定义)以及文档名称。
存储费用以 GiB/月为单位,每天计算一次。Firestore 每天都会测量数据库大小。在一个月内,系统会计算这些样本点的平均值,以计算数据库存储空间大小。此平均值乘以存储空间(GiB-月)的单价。
如需了解如何计算 Firestore 的存储空间使用量,请参阅存储空间大小的计算。
PITR 数据
如果启用 PITR,您需要支付 PITR 数据的存储费用。PiTR 数据存储的总费用与数据库的存储费用类似。
PITR 的存储费用以 GiB/月为单位,每天计算一次。Firestore 每天都会测量数据库大小。在一个月内,系统会计算这些样本点的平均值,以计算数据库存储空间大小。此平均值乘以 PITR(GiB-月)的单价。
例如,如果数据库一个月的平均大小为 1 GiB,并且整个月都启用了 PITR,则计费 PITR 数据大小也是 1 GiB(因为 PITR 数据大小与数据库大小成正比)。
最低结算费用:即使您在启用后 1 天内停用了 PITR,系统也可能会向您收取最多 1 天的 PITR 存储费用。
备份数据和恢复操作
如果启用了backups功能,则需要支付数据库备份的存储费用。备份的存储空间大小与进行备份时数据库的存储空间大小相同。
备份的存储费用以 GiB/月为单位。在一个月内,系统会计算每个备份的保留天数,还会计算一个月内的平均值。备份费用的计算方法是:备份的存储空间大小乘以备份保留月份的比例,再乘以单价。系统按 America/Los_Angeles 时区来定义日期边界以用于结算。
当您执行恢复操作时,Firestore 会衡量恢复操作的备份大小。备份的大小乘以恢复操作 (GiB) 的单价。
网络带宽
您需要为 Firestore 请求所使用的网络带宽支付费用,如以下部分中所示。Firestore 请求的网络带宽费用取决于请求的响应大小、您的 Firestore 数据库的位置和响应的目标位置。
Firestore 会根据序列化消息格式计算响应大小。协议开销(如 SSL 开销)不计入网络带宽使用量。Firestore 安全规则拒绝的请求不计入网络带宽使用量。
如需了解您使用了多少网络带宽,可以使用 API 控制台将结算数据导出为文件。
常规网络流量价格
对于源自 Google Cloud Platform(例如,来自在 Google Compute Engine 上运行的应用)的请求,我们按如下标准向您收取费用:
| 流量类型 | 价格 |
|---|---|
| 入站数据传输 | 免费 |
| 区域内的数据传输 | 免费 |
| 同一多区域内不同区域之间的数据传输 | 免费 |
| 美国境内不同区域之间的数据传输(每 GiB) | $0.01(每个月前 10 GiB 免费) |
| 不同区域之间的数据传输(不包括美国境内不同区域之间的流量) | Google Cloud Platform 出站互联网数据传输费率 |
如果您使用非美元货币付费,请参阅 Cloud Platform SKU 上以您的币种列出的价格。
互联网数据传输费率
您需要支付以下互联网数据传输费用:
- 不同区域之间的 Google Cloud 请求,不包括美国境内不同区域之间的流量。
- 来自 Google Cloud 以外(例如来自用户的移动设备)的请求。
如果您使用非美元货币付费,请参阅 Cloud Platform SKU 上以您的币种列出的价格。
管理支出
如需管理支出,请设置每月预算和提醒。
Google Cloud 预算和提醒
Google Cloud 允许您为所有 Google Cloud 服务设置每月预算。您可以使用每月预算来监控 Google Cloud 的总体费用,包括 Firestore 的网络带宽费用。设置预算后,您可以设置提醒,以便在费用接近预算时收到电子邮件通知。
重要提示:即使您已超出每月 Google Cloud 预算,对 Firestore 及其他 Google Cloud 服务提交的请求也会成功。您应自行负责更改使用方式,以确保费用不超出 Google Cloud 预算。
请按照这些说明在 Google API 控制台中设置每月预算并创建提醒。