了解结算报告

本页提供了有助于您了解 Firestore 结算报告的相关提示和资源。本页面介绍了以下常见的结算问题:

  • 在应用使用情况之外,费用来源包括导入操作、导出操作和控制台用量。
  • 在您的应用中,实时更新、无操作写入和查询偏移可能会提高使用量超出预期。
  • 在控制台中使用用量信息中心时,请记下信息中心与结算报告之间的差异。

导入和导出用量

在细分结算报告时,请务必查看与导入和导出操作相关的费用。这些操作会执行读取和写入操作,这些操作会占用您的 Firestore 帐单。这些操作可能成为大量的付费操作来源,具体取决于您导入和导出数据的频率。

请注意,控制台中的用量信息中心不会反映导入和导出操作的读写情况。您可以通过以下方式查看导入/导出操作及相关费用:

结算标签

导出和导入操作会向其读写操作应用 goog-firestoremanaged:exportimport 标签。在 Cloud Billing 报告页面中,您可以使用此标签查看与导入和导出操作相关的费用:

从过滤条件菜单访问 goog-firestoremanaged 标签。

列出最近的操作

您可以使用控制台或 gcloud 查看最近的导入和导出操作。

Google Cloud Console

您可以在 Google Cloud Console 的 Firestore 导入/导出页面中查看近期导出和导入操作的列表。

转到“导入/导出”页面

gcloud

使用 operations list 命令可查看所有正在运行和最近完成的导出和导入操作:

gcloud firestore operations list

管理员操作的审核日志

Firestore 会针对导出操作、导入操作和索引操作写入审核日志,请参阅 Firestore 审核日志记录信息

控制台用量

在 Firebase 控制台和 Cloud Console 中,Firestore 数据查看器执行的读取操作计入已计费的 Firestore 使用量。当您打开或刷新 Firestore 页面时,控制台会加载文档以填充该页面。只要 Firestore 页面保持打开状态,控制台就会使用实时查询来更新可见的文档和集合。

在您细分用量时,会将控制台用量作为另一个 Firestore 操作来源。在结算报告中,无法区分控制台流量与应用流量。

计费操作

除了价格信息之外,还请审核您的应用,看看是否存在以下操作,该操作可能比预期更快上涨:

  • 实时更新

    当您监听查询的结果时,每次结果集内添加或更新了文档,您都需要支付读取费用。查看实时侦听器的范围。侦听非常宽泛的查询或侦听整个集合的结果可能会导致所需的读取操作比所需值多。

  • 无操作写入和无操作删除

    无操作是指不会针对任何文档做出更改的操作。对于无操作写入和删除操作,您仍需要支付相关费用。

    对于删除操作,即使指定的文档不存在,也会产生费用。

    对于写入操作,如果操作没有更改,您仍需付费。例如,将文档字段更新为同一字段值的操作会产生费用。

  • 查询偏移

    查询偏移会跳过指定数量的查询结果,但跳过的结果仍会计入结算。由于存在这笔额外费用,您应该使用游标而不是偏移。

用量信息中心差异

Firebase 和 Cloud Console 中的 Firestore 用量信息中心会估算用量。它们可以帮助您确定使用高峰。不过,信息中心并不能准确显示计费操作。计费用量可能更高。在所有差异中,结算报告优先于使用情况信息中心。

导致用量信息中心与计费用量之间产生差异的操作包括:

  • 导入和导出操作 这些操作执行的读取和写入操作不会显示在用量信息中心内。
  • 无操作写入。不会导致数据库更改的操作(例如,不更改字段值的更新或对已删除文档执行写入操作)会导致结算操作受到影响。但是,用量信息中心不计入这些操作。
  • 合并的写入。如果快速写入同一文档时,使用信息中心可能会将多次写入合并在一起并计为 1 次。计费时,每次写入仍会单独计算。

    用量信息中心也会收起服务器时间戳、数字增量和数组联合操作等字段转换的写入。对于字段转换,用量信息中心可能会将多项操作计为一次操作。

后续步骤

如需结算报告方面的更多帮助,请与 Cloud Billing 支持团队联系。