ListGCSBucket 2025.5.31.15¶
バンドル¶
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', per node cache key = 'ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3' 保存されるキャッシュの内容はGzip圧縮された JSON 文字列です。キャッシュ・キーは、ターゲット・リストの構成が変更されると削除されます。「トラッキングエンティティ」ストラテジーで使用されます。 |
et-time-window |
このプロセッサーが、すでにリストされているエンティティを追跡する期間を指定します。「Tracking Entities」ストラテジーは、タイムスタンプが指定したタイムウィンドウ内にあるエンティティを選ぶことができます。例えば、 '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 (文字列)。 |