ListGoogleDrive 2025.5.31.15

捆绑包

org.apache.nifi | nifi-gcp-nar

描述

列出 Google 云端硬盘文件夹中的具体文件(忽略快捷方式)。如果设置了“记录写入器”属性,则会创建单个输出 FlowFile,并且列表中的每个文件将作为单个记录写入输出文件。否则,将为列表中的每个文件创建单独的 FlowFile,将元数据写入为 FlowFile 属性。该处理器仅在集群中的主节点上运行。如果主节点发生变化,新的主节点将从前一个节点中断的地方继续,而不是复制所有数据。要设置对 Google 云端硬盘的访问权限,请参阅“其他详细信息”。

标签

drive、google、storage

输入要求

FORBIDDEN

支持敏感的动态属性

false

属性

属性

描述

connect-timeout

连接到 Google 云端硬盘服务的最长等待时间。

et-initial-listing-target

指定应如何处理初始列表。由“跟踪实体”策略使用。

et-state-cache

列出的实体存储在指定的缓存存储器中,这样该处理器在 NiFi 重启后或主节点发生更改时可以恢复列出。“跟踪实体”策略要求在最后一个“跟踪时间窗口”内提供所有列出的实体的跟踪信息。为了支持大量实体,该策略使用 DistributedMapCache 而非托管状态。缓存键格式为“ListedEntities::{processorId}(::{nodeId})”。如果它跟踪每个节点列出的实体,则会添加可选的“::{nodeId}”部分以单独管理状态。例如,集群范围缓存键 =“ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b”,每节点缓存键 =“ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3”存储的缓存内容是 Gzipped JSON 字符串。目标列表配置更改时,缓存键将被删除。由“跟踪实体”策略使用。

et-time-window

指定该处理器应跟踪已列出的实体多长时间。“跟踪实体”策略可以选择时间戳在指定时间窗口内的任何实体。例如,如果设置为“30 分钟”,则在该处理器运行时,任何具有最近 30 分钟时间戳的实体都将成为列表目标。如果满足以下条件之一,则列出实体被视为“新的/已更新的”,并发出 FlowFile:1. 不存在于已列出的实体中;2. 具有比缓存实体更新的时间戳;3. 与缓存实体的大小不同。如果缓存实体的时间戳早于指定的时间窗口,则该实体将从缓存的已列出实体中移除。由“跟踪实体”策略使用。

folder-id

要从中提取文件列表的文件夹的 ID。要设置对 Google 云端硬盘的访问权限并获取文件夹 ID,请参阅“其他详细信息”。WARNING:未经授权访问该文件夹将被视为该文件夹为空的情况处理。这会导致处理器无法创建输出 FlowFiles。未提供其他错误消息。

gcp-credentials-provider-service

用于获取 Google Cloud Platform 凭据的控制器服务。

listing-strategy

指定如何确定新的/更新的实体。有关详细信息,请参阅每种策略的描述。

min-age

文件必须达到最短存在时间才纳入考虑;将会忽略小于该存在时间的所有文件。

proxy-configuration-service

指定代理配置控制器服务来代理网络请求。

read-timeout

Google 云端硬盘服务响应的最长等待时间。

record-writer

指定用于创建列表的记录写入器。如果未指定,则将为列出的每个实体创建一个 FlowFile。如果指定了记录写入器,则所有实体都将写入单个 FlowFile,而不是向单个 FlowFiles 添加属性。

recursive-search

为“true”时,将包括来自具体子文件夹的文件列表(忽略快捷方式)。否则,仅返回直接以定义的“文件夹 ID”作为其父级的文件。WARNING:如果子文件夹太多(500 个以上),则列表可能会失败。

状态管理

范围

描述

CLUSTER

处理器存储必要的数据,以便能够跟踪已经列出的文件。具体需要存储哪些数据取决于“列表策略”。状态存储在整个集群中,因此该处理器只能在主节点上运行,如果选择了新的主节点,则新节点可以从前一个节点中断的地方继续,而无需复制数据。

关系

名称

描述

success

所有收到的 FlowFiles 都将路由至“success”

写入属性

名称

描述

drive.id

文件的 ID

filename

文件的名称

mime.type

文件的 MIME 类型

drive.size

文件的大小。未提供文件大小时(例如外部存储的文件),设置为 0。

drive.size.available

表示文件大小是否已知/提供

drive.timestamp

文件的上次修改时间或创建时间(以较长者为准)。原因是文件在上传到 Google 云端硬盘时,会保留文件的原始修改日期。“创建时间”是指上传发生的时间。但是,上传的文件以后仍然可以修改。

drive.created.time

文件的创建时间

drive.modified.time

文件的上次修改时间

drive.path

从基目录到该文件所在目录的路径。该路径包含 URL 编码形式的文件夹名称,因为 Google 云端硬盘允许在文件名中使用特殊字符,包括“/”(斜杠)和“”(反斜杠)。URL 编码后的文件夹名称在路径中以“/”分隔。

drive.owner

文件的所有者

drive.last.modifying.user

上次修改文件的用户

drive.web.view.link

指向文件的 Web 视图链接

drive.web.content.link

指向文件的 Web 内容链接

drive.parent.folder.id

文件父文件夹的 ID

drive.parent.folder.name

文件父文件夹的名称

drive.listed.folder.id

列出的基本文件夹的 ID

drive.listed.folder.name

列出的基本文件夹的名称

drive.shared.drive.id

共享硬盘的 ID(如果文件位于共享硬盘上)

drive.shared.drive.name

共享硬盘的名称(如果文件位于共享硬盘上)

另请参阅

语言: 中文