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。

此條目有用嗎?