配额和限制

本文档列出了适用于 Managed Service for Apache Airflow 的配额和系统限制。

  • 配额具有默认值,但您通常可以申请 调整。
  • 系统限制是无法更改的固定值。

Google Cloud 使用配额来帮助确保公平性并减少资源使用和可用性的激增。配额用于限制您的 Google Cloud 项目可使用多少Google Cloud 资源。配额适用于一系列资源类型,包括硬件、软件和网络组件。例如,配额可以限制对某项服务的 API 调用次数、您的项目并发使用的负载均衡器数量或者您可以创建的项目数量。配额可以防止服务过载,从而保护Google Cloud 用户社区。配额还可以帮助您管理自己的 Google Cloud 资源。

Cloud 配额系统执行以下操作:

在大多数情况下,当您尝试消耗的资源超出其配额允许的范围时,系统会阻止对资源的访问,并且您尝试执行的任务会失败。

配额通常在 Google Cloud 项目级别应用。您在一个项目中使用资源不会影响您在另一个项目中的可用配额。在 Google Cloud 项目中,配额在所有应用和 IP 地址间共享。

如需了解详情,请参阅 Cloud 配额概览

如需调整大多数配额,请使用 Google Cloud 控制台。如需了解详情,请参阅 申请配额调整

Managed Airflow 资源也有 系统限制。 系统限制不能更改。

Managed Airflow 配额

本部分中的配额仅适用于 Cloud Composer API 和使用 Cloud Composer API 的工具:

  • 控制台中的 Managed Airflow 界面 Google Cloud
  • gcloud composergcloud beta composer 命令
  • Managed Airflow REST API
  • Managed Airflow RPC API
  • Terraform,用于对 Managed Airflow 环境执行操作

本部分中的配额不适用于您在 Airflow DAG 中使用的任何服务。此类服务使用自己的配额

Managed Airflow 具有以下 API 配额:

配额名称 限制
每个项目的读取请求数 每分钟 1,000 个配额单位
每个项目的写入请求数 每天 25,000 个配额单位
每个项目的写入请求数 每分钟 1,500 个配额单位
每个项目的保存快照请求数 每天 5,000 个配额单位
每个项目的保存快照请求数 每分钟 250 个配额单位
每个环境每个项目的保存快照请求数 每天 2,600 个配额单位
每个项目的加载快照请求数 每天 2,500 个配额单位
每个项目的加载快照请求数 每分钟 150 个配额单位
每个环境每个项目的加载快照请求数 每天 700 个配额单位

Cloud Composer API 调用的费用(以配额单位计)如下:

操作 配额单位费用 请求类型
所有操作 1 读取
environments.create 100 写入
environments.patch 100 写入
environments.delete 100 写入
environments.databaseFailover 100 写入
environments.restartWebServer 100 写入
environments.checkUpgrade 100 写入
environments.executeAirflowCommand 25 写入
environments.stopAirflowCommand 25 写入
environments.saveSnapshot 50 保存快照
environments.loadSnapshot 50 加载快照

配额计算示例

  • 一个 environments.create 请求会消耗 写入 配额中的 100 个配额单位。

    写入请求有两个此类配额:

    • 每个项目每天的写入请求数
    • 每个项目每分钟的写入请求数

    此操作会消耗每个配额中的 100 个配额单位。

    如果您随后执行 environments.restartWebServer 请求,则会从同一配额中消耗另外 100 个配额单位,因为 environments.restartWebServerenvironments.create 请求共享配额。

  • 一个 environments.saveSnapshot 请求会消耗以下三个配额中的 50 个配额单位:

    • 每个项目每天的保存快照请求数
    • 每个项目每分钟的保存快照请求数
    • 每个环境每个项目的保存快照请求数

    这三个配额限制了 environments.saveSnapshot 请求的最大数量。每个配额的限制方式不同。

    每个项目每天的保存快照请求数 配额限制为 2,500 个配额单位。您每天最多可以在项目中执行 50 个 environments.saveSnapshot 请求。

    每个项目每分钟的保存快照请求数 配额限制为 150 个配额单位。在一分钟内,您最多只能在项目中执行三个 environments.saveSnapshot 请求。

    最后,每个环境每个项目的保存快照请求数 配额限制为 750 个配额单位。您每天最多可以为单个环境执行 15 个 environments.saveSnapshot 请求。 如果特定环境的所有配额单位都已消耗完毕,您仍然可以为项目中的其他环境运行 environments.saveSnapshot 请求。

其他服务的配额

Managed Airflow 使用其他 Google Cloud 服务。这些服务具有项目级配额,当您使用 Managed Airflow 时,这些配额会生效。

例如,Cloud Storage 的配额适用于与项目中环境关联的所有存储分区。 再举一个例子,环境的集群使用 Google Kubernetes Engine,因此 GKE 的配额适用于与项目中环境关联的所有集群。

Managed Airflow 使用的服务的配额

Managed Airflow 使用以下服务。这些服务有自己的配额限制:

可选服务的配额

您可以将 Airflow 运算符 与 Google Cloud 服务结合使用。您在 DAG 中使用的任何服务都受该服务的配额限制。