airflow.providers.microsoft.azure.transfers.s3_to_wasb

异常

TooManyFilesToMoveException

尝试将多个文件从 S3 移动到单个 Azure Blob 时抛出的自定义异常。

InvalidAzureBlobParameters

当未向算子传递 blob_prefix 或 blob_name 时引发的自定义异常。

InvalidKeyComponents

当未向 _create_key 提供 full_path 或 file_name + prefix 时引发的自定义异常。

S3ToAzureBlobStorageOperator

用于将数据从 AWS S3 存储桶移动到 Microsoft Azure Blob 存储的算子。

模块内容

异常 airflow.providers.microsoft.azure.transfers.s3_to_wasb.TooManyFilesToMoveException(number_of_files)[source]

基类: Exception

尝试将多个文件从 S3 移动到单个 Azure Blob 时抛出的自定义异常。

异常 airflow.providers.microsoft.azure.transfers.s3_to_wasb.InvalidAzureBlobParameters[source]

基类: Exception

当未向算子传递 blob_prefix 或 blob_name 时引发的自定义异常。

异常 airflow.providers.microsoft.azure.transfers.s3_to_wasb.InvalidKeyComponents[source]

基类: Exception

当未向 _create_key 提供 full_path 或 file_name + prefix 时引发的自定义异常。

airflow.providers.microsoft.azure.transfers.s3_to_wasb.S3ToAzureBlobStorageOperator(*, aws_conn_id='aws_default', wasb_conn_id='wasb_default', s3_bucket, container_name, s3_prefix=None, s3_key=None, blob_prefix=None, blob_name=None, create_container=False, replace=False, s3_verify=False, s3_extra_args=None, wasb_extra_args=None, **kwargs)[source]

基类: airflow.models.BaseOperator

用于将数据从 AWS S3 存储桶移动到 Microsoft Azure Blob 存储的算子。

存在一个类似的类,用于将数据从 Microsoft Azure Blob 存储移动到 AWS S3 存储桶,位于 airflow/providers/amazon/aws/transfers/azure_blob_to_s3.py 文件中

可以提供显式的 S3 key,或者包含要传输到 Azure blob 存储的文件的 S3 前缀。Blob 名称也是如此;可以传递显式名称,或者为要存储的文件提供 Blob 前缀。

参数:
  • aws_conn_id (str) – 要使用的 AWS S3 连接 ID。

  • wasb_conn_id (str) – 要使用的 Azure Blob 存储连接 ID。

  • s3_bucket (str) – 要从中传输对象(或多个对象)的 AWS S3 存储桶的名称。(templated)

  • container_name (str) – 要将对象(或多个对象)传输到的 Azure 存储 Blob 容器的名称。(templated)

  • s3_prefix (str | None) – 用于过滤以此外前缀开头的任何 S3 对象的字符串前缀。(templated)

  • s3_key (str | None) – 要传输的显式 S3 key(对象)。(templated)

  • blob_prefix (str | None) – 一个字符串前缀,用于在 Azure 存储 Blob 容器中为要移动的对象(或多个对象)提供路径。(templated)

  • blob_name (str | None) – 要将对象传输到的显式 blob 名称。这只能在移动单个文件时使用。如果要将 S3 存储桶中的多个文件移动到单个 Azure blob,则会引发异常。(templated)

  • create_container (bool) – 如果容器不存在则应创建,为 True;否则为 False。

  • replace (bool) – 如果容器中存在 blob 且 replace 的值为 true,则会覆盖它。如果 replace 为 False 且容器中存在 blob,则文件将不会被覆盖。

  • s3_verify (bool) –

    是否验证 S3 连接的 SSL 证书。默认情况下,会验证 SSL 证书。您可以提供以下值

    • False: 不验证 SSL 证书。SSL 仍将使用

      (除非 use_ssl 为 False),但 SSL 证书将不会被验证。

    • path/to/cert/bundle.pem: 要使用的 CA 证书包的文件名。

      如果您想使用与 botocore 使用的不同的 CA 证书包,可以指定此参数。

  • s3_extra_args (dict | None) – 要传递给 S3Hook 的 kwargs。

  • wasb_extra_args (dict | None) – 要传递给 WasbHook 的 kwargs。

template_fields: collections.abc.Sequence[str] = ('s3_bucket', 'container_name', 's3_prefix', 's3_key', 'blob_prefix', 'blob_name')[source]
aws_conn_id = 'aws_default'[source]
wasb_conn_id = 'wasb_default'[source]
s3_bucket[source]
container_name[source]
s3_prefix = None[source]
s3_key = None[source]
blob_prefix = None[source]
blob_name = None[source]
create_container = False[source]
replace = False[source]
s3_verify = False[source]
s3_extra_args[source]
wasb_extra_args[source]
属性 s3_hook: airflow.providers.amazon.aws.hooks.s3.S3Hook[source]

创建并返回 S3Hook。

属性 wasb_hook: airflow.providers.microsoft.azure.hooks.wasb.WasbHook[source]

创建并返回 WasbHook。

execute(context)[source]

当算子作为任务执行时,执行以下逻辑。

get_files_to_move()[source]

确定需要移动的文件列表,并返回名称。

move_file(file_name)[source]

将文件从 S3 移动到 Azure Blob 存储。

此条目是否有帮助?