airflow.providers.google.cloud.transfers.sql_to_gcs
¶
SQL to GCS 運算子的基礎運算子。
模組內容¶
類別¶
以 JSON、CSV 或 Parquet 格式從 SQL 複製資料到 Google Cloud Storage。 |
- class airflow.providers.google.cloud.transfers.sql_to_gcs.BaseSQLToGCSOperator(*, sql, bucket, filename, schema_filename=None, approx_max_file_size_bytes=1900000000, export_format='json', stringify_dict=False, field_delimiter=',', null_marker=None, gzip=False, schema=None, parameters=None, gcp_conn_id='google_cloud_default', impersonation_chain=None, upload_metadata=False, exclude_columns=None, partition_columns=None, write_on_empty=False, parquet_row_group_size=100000, **kwargs)[原始碼]¶
基底類別:
airflow.models.BaseOperator
以 JSON、CSV 或 Parquet 格式從 SQL 複製資料到 Google Cloud Storage。
- 參數
sql (str) – 要執行的 SQL 語句。
bucket (str) – 要上傳的儲存桶。
filename (str) – 上傳到 Google Cloud Storage 時,用作物件名稱的檔案名稱。應在檔案名稱中指定
{}
,以便在檔案因大小而分割時,運算子可以注入檔案編號。schema_filename (str | None) – 如果設定,則用作物件名稱的檔案名稱,用於上傳包含從資料庫傾印的表格的 BigQuery schema 欄位的 .json 檔案。
approx_max_file_size_bytes (int) – 此運算子支援將大型表格傾印分割成多個檔案的功能(請參閱上面 filename 參數文件中的註解)。此參數允許開發人員指定分割檔案的大小。請查看 https://cloud.google.com/storage/quotas 以查看單一物件允許的最大檔案大小。
export_format (str) – 要匯出檔案的期望格式。(json、csv 或 parquet)
stringify_dict (bool) – 是否將字典類型物件(例如 JSON 欄位)傾印為字串。僅適用於 CSV/JSON 匯出格式。
field_delimiter (str) – 用於 CSV 檔案的分隔符號。
null_marker (str | None) – 用於 CSV 檔案的 null 標記。
gzip (bool) – 壓縮檔案以上傳的選項(不適用於 schema)。
schema (str | list | None) – 要使用的 schema,如果有的話。應為字典列表或字串。如果使用 Jinja 範本,請傳遞字串,否則傳遞字典列表。範例請參閱: https://cloud.google.com/bigquery/docs /schemas#specifying_a_json_schema_file
gcp_conn_id (str) – (選填) 用於連線到 Google Cloud 的連線 ID。
parameters (dict | None) – 在查詢執行時替換的參數字典。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可選的服務帳戶,用於使用短期憑證模擬身分,或鏈式帳戶列表,用於取得列表中最後一個帳戶的 access_token,該帳戶將在請求中被模擬身分。如果設定為字串,則該帳戶必須授予原始帳戶「服務帳戶權杖建立者」IAM 角色。如果設定為序列,則列表中的身分必須將「服務帳戶權杖建立者」IAM 角色授予緊鄰的前一個身分,列表中的第一個帳戶將此角色授予原始帳戶(範本化)。
upload_metadata (bool) – 是否將列數 metadata 作為 blob metadata 上傳
exclude_columns (set | None) – 要從傳輸中排除的欄位集合
partition_columns (list | None) – 用於檔案分割的欄位列表。為了使用此參數,您必須依 partition_columns 對資料集進行排序。透過將 ORDER BY 子句傳遞到 sql 查詢來執行此操作。檔案以上傳到 GCS 作為具有 Hive 樣式分割目錄結構的物件(範本化)。
write_on_empty (bool) – 選填參數,用於指定在匯出未傳回任何列時是否寫入檔案。預設值為 False,因此如果匯出未傳回任何列,我們將不會寫入檔案。
parquet_row_group_size (int) – 使用 parquet 格式時,每個 row group 中的概略列數。使用較大的 row group 大小可以減少檔案大小並提高讀取資料的效能,但執行運算子需要更多記憶體。(預設值:100000)
- template_fields: collections.abc.Sequence[str] = ('sql', 'bucket', 'filename', 'schema_filename', 'schema', 'parameters', 'impersonation_chain',...[原始碼]¶
- template_ext: collections.abc.Sequence[str] = ('.sql',)[原始碼]¶