airflow.providers.google.cloud.transfers.local_to_gcs

此模块包含用于将本地文件上传到 GCS 的算子。

LocalFilesystemToGCSOperator

将文件或文件列表上传至 Google Cloud Storage;可选地在上传前对文件进行压缩;也可选地将数据分块上传。

模块内容

class airflow.providers.google.cloud.transfers.local_to_gcs.LocalFilesystemToGCSOperator(*, src, dst, bucket, gcp_conn_id='google_cloud_default', mime_type='application/octet-stream', gzip=False, chunk_size=None, impersonation_chain=None, **kwargs)[source]

Bases: airflow.providers.google.version_compat.BaseOperator

将文件或文件列表上传至 Google Cloud Storage;可选地在上传前对文件进行压缩;也可选地将数据分块上传。

另请参阅

有关如何使用此算子的更多信息,请参阅指南: LocalFilesystemToGCSOperator

参数:
  • src (str | list[str]) – 本地文件的路径,或本地文件列表。路径可以是绝对路径(例如 /path/to/file.ext)或相对路径(例如 ../../foo//.csv)。(可模板化)

  • dst (str) – 在 GCS 指定 bucket 中的目标路径(例如 /path/to/file.ext)。如果上传多个文件,请使用结尾带斜杠的对象前缀(例如 /path/to/directory/)。(可模板化)

  • bucket (str) – 要上传到的 bucket。(可模板化)

  • gcp_conn_id (str) – (可选)用于连接 Google Cloud 的连接 ID。

  • mime_type (str) – MIME 类型字符串

  • gzip (bool) – 是否对文件进行压缩并以 gzip 格式上传

  • chunk_size (int | None) – Blob 的块大小(单位字节)。必须是 262144(256 KiB)的整数倍

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务账号,用于通过短期凭证冒充;或者是一串需要依次获取访问令牌的账号,最终获得的令牌对应列表中最后一个账号,并在请求中使用该账号进行冒充。如果以字符串形式提供,则该账号必须授予发起账号 “Service Account Token Creator” IAM 角色;如果以序列形式提供,则列表中的每个身份必须向其前置身份授予 “Service Account Token Creator” IAM 角色,列表首位身份需向发起账号授予该角色。(可模板化)

template_fields: collections.abc.Sequence[str] = ('src', 'dst', 'bucket', 'impersonation_chain')[source]
src[source]
dst[source]
bucket[source]
gcp_conn_id = 'google_cloud_default'[source]
mime_type = 'application/octet-stream'[source]
gzip = False[source]
chunk_size = None[source]
impersonation_chain = None[source]
execute(context)[source]

将文件或文件列表上传至 Google Cloud Storage。

返回:

已上传文件的目标 URI 列表(gs://bucket/object)。

返回类型:

list[str]

get_openlineage_facets_on_start()[source]

此条目是否有帮助?