ListGCSBucket 2025.10.2.19¶
捆绑包¶
org.apache.nifi | nifi-gcp-nar
描述¶
从 GCS 桶中检索对象列表。对于列出的每个对象,创建一个代表该对象的 FlowFile,以便可以将其与 FetchGCSObject 一起提取。该处理器仅在集群中的主节点上运行。如果主节点发生变化,新的主节点将从前一个节点中断的地方继续,而不是复制所有数据。
输入要求¶
FORBIDDEN
支持敏感的动态属性¶
false
属性¶
属性 |
描述 |
|---|---|
GCP 凭据提供商服务 |
用于获取 Google Cloud Platform 凭据的控制器服务。 |
et-initial-listing-target |
Specify how initial listing should be handled. Used by 'Tracking Entities'strategy. |
et-state-cache |
Listed entities are stored in the specified cache storage so that this processor can resume listing across NiFi restart or in case of primary node change. 'Tracking Entities'strategy require tracking information of all listed entities within the last 'Tracking Time Window'. To support large number of entities, the strategy uses DistributedMapCache instead of managed state. Cache key format is 'ListedEntities::{processorId}(::{nodeId})'. If it tracks per node listed entities, then the optional '::{nodeId}' part is added to manage state separately. E.g. cluster wide cache key ='ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b', per node cache key ='ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3' The stored cache content is Gzipped JSON string. The cache key will be deleted when target listing configuration is changed. Used by 'Tracking Entities'strategy. |
et-time-window |
Specify how long this processor should track already-listed entities. 'Tracking Entities'strategy can pick any entity whose timestamp is inside the specified time window. For example, if set to '30 minutes', any entity having timestamp in recent 30 minutes will be the listing target when this processor runs. A listed entity is considered 'new/updated' and a FlowFile is emitted if one of following condition meets: 1. does not exist in the already-listed entities, 2. has newer timestamp than the cached entity, 3. has different size than the cached entity. If a cached entity 's timestamp becomes older than specified time window, that entity will be removed from the cached already-listed entities. Used by'Tracking Entities'strategy. |
gcp-project-id |
Google Cloud 项目 ID |
gcp-retry-count |
路由到“failure”关系之前应尝试重试多少次。 |
gcs-bucket |
对象的桶。 |
gcs-prefix |
The prefix used to filter the object list. In most cases, it should end with a forward slash ( '/'). |
gcs-use-generations |
Specifies whether to use GCS Generations, if applicable. If false, only the latest version of each object will be returned. |
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。 |