UpdateSnowflakeTable 2025.10.2.19

バンドル

com.snowflake.openflow.runtime | runtime-snowflake-processors-nar

説明

受信 FlowFile で提供されたスキーマに基づいて、Snowflakeテーブルの定義を更新します。スキーマは、 FlowFile コンテンツを介して提供されているか、プロパティとして指定されているかを問わず、以下の形式の JSON にあることが想定されます。 { "columns": [ { "name": "<column name>", "type": "<column type>", "nullable": <true/false>, "precision": <only for numeric type>, "scale": <only for numeric type> }, ... ], "primaryKeys": ["<name of first primary key column>", "<name of second primary key column>", ...] } このプロセッサーはテーブルのみの操作(テーブルの作成、変更、ドロップ)をサポートします。

タグ

変更、列、作成、DDL、ドロップ、プレビュー、Snowflake、テーブル、更新

入力要件

REQUIRED

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

false

プロパティ

プロパティ

説明

列ストラテジーの追加

入力スキーマが既存のテーブルに存在しない列を持つ場合に使用するストラテジー。

Not Null ストラテジーの追加

入力スキーマに、既存のテーブルには存在しないnot-null制約がある場合に使用するストラテジーです。

列型の変更ストラテジー

既存のテーブルに、受信スキーマとは異なる型の列がある場合に使用するストラテジー。

列名の変換

スキーマで定義された列名に適用できる任意の変換。この変換は、テーブルの既存の列と比較される前に、列名に適用されます。このプロパティは、属性に加えて、Expression Languageを介して以下の変数( column.namecolumn.typecolumn.nullablecolumn.precisioncolumn.scalecolumn.primaryKey )を参照できます。このプロパティに基づいて変換を適用した結果は、 Object Name Handling プロパティの設定に従って処理されます。

列の削除ストラテジー

既存のテーブルに、入力スキーマに存在しない列がある場合に使用するストラテジー。

接続プール

Snowflakeへの接続に使用する接続プール。

作成パラメーター

CREATE TABLE ステートメントに含める追加パラメーター。例えば、 'CLUSTER BY (列名)' です。

目的スキーマ

必要なスキーマ/テーブル定義

列ストラテジーの削除

既存のテーブルに、入力スキーマに存在しない列がある場合に使用するストラテジー。

Not Nullストラテジーの削除

既存のテーブルにnot-null制約があり、それが入力スキーマに存在しない場合に使用するストラテジーです。

デフォルト値を含める

DEFAULT 値を CREATE TABLE または ALTER TABLE ADD COLUMN ステートメントに含めるかどうか

Nullでない制約を含む

CREATE TABLE または ALTER TABLE ADD COLUMN ステートメントに NOT NULL 制約を含めるかどうか。

プライマリキー制約を含む

作成ステートメントにプライマリキー制約を含めるかどうか

最大バッチサイズ

指定されたテーブルの1回の実行で処理できる FlowFiles の最大数。

プライマリ キー ストラテジーの変更

入力スキーマが既存のプライマリキーと異なるプライマリキーを持つ場合に使用するストラテジー。プライマリキーを変更するには、既存のキーを削除し、新しいキーを追加する必要があります。

オブジェクト識別子の解決

ソースオブジェクト識別子(スキーマ、テーブル、列)がSnowflakeにどのように格納され、クエリされるかを制御します。この設定により、 SQL クエリで二重引用符を使用する必要があるかどうかが決まります。

Record Reader

目的のスキーマを取得するために使用するRecord Reader

列名サフィックスの削除

削除された列に付加するサフィックス。たとえば、列 'foo' の名前を 'foo__deleted' に変更するには、このプロパティを __deleted に設定します。このプロパティは、 Object Name Handling プロパティの値に応じて動作が異なります。つまり、 Object Name HandlingCase Sensitive Name に設定されている場合、サフィックスはそのまま付加されます。Object Name HandlingSQL Identifier に設定されている場合、サフィックスは文字、数字、ドル記号($)、アンダースコア(_)のみで構成されなければならず、さらに、付加される列名の大文字小文字が区別されないか(二重引用符で囲まれていない)、区別されるか(二重引用符で囲まれている)に応じて、大文字小文字が区別されないで付加されるか、区別されて付加されます。

スキーマ名

テーブルを含んでいるスキーマの名前

テーブル・メタデータ・キャッシュの有効期限

キャッシュエントリが削除されるまでの時間(秒)。

テーブル名

更新するテーブルの名前

テーブルスキーマストラテジー

必要なスキーマ/テーブル定義の取得方法を指定します。

更新タイプ

実行するテーブル更新のタイプ

テーブル・メタデータ・キャッシュの使用

テーブルのメタデータをSnowflakeから直接読み込むのではなく、キャッシュするかどうか。[テーブルが存在しない場合はテーブルを作成、テーブルを変更] に適用されます。

リレーションシップ

名前

説明

failure

テーブルを更新できない場合、 FlowFile はこのリレーションシップにルーティングされます。

success

FlowFile は、テーブルが正常に更新された後、このリレーションシップにルーティングされます。

属性の書き込み

名前

説明

schema.hash

すべての更新が完了した後の、最終的なテーブルスキーマの SHA-256ハッシュ。変更検出とキャッシュの目的で使用できます。