airflow.providers.google.cloud.triggers.gcs

模块内容

GCSBlobTrigger

一个触发器,当在给定存储桶中找到请求的文件或文件夹时触发。

GCSCheckBlobUpdateTimeTrigger

一个触发器,向 GCS 发出异步调用以检查存储桶中的对象是否已更新。

GCSPrefixBlobTrigger

在存储桶中查找与前缀匹配的对象。

GCSUploadSessionTrigger

如果在非活动期间对象数量没有增加,则返回触发器事件。

class airflow.providers.google.cloud.triggers.gcs.GCSBlobTrigger(bucket, object_name, use_glob, poke_interval, google_cloud_conn_id, hook_params)[源代码]

基类: airflow.triggers.base.BaseTrigger

一个触发器,当在给定存储桶中找到请求的文件或文件夹时触发。

参数
  • bucket (str) – 对象所在的 Google Cloud Storage 中的存储桶。

  • object_name (str) – 存储桶中存在的文件或文件夹

  • use_glob (bool) – 如果为 true,则将 object_name 解释为 glob

  • google_cloud_conn_id (str) – 对 Google 连接的引用

  • poke_interval (float) – 轮询时间间隔(以秒为单位),用于检查文件/文件夹

  • hook_params (dict[str, Any]) – 要传递给底层钩子的额外配置参数。应与所需的钩子构造函数参数匹配。

serialize()[源代码]

序列化 GCSBlobTrigger 参数和类路径。

async run()[源代码]

循环直到找到相关的文件/文件夹。

class airflow.providers.google.cloud.triggers.gcs.GCSCheckBlobUpdateTimeTrigger(bucket, object_name, target_date, poke_interval, google_cloud_conn_id, hook_params)[源代码]

基类: airflow.triggers.base.BaseTrigger

一个触发器,向 GCS 发出异步调用以检查存储桶中的对象是否已更新。

参数
  • bucket (str) – Google Cloud Storage 存储桶名称,对象所在的云存储。

  • object_name (str) – 存储桶中存在的文件或文件夹

  • target_date (datetime.datetime) – 用于与 blob 对象更新时间进行比较的上下文日期时间

  • poke_interval (float) – 轮询时间间隔(以秒为单位),用于检查文件/文件夹

  • google_cloud_conn_id (str) – 对 Google 连接的引用

  • hook_params (dict[str, Any]) – 包含 impersonation_chain 的 dict 对象

serialize()[源代码]

序列化 GCSCheckBlobUpdateTimeTrigger 参数和类路径。

async run()[源代码]

循环直到对象更新时间大于目标日期时间。

class airflow.providers.google.cloud.triggers.gcs.GCSPrefixBlobTrigger(bucket, prefix, poke_interval, google_cloud_conn_id, hook_params)[源代码]

基类: GCSBlobTrigger

在存储桶中查找与前缀匹配的对象。

如果未找到,则休眠一段时间,然后再次检查。否则,返回匹配项。

参数
  • bucket (str) – 对象所在的 Google Cloud Storage 中的存储桶。

  • prefix (str) – 要在 Google Cloud Storage 存储桶中匹配的 blob_names 的前缀

  • google_cloud_conn_id (str) – 对 Google 连接的引用

  • poke_interval (float) – 轮询时间间隔(以秒为单位)进行检查

  • hook_params (dict[str, Any]) – 要传递给底层钩子的额外配置参数。应与所需的钩子构造函数参数匹配。

serialize()[源代码]

序列化 GCSPrefixBlobTrigger 参数和类路径。

async run()[源代码]

循环直到在存储桶中找到给定前缀的匹配项。

class airflow.providers.google.cloud.triggers.gcs.GCSUploadSessionTrigger(bucket, prefix, poke_interval, google_cloud_conn_id, hook_params, inactivity_period=60 * 60, min_objects=1, previous_objects=None, allow_delete=True)[source]

基类: GCSPrefixBlobTrigger

如果在非活动期间对象数量没有增加,则返回触发器事件。

参数
  • bucket (str) – 期望对象所在的 Google Cloud Storage 存储桶。

  • prefix (str) – 要在 Google Cloud Storage 存储桶中检查的前缀名称。

  • poke_interval (float) – 轮询时间间隔(以秒为单位)进行检查

  • inactivity_period (float) – 指定上传会话结束的总不活动秒数。请注意,此机制不是实时的,并且此运算符可能不会在经过此时间段且未检测到其他对象后的一段时间内返回。

  • min_objects (int) – 将上传会话视为有效的所需最小对象数。

  • previous_objects (set[str] | None) – 在上次轮询期间找到的对象 ID 集。

  • allow_delete (bool) – 此传感器是否应认为在间隔之间删除对象是有效的行为。如果为 true,则在发生这种情况时将记录警告消息。如果为 false,则将引发错误。

  • google_cloud_conn_id (str) – 连接到 Google Cloud Storage 时要使用的连接 ID。

serialize()[source]

序列化 GCSUploadSessionTrigger 参数和类路径。

async run()[source]

循环,直到在 inactivity_period 内,列表 blob 中没有新文件或已删除文件。

此条目是否有帮助?