airflow.providers.google.cloud.transfers.bigquery_to_gcs

此模块包含 Google BigQuery 到 Google Cloud Storage 的运算符。

BigQueryToGCSOperator

将 BigQuery 表传输到 Google Cloud Storage 存储桶。

模块内容

class airflow.providers.google.cloud.transfers.bigquery_to_gcs.BigQueryToGCSOperator(*, source_project_dataset_table, destination_cloud_storage_uris, project_id=PROVIDE_PROJECT_ID, compression='NONE', export_format='CSV', field_delimiter=',', print_header=True, gcp_conn_id='google_cloud_default', labels=None, location=None, impersonation_chain=None, result_retry=DEFAULT_RETRY, result_timeout=None, job_id=None, force_rerun=False, reattach_states=None, deferrable=conf.getboolean('operators', 'default_deferrable', fallback=False), **kwargs)[source]

基类: airflow.models.BaseOperator

将 BigQuery 表传输到 Google Cloud Storage 存储桶。

另请参阅

有关如何使用此运算符的更多信息,请参阅指南: Operator

另请参阅

有关这些参数的更多详细信息: https://cloud.google.com/bigquery/docs/reference/v2/jobs

参数:
  • source_project_dataset_table (str) – 用作源数据的带点 (<project>.|<project>:)<dataset>.<table> 格式的 BigQuery 表。如果未包含 <project>,项目将使用连接 json 中定义的项目。(模板化)

  • destination_cloud_storage_uris (list[str]) – 目标 Google Cloud Storage URI(例如 gs://some-bucket/some-file.txt)。(模板化)遵循此处定义的约定:https://cloud.google.com/bigquery/exporting-data-from-bigquery#exportingmultiple

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

  • compression (str) – 要使用的压缩类型。

  • export_format (str) – 要导出的文件格式。

  • field_delimiter (str) – 提取到 CSV 时使用的分隔符。

  • print_header (bool) – 是否为导出的 CSV 文件打印标题。

  • gcp_conn_id (str) – (可选)用于连接到 Google Cloud 的连接 ID。

  • labels (dict | None) – 包含作业/查询标签的字典,传递给 BigQuery

  • location (str | None) – 用于此操作的位置。

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

  • result_retry (google.api_core.retry.Retry) – 如何重试检索行的 result 调用

  • result_timeout (float | None) – 在使用 result_retry 之前等待 result 方法的秒数

  • job_id (str | None) – 作业 ID。除非 force_rerun 为 True,否则将后缀作业配置的哈希值。ID 必须仅包含字母 (a-z, A-Z)、数字 (0-9)、下划线 (_) 或短划线 (-)。最大长度为 1,024 个字符。如果未提供,将生成 uuid。

  • force_rerun (bool) – 如果为 True,则运算符将使用 uuid 的哈希值作为作业 ID 的后缀

  • reattach_states (set[str] | None) – 在这些 BigQuery 作业状态下应重新连接到作业的状态集合。应是非最终状态。

  • deferrable (bool) – 在可推迟模式下运行运算符

template_fields: collections.abc.Sequence[str] = ('source_project_dataset_table', 'destination_cloud_storage_uris', 'export_format', 'labels',...[source]
template_ext: collections.abc.Sequence[str] = ()[source]
ui_color = '#e4e6f0'[source]
project_id = None[source]
source_project_dataset_table[source]
destination_cloud_storage_uris[source]
compression = 'NONE'[source]
export_format = 'CSV'[source]
field_delimiter = ','[source]
print_header = True[source]
gcp_conn_id = 'google_cloud_default'[source]
labels = None[source]
location = None[source]
impersonation_chain = None[source]
result_retry[source]
result_timeout = None[source]
job_id = None[source]
force_rerun = False[source]
reattach_states: set[str][source]
hook: airflow.providers.google.cloud.hooks.bigquery.BigQueryHook | None = None[source]
deferrable = True[source]
execute(context)[source]

创建运算符时派生。

Context 与渲染 jinja 模板时使用的字典相同。

请参阅 get_template_context 获取更多上下文。

execute_complete(context, event)[source]

立即返回,并依赖触发器抛出成功事件。触发器的回调函数。

依赖触发器抛出异常,否则假定执行成功。

get_openlineage_facets_on_complete(task_instance)[source]

实现 on_complete,因为我们将包含最终的 BQ 作业 ID。

此条目有用吗?