airflow.providers.google.cloud.triggers.bigquery

模块内容

BigQueryInsertJobTrigger

BigQueryInsertJobTrigger 在触发器工作器上运行以执行插入操作。

BigQueryCheckTrigger

BigQueryCheckTrigger 在触发器工作器上运行。

BigQueryGetDataTrigger

BigQueryGetDataTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

BigQueryIntervalCheckTrigger

BigQueryIntervalCheckTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

BigQueryValueCheckTrigger

BigQueryValueCheckTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

BigQueryTableExistenceTrigger

使用所需参数初始化 BigQuery 表存在触发器。

BigQueryTablePartitionExistenceTrigger

使用所需参数初始化 BigQuery 表分区存在触发器。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryInsertJobTrigger(conn_id, job_id, project_id, location, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None, cancel_on_kill=True)[source]

基类: airflow.triggers.base.BaseTrigger

BigQueryInsertJobTrigger 在触发器工作器上运行以执行插入操作。

参数
  • conn_id (str) – 对 Google Cloud 连接 ID 的引用

  • job_id (str | None) – 作业的 ID。它将附加作业配置的哈希值

  • project_id (str) – 运行作业的 Google Cloud 项目

  • location (str | None) – 数据集位置。

  • dataset_id (str | None) – 请求表的数据集 ID。(已模板化)

  • table_id (str | None) – 请求表的表 ID。(已模板化)

  • poll_interval (float) – 轮询状态的秒数。(已模板化)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据模拟,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,将在请求中模拟。如果设置为字符串,则帐户必须授予原始帐户 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须将 Service Account Token Creator IAM 角色授予直接前面的身份,列表中的第一个帐户将此角色授予原始帐户。(已模板化)

serialize()[source]

序列化 BigQueryInsertJobTrigger 参数和类路径。

get_task_instance(session)[source]
safe_to_cancel()[source]

是否可以安全地取消此触发器正在执行的外部作业。

这是为了避免 asyncio.CancelledError 因为触发器本身被停止而调用的情况。因为在这些情况下,我们不应该取消外部作业。

async run()[source]

获取当前作业执行状态并生成 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryCheckTrigger(conn_id, job_id, project_id, location, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None, cancel_on_kill=True)[source]

基类: BigQueryInsertJobTrigger

BigQueryCheckTrigger 在触发器工作器上运行。

serialize()[source]

序列化 BigQueryCheckTrigger 参数和类路径。

async run()[source]

获取当前作业执行状态并生成 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryGetDataTrigger(as_dict=False, selected_fields=None, **kwargs)[source]

基类: BigQueryInsertJobTrigger

BigQueryGetDataTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

参数

as_dict (bool) – 如果为 True,则将结果作为字典列表返回,否则作为列表列表返回(默认值:False)。

serialize()[source]

序列化 BigQueryInsertJobTrigger 参数和类路径。

async run()[source]

获取当前作业执行状态,并使用响应数据生成 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryIntervalCheckTrigger(conn_id, first_job_id, second_job_id, project_id, table, metrics_thresholds, location=None, date_filter_column='ds', days_back=-7, ratio_formula='max_over_min', ignore_zero=True, dataset_id=None, table_id=None, poll_interval=4.0, impersonation_chain=None)[source]

基类: BigQueryInsertJobTrigger

BigQueryIntervalCheckTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

参数
  • conn_id (str) – 对 Google Cloud 连接 ID 的引用

  • first_job_id (str) – 执行的第一个作业的 ID。

  • second_job_id (str) – 执行的第二个作业的 ID。

  • project_id (str) – 运行作业的 Google Cloud 项目

  • dataset_id (str | None) – 请求表的数据集 ID。(已模板化)

  • table (str) – 表名。

  • metrics_thresholds (dict[str, int]) – 由指标索引的比率字典。

  • location (str | None) – 数据集位置。

  • date_filter_column (str | None) – 列名。(可使用模板)

  • days_back (SupportsAbs[int]) – ds 和我们要检查的 ds 之间的天数。(可使用模板)

  • ratio_formula (str) – 比率公式。(可使用模板)

  • ignore_zero (bool) – 是否考虑零值的布尔值。(可使用模板)

  • table_id (str | None) – 请求表的表 ID。(已模板化)

  • poll_interval (float) – 轮询状态的秒数。(已模板化)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据模拟,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,将在请求中模拟。如果设置为字符串,则帐户必须授予原始帐户 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须将 Service Account Token Creator IAM 角色授予直接前面的身份,列表中的第一个帐户将此角色授予原始帐户。(已模板化)

serialize()[source]

序列化 BigQueryCheckTrigger 参数和类路径。

async run()[source]

获取当前作业执行状态并生成 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryValueCheckTrigger(conn_id, sql, pass_value, job_id, project_id, tolerance=None, dataset_id=None, table_id=None, location=None, poll_interval=4.0, impersonation_chain=None)[source]

基类: BigQueryInsertJobTrigger

BigQueryValueCheckTrigger 在触发器工作器上运行,继承自 BigQueryInsertJobTrigger 类。

参数
  • conn_id (str) – 对 Google Cloud 连接 ID 的引用

  • sql (str) – 要执行的 SQL 语句。

  • pass_value (int | float | str) – 通过值。

  • job_id (str | None) – 作业的 ID。

  • project_id (str) – 运行作业的 Google Cloud 项目

  • tolerance (Any) – 用于容差的特定指标。(可使用模板)

  • dataset_id (str | None) – 请求表的数据集 ID。(已模板化)

  • table_id (str | None) – 请求表的表 ID。(已模板化)

  • location (str | None) – 数据集位置。

  • poll_interval (float) – 轮询状态的秒数。(已模板化)

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据进行模拟,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户服务帐户令牌创建者 IAM 角色。如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧邻其前的标识,列表中的第一个帐户将此角色授予原始帐户(可使用模板)。

serialize()[source]

序列化 BigQueryValueCheckTrigger 参数和类路径。

async run()[source]

获取当前作业执行状态并生成 TriggerEvent。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryTableExistenceTrigger(project_id, dataset_id, table_id, gcp_conn_id, hook_params, poll_interval=4.0, impersonation_chain=None)[source]

基类: airflow.triggers.base.BaseTrigger

使用所需参数初始化 BigQuery 表存在触发器。

参数
  • project_id (str) – 运行作业的 Google Cloud 项目

  • dataset_id (str) – 请求表的 dataset ID。

  • table_id (str) – 请求表的 table ID。

  • gcp_conn_id (str) – 对 Google Cloud 连接 ID 的引用。

  • hook_params (dict[str, Any]) – hook 的参数。

  • poll_interval (float) – 检查状态的轮询时间间隔(以秒为单位)。

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据模拟,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,将在请求中模拟。如果设置为字符串,则帐户必须授予原始帐户 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的身份必须将 Service Account Token Creator IAM 角色授予直接前面的身份,列表中的第一个帐户将此角色授予原始帐户。(已模板化)

serialize()[source]

序列化 BigQueryTableExistenceTrigger 参数和类路径。

async run()[source]

将一直运行,直到表存在于 Google BigQuery 中。

class airflow.providers.google.cloud.triggers.bigquery.BigQueryTablePartitionExistenceTrigger(partition_id, **kwargs)[source]

基类:BigQueryTableExistenceTrigger

使用所需参数初始化 BigQuery 表分区存在触发器。

参数
  • partition_id ( str ) – 要检查其存在性的分区的名称。

  • project_id – 作业运行的 Google Cloud 项目。

  • dataset_id – 请求的表的数据集 ID。

  • table_id – 请求的表的表 ID。

  • gcp_conn_id – 对 Google Cloud 连接 ID 的引用。

  • hook_params – hook 的参数。

  • poll_interval – 检查状态的轮询间隔(以秒为单位)。

  • impersonation_chain – 可选的服务帐户,用于使用短期凭据进行模拟,或用于获取列表中最后一个帐户的 access_token 的链式帐户列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户 Service Account Token Creator IAM 角色。如果设置为序列,则列表中的标识必须将 Service Account Token Creator IAM 角色授予直接前面的标识,列表中的第一个帐户将此角色授予原始帐户。(已模板化)

serialize()[source]

序列化 BigQueryTablePartitionExistenceTrigger 参数和类路径。

async run()[source]

将一直运行,直到表存在于 Google BigQuery 中。

此条目是否有帮助?