Write to DB
Write to DB ステージでは、データフローの出力をデータベースに書き込みます。
[全般] タブ
オプション名 |
説明 |
---|---|
接続 |
[接続] フィールドで、使用するデータベースへの接続を選択します。新しいデータベース接続を作成するには、[管理] をクリックします。データベース接続の作成の詳細については、Database Connection Manager を参照してください。 |
テーブル/ビュー |
接続を選択した後、出力先のテーブルまたはビューを指定します。参照ボタン ([...]) をクリックして使用するテーブルまたはビューに移動するか、[テーブルの作成] をクリックしてデータベースに新しいテーブルを作成します。 注: SQL データベースに出力する場合は、複数のテーブルを参照するビューには出力できません。これは SQL Server の制限によります。
|
テーブルの作成 |
選択したデータベースに新しいテーブルを作成します。[テーブルの所有者] フィールドでテーブルの所有者を選択し、[テーブル名] フィールドで新しいテーブルの名前を指定します。テーブル名は大文字と小文字を区別します。[プライマリ キー] 列のチェックボックスをオンにして、プライマリ キーを指定します。また、[含める] 列のボックスをオンにして、新しいテーブルを出力先とするフィールドを指定します。[幅] 列は文字列データ タイプのフィールドの長さを指定します。デフォルトでは 512 です。[Null を許可] 列のチェックボックスがオンで [入力フィールド] に NULL 値が含まれている場合、データフローはデータベースに NULL 値を書き込みます。[出力フィールド] 列の値を変更することによって、列名を編集できます。 [テーブルの作成] ボタンは、次のデータベースでのテーブル作成をサポートしています。
注: DB2 データベースでは、テーブルを作成しようとして、ページ サイズがすべての文字列の列の長さの合計より小さい場合、"コンテンツから本体を作成できません。シリアル化可能クラスはブローカに使用できません" というエラーが表示されます。
|
ステージ フィールド |
[ステージ フィールド] 列で、[データベース フィールド] 列に表示されるデータベース フィールドを出力先とするフィールドを指定できます。 |
含める |
[含める] 列で出力先のフィールドを選択できます。 注: パフォーマンスが低下するのを防ぐため、データベース テーブルにはソートされたインデックスまたはキーが必要です。
|
date
データタイプのすべての値をString
値として書き出します。これは、Spectrum で使用されるデフォルト ドライバである jTDS ドライバの動作です。すべての date
データタイプの値をそのまま処理するには、Microsoft の JDBC ドライバを使用します。Database Connection Manager
Database Connection Manager を使用すると、登録されているデータベース接続を管理できます。接続を追加、変更、削除、およびテストするには:
- [Write To DB オプション] ダイアログ ボックスで、[管理] をクリックします。
- [追加]、[変更]、または [削除] をクリックします。
- データベース接続を追加または変更する場合は、次のフィールドに必要な値を指定します。
- 接続名 — 新しい接続の名前を入力します。
- データベース ドライバ — 適切なデータベースの種類を選択します。
- 接続オプション — すべてのオプション (通常はホスト、ポート、インスタンス、ユーザ名、およびパスワード) を指定します。
注: 接続をテストするには、[テスト] をクリックします。 - データベース接続を削除する場合は、削除する接続を選択し、[削除] をクリックします。
[実行時] タブ
オプション名 |
説明 |
---|---|
書き込みモード |
データベース書き込みのアクションの種類を指定します。次のいずれかです。
|
一括確定 |
このオプションをオンにすると、所定の数のレコードが処理されたとき、データベースへの変更が確定されます。デフォルトでは、このオプションはオフになっていて、1 レコード処理されるごとに変更が確定されます。このオプションをオンにすると、Write to DB ステージのパフォーマンスが大きく向上します。 |
バッチ サイズ |
[一括確定] オプションをオンにする場合、データベースに対して一括で確定するときのレコード数を指定します。デフォルト値は 1,000 です。7.0 およびそれ以前の Spectrum™ Technology Platformで作成されたデータフローの場合、デフォルト値は 100 です。 バッチ サイズを大きくしてもロード パフォーマンスは必ずしも改善しません。バッチ サイズの設定に当たっては、次の要因を検討してください。
|
最終確定 | このオプションを選択すると、すべてのレコードがデータベースに転送された後、データベース操作が確定されます。 |
一括確定数 | 一定のレコード数ごとに確定を行うための値を指定します。データベースに対するレコードの確定は、(一括確定数 * バッチ サイズ) に相当する数のレコードがデータベースに転送されるたびに行われます。例えば、[バッチ サイズ] が 1000、[一括確定数] が 3 の場合、3000 レコードがデータベースに転送されるたびに確定が行われます。 |
データを挿入する前にテーブルを切り捨てる |
このオプションをオンにすると、データベースへの書き込みの前にテーブル内のデータがすべてクリアされます。 |
テーブルが既に存在する場合は破棄して作成し直す |
このオプションをオンにすると、データフローの出力をテーブルに書き込む前にテーブルを削除して作成し直します。このオプションは、テーブルのスキーマをデータフローからのフィールドに一致させ、余分なスキーマ情報を含まないようにしたい場合に便利です。 削除して作成し直すテーブルは、[全般] タブの [テーブル/ビュー] フィールドで指定されたものです。例えば、[テーブル/ビュー] フィールドで "Customers" テーブルを指定し、[テーブルが既に存在する場合は破棄して作成し直す] を選択した場合、"Customers" テーブルはデータベースから削除され、テーブルに書き込まれる実際のフィールドに一致するスキーマを持つ "Customers" という名前の新しいテーブルが作成されます。 |