airflow.providers.google.cloud.transfers.adls_to_gcs

该模块包含 Azure Data Lake Storage 到 Google Cloud Storage 的操作符。

模块内容

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 的链式帐户列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户服务帐户令牌创建者 IAM 角色。如果设置为序列,则列表中的身份必须将服务帐户令牌创建者 IAM 角色授予紧随其后的身份,列表中的第一个帐户将此角色授予原始帐户(已模板化)。

示例:

以下操作符会将名为 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",
)

以下操作符会将所有 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'[源代码]
execute(context)[源代码]

在创建操作符时派生。

上下文与渲染 Jinja 模板时使用的字典相同。

有关更多上下文,请参阅 get_template_context。

此条目是否对您有帮助?