ListGCSBucket 2025.5.31.15

捆绑包

org.apache.nifi | nifi-gcp-nar

描述

从 GCS 桶中检索对象列表。对于列出的每个对象,创建一个代表该对象的 FlowFile,以便可以将其与 FetchGCSObject 一起提取。该处理器仅在集群中的主节点上运行。如果主节点发生变化,新的主节点将从前一个节点中断的地方继续,而不是复制所有数据。

标签

gcs、google、google cloud、list、storage

输入要求

FORBIDDEN

支持敏感的动态属性

false

属性

属性

描述

GCP 凭据提供商服务

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

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. 与缓存实体的大小不同。如果缓存实体的时间戳早于指定的时间窗口,则该实体将从缓存的已列出实体中移除。由“跟踪实体”策略使用。

gcp-project-id

Google Cloud 项目 ID

gcp-retry-count

路由到“failure”关系之前应尝试重试多少次。

gcs-bucket

对象的桶。

gcs-prefix

用于筛选对象列表的前缀。在大多数情况下,应当以正斜杠(“/”)结尾。

gcs-use-generations

指定是否使用 GCS 对象版本号(如果适用)。 如果为 false,则仅返回每个对象的最新版本。

listing-strategy

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

proxy-configuration-service

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

record-writer

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

storage-api-url

替换默认存储 URL。如 Google 有关专用服务连接的文档所述,配置替代存储 API URL 还可替换请求中的 HTTP 主机标头。

状态管理

范围

描述

CLUSTER

执行密钥列表后,系统将存储最新密钥的时间戳以及具有相同时间戳的其他密钥。这允许处理器在下次运行时,仅列出在此日期之后添加或修改的密钥。状态存储在整个集群中,因此该处理器只能在主节点上运行,如果选择了新的主节点,则新节点可以从前一个节点中断的地方继续,而无需复制数据。

关系

名称

描述

success

Google Cloud Storage 操作成功后,将 FlowFiles 路由到此关系。

写入属性

名称

描述

filename

文件的名称

gcs.bucket

对象的桶。

gcs.key

对象名称。

gcs.size

对象的大小。

gcs.cache.control

对象的数据缓存控制。

gcs.component.count

构成对象的组件数量。

gcs.content.disposition

对象的数据内容处置。

gcs.content.encoding

对象的内容编码。

gcs.content.language

对象的内容语言。

mime.type

对象的 MIME/内容类型

gcs.crc32c

对象数据的 CRC32C 校验和,以 base64 为编码单位,按大端顺序排列。

gcs.create.time

对象的创建时间(毫秒)

gcs.update.time

对象的最后修改时间(毫秒)

gcs.encryption.algorithm

用于加密对象的算法。

gcs.encryption.sha256

用于加密对象的键的 SHA256 哈希值

gcs.etag

对象的 HTTP 1.1 实体标签。

gcs.generated.id

为对象生成的服务

gcs.generation

对象的数据生成。

gcs.md5

对象数据的 MD5 哈希值,以 base64 编码。

gcs.media.link

对象的媒体下载链接。

gcs.metageneration

对象的元数据版本号。

gcs.owner

对象的所有者(上传者)。

gcs.owner.type

对象上传者的 ACL 实体类型。

gcs.acl.owner

具有对象所有者访问权限的 ACL 实体列表,以逗号分隔。实体将是电子邮件地址、域名或项目 IDs。

gcs.acl.writer

具有对象写入权限的 ACL 实体列表,以逗号分隔。实体将是电子邮件地址、域名或项目 IDs。

gcs.acl.reader

具有对象读取权限的 ACL 实体列表,以逗号分隔。实体将是电子邮件地址、域名或项目 IDs。

gcs.uri

作为字符串的对象 URI。

另请参阅

语言: 中文