ListGCSBucket 2025.10.2.19¶
バンドル¶
org.apache.nifi | nifi-gcp-nar
説明¶
GCS バケットからオブジェクトのリストを取得します。リストされた各オブジェクトについて、そのオブジェクトを表す FlowFile を作成し、 FetchGCSObject と組み合わせて取得できるようにします。このプロセッサーは、クラスタ内のプライマリノードのみで動作するように設計されています。プライマリ・ノードが変更された場合、新しいプライマリ・ノードは、すべてのデータを複製することなく、前のノードが去った場所を引き継ぎます。
入力要件¶
FORBIDDEN
機密動的プロパティをサポート¶
false
プロパティ¶
プロパティ |
説明 |
|---|---|
GCP 認証情報 プロバイダーサービス |
Google Cloud Platform の認証情報の取得に使用する Controller Service。 |
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」保存されるキャッシュの内容はGzip圧縮された JSON 文字列です。キャッシュキーは、ターゲットリスティングの構成が変更されると削除されます。「エンティティの追跡」戦略で使用されます。 |
et-time-window |
このプロセッサーが、すでにリストされているエンティティを追跡する期間を指定します。「エンティティの追跡」戦略は、タイムスタンプが指定された時間枠内にあるエンティティを選ぶことができます。例えば、「30 minutes」に設定すると、このプロセッサーが実行されたときに、最近30分のタイムスタンプを持つすべてのエンティティがリスティングの対象となります。リストされたエンティティは「新規/更新」とみなされ、以下の条件のいずれかが満たされた場合にFlowFile が発行されます。1. 既にリストされているエンティティに存在しない、2. キャッシュされたエンティティよりもタイムスタンプが新しい、3. キャッシュされたエンティティとはサイズが異なる。キャッシュされたエンティティのタイムスタンプが指定された時間枠より古くなった場合、そのエンティティはキャッシュされた既にリストされているエンティティから削除されます。「エンティティの追跡」戦略で使用されます。 |
gcp-project-id |
Google Cloud Project ID |
gcp-retry-count |
障害関係にルーティングする前に、何回リトライを試みるか。 |
gcs-bucket |
オブジェクトのバケット。 |
gcs-prefix |
オブジェクトリストのフィルタリングに使用するプレフィックス。ほとんどの場合、スラッシュ('/')で終わるはずです。 |
gcs-use-generations |
該当する場合、GCS Generationsを使用するかどうかを指定します。falseの場合、各オブジェクトの最新バージョンのみが返されます。 |
listing-strategy |
新規/更新エンティティの判定方法を指定します。詳しくは各戦略の説明をご覧ください。 |
proxy-configuration-service |
ネットワークリクエストをプロキシするプロキシ構成Controller Serviceを指定します。 |
record-writer |
リストの作成に使用するRecord Writerを指定します。指定しない場合は、リストされたエンティティごとに FlowFile が1つ作成されます。Record Writerを指定すると、個々の FlowFiles に属性を追加する代わりに、すべてのエンティティが単一の FlowFile に書き込まれます。 |
storage-api-url |
デフォルトのストレージ URL を上書きします。別のストレージ API URL を構成すると、Private Service Connections の Google ドキュメントで説明されているように、リクエストの HTTP Host ヘッダーも上書きされます。 |
状態管理¶
スコープ |
説明 |
|---|---|
CLUSTER |
キーのリストを実行した後、最新のキーのタイムスタンプが、同じタイムスタンプを共有するキーとともに格納されます。これにより、次にProcessorを実行するときに、この日付以降に追加または変更されたキーのみがリストされるようになります。状態はクラスタリングに保存され、このプロセッサーがPrimary Nodeで実行されます。新しいプライマリ・ノードが選択された場合、新しいノードはデータを複製することなく、前のノードが停止した場所を引き継ぐことができます。 |
リレーションシップ¶
名前 |
説明 |
|---|---|
success |
FlowFiles は Google Cloud Storage の操作が成功すると、この関係にルーティングされます。 |
属性の書き込み¶
名前 |
説明 |
|---|---|
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/Content-Type。 |
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 |
オブジェクトのデータを base64 でエンコードした MD5 ハッシュ。 |
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 (文字列)。 |