airflow.providers.google.cloud.transfers.adls_to_gcs

此模組包含 Azure Data Lake Storage 到 Google Cloud Storage 的 Operator。

ADLSToGCSOperator

將 Azure Data Lake Storage 路徑與 GCS 儲存桶同步。

模組內容

class airflow.providers.google.cloud.transfers.adls_to_gcs.ADLSToGCSOperator(*, src_adls, dest_gcs, azure_data_lake_conn_id, gcp_conn_id='google_cloud_default', replace=False, gzip=False, google_impersonation_chain=None, **kwargs)[原始碼]

基類: airflow.providers.microsoft.azure.operators.adls.ADLSListOperator

將 Azure Data Lake Storage 路徑與 GCS 儲存桶同步。

引數:
  • src_adls (str) – 查詢物件的 Azure Data Lake 路徑(可模板化)

  • dest_gcs (str) – 儲存物件的 Google Cloud Storage 儲存桶和字首。(可模板化)

  • replace (bool) – 如果為 true,則替換 GCS 中同名的檔案

  • gzip (bool) – 上傳檔案時壓縮選項

  • azure_data_lake_conn_id (str) – 連線到 Azure Data Lake Storage 時使用的連線 ID。

  • gcp_conn_id (str) – (可選)連線到 Google Cloud 時使用的連線 ID。

  • google_impersonation_chain (str | collections.abc.Sequence[str] | None) – 要使用短期憑據模擬的可選 Google 服務帳號,或者獲取列表中最後一個帳號的 access_token 所需的帳號鏈,將在請求中模擬該帳號。如果設定為字串,則該帳號必須授予發起帳號 Service Account Token Creator IAM 角色。如果設定為序列,列表中的身份必須向直接前一個身份授予 Service Account Token Creator IAM 角色,列表中第一個帳號向發起帳號授予此角色(可模板化)。

示例:

以下 Operator 將單個檔案(名為 hello/world.avro)從 ADLS 複製到 GCS 儲存桶 mybucket。其完整的最終 gcs 路徑將是 gs://mybucket/hello/world.avro

copy_single_file = AdlsToGoogleCloudStorageOperator(
    task_id="copy_single_file",
    src_adls="hello/world.avro",
    dest_gcs="gs://mybucket",
    replace=False,
    azure_data_lake_conn_id="azure_data_lake_default",
    gcp_conn_id="google_cloud_default",
)

以下 Operator 將所有 parquet 檔案從 ADLS 複製到 GCS 儲存桶 mybucket

   copy_all_files = AdlsToGoogleCloudStorageOperator(
       task_id='copy_all_files',
       src_adls='*.parquet',
       dest_gcs='gs://mybucket',
       replace=False,
       azure_data_lake_conn_id='azure_data_lake_default',
       gcp_conn_id='google_cloud_default'
   )

The following Operator would copy all parquet files from ADLS
path ``/hello/world``to the GCS bucket ``mybucket``. ::

   copy_world_files = AdlsToGoogleCloudStorageOperator(
       task_id='copy_world_files',
       src_adls='hello/world/*.parquet',
       dest_gcs='gs://mybucket',
       replace=False,
       azure_data_lake_conn_id='azure_data_lake_default',
       gcp_conn_id='google_cloud_default'
   )
template_fields: collections.abc.Sequence[str] = ('src_adls', 'dest_gcs', 'google_impersonation_chain')[原始碼]
ui_color = '#f0eee4'[原始碼]
src_adls[原始碼]
dest_gcs[原始碼]
replace = False[原始碼]
gcp_conn_id = 'google_cloud_default'[原始碼]
gzip = False[原始碼]
google_impersonation_chain = None[原始碼]
execute(context)[原始碼]

建立 Operator 時派生。

Context 是與渲染 jinja 模板時使用的相同的字典。

有關更多 context,請參閱 get_template_context。

此條目有幫助嗎?