ListS3 2025.10.2.19

バンドル

org.apache.nifi | nifi-aws-nar

説明

S3バケットからオブジェクトのリストを取得します。リストされた各オブジェクトについて、そのオブジェクトを表す FlowFile を作成し、 FetchS3Object と組み合わせて取得できるようにします。このプロセッサーは、クラスタ内のプライマリノードのみで動作するように設計されています。プライマリ・ノードが変更された場合、新しいプライマリ・ノードは、すべてのデータを複製することなく、前のノードが去った場所を引き継ぎます。

タグ

AWS 、Amazon、 S3、 リスト

入力要件

FORBIDDEN

機密動的プロパティをサポート

false

プロパティ

プロパティ

説明

AWS 認証情報 プロバイダーサービス

AWS 認証情報プロバイダーの取得に使用するController Service。

バケット

やり取りするS3バケット

通信タイムアウト

AWS への接続を確立するため、または AWS からデータを受信するために、タイムアウトするまでの待機時間。

Custom Signer Class Name

Fully qualified class name of the custom signer class. The signer must implement com.amazonaws.auth. Signer interface.

Custom Signer Module Location

カスタム署名者の JAR ファイルとその依存関係 (もしあれば) を含むファイルやディレクトリへのパスをカンマ区切りにしたリスト。

Delimiter

バケット内のディレクトリを区切る文字列。このフィールドの正しい使い方については、 AWS のドキュメントを参照してください。

エンドポイントオーバーライド URL

スキーム、ホスト、ポート、パスを含む AWS デフォルトの代わりに使用するエンドポイント URL。AWS ライブラリは AWS リージョンに基づきエンドポイント URL を選択しますが、このプロパティは選択されたエンドポイント URL を上書きし、他の S3 互換エンドポイントとの使用を可能にします。

List Type

オリジナルの List Objects と新しい List Objects バージョン 2 のどちらのエンドポイントを使用するかを指定します。

リストバッチサイズ

Record Writerを使用していない場合、このプロパティは、1つのバッチでリストされるべきS3オブジェクトの数を指定します。この数に達すると、作成された FlowFiles はプロセッサーから転送されます。この値を低くセットすると、完全なリストが終了する前に FlowFiles が送信されるため、待ち時間が短くなる可能性があります。しかし、パフォーマンスが著しく低下する可能性があります。値が大きくなると、 FlowFiles を送信する前にすべての情報を保存するために、より多くのメモリが必要になる場合があります。Record Writerの主な利点の1つは、リスト全体を1つの FlowFile として出力できることであるため、Record Writerを使用する場合、このプロパティは無視されます。

Listing Strategy

新規/更新エンティティの判定方法を指定します。詳しくは各戦略の説明をご覧ください。

最大オブジェクト年齢

S3オブジェクトが考慮されるための最大年齢。(最終更新日付に従って)この時間より古いオブジェクトは無視されます。

最低オブジェクト年齢

S3オブジェクトが考慮されるために最低限必要な年齢。(最終更新日付に従って)この期間より新しいオブジェクトは無視されます。

Prefix

オブジェクトリストのフィルターに使用するプレフィックス。フォワード・スラッシュ「/」で始めないでください。大文字と小文字は、スラッシュ「/」で終わります。

Record Writer

リストの作成に使用するRecord Writerを指定します。指定しない場合は、リストされたエンティティごとに FlowFile が1つ作成されます。Record Writerを指定すると、個々の FlowFiles に属性を追加する代わりに、すべてのエンティティが単一の FlowFile に書き込まれます。

リージョン

AWS 接続先のリージョン。

Requester Pays

If true, indicates that the requester consents to pay any charges associated with listing the S3 bucket. This sets the 'x-amz-request-payer' header to 'requester'. Note that this setting is not applicable when 'Use Versions' is 'true'.

SSL コンテキストサービス

もしプロバイダーが提供されていれば、接続の作成に使われる SSL Context Service を指定します。

署名者の上書き

AWS S3ライブラリはデフォルトで署名バージョン4を使用しますが、このプロパティを使用すると、古いS3互換サービスをサポートするためにバージョン2の署名者を指定したり、独自のカスタム署名者の実装をプラグインしたりすることができます。

Use Versions

Specifies whether to use S3 versions, if applicable. If false, only the latest version of each object will be returned.

Write Object Tags

「True」にセットすると、S3オブジェクトに関連付けられたタグは FlowFile 属性として書き込まれます。

Write User Metadata

「True」にセットすると、S3オブジェクトに関連付けられたユーザー定義のメタデータが FlowFile 属性/記録に追加されます。

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.

proxy-configuration-service

ネットワークリクエストをプロキシするプロキシ構成Controller Serviceを指定します。

状態管理

スコープ

説明

CLUSTER

キーのリストを実行した後、最新のキーのタイムスタンプが、同じタイムスタンプを共有するキーとともに格納されます。これにより、次にProcessorを実行するときに、この日付以降に追加または変更されたキーのみがリストされるようになります。状態はクラスタリングに保存され、このプロセッサーがPrimary Nodeで実行されます。新しいプライマリ・ノードが選択された場合、新しいノードはデータを複製することなく、前のノードが停止した場所を引き継ぐことができます。

リレーションシップ

名前

説明

success

FlowFiles は、正常に処理された後、この Relationship にルーティングされます。

属性の書き込み

名前

説明

s3.bucket

S3のバケット名

s3.region

S3バケットのリージョン

filename

ファイル名

s3.etag

ファイルが変更されたかどうかを確認するために使用できる ETag

s3.isLatest

オブジェクトの最新バージョンかどうかを示すブール。

s3.lastModified

UTC 時刻のエポックからのミリ秒単位の最終更新時刻。

s3.length

オブジェクトのサイズ(バイト単位)

s3.storeClass

オブジェクトのストレージクラス。

s3.version

オブジェクトのバージョン(あてはまる場合)

s3.tag.___

「Write Object Tags」が「True」にセットされている場合、リストされているS3オブジェクトに関連付けられたタグが、フローファイルの属性の一部として書き込まれます。

s3.user.metadata.___

「Write User Metadata」が「True」にセットされている場合、リストされているS3オブジェクトに関連付けられたユーザー定義のメタデータが、フローファイルの属性の一部として書き込まれます。

こちらもご覧ください