KingbaseES 出力コンポーネントは、KingbaseES データソースにデータを書き込みます。他のデータソースから KingbaseES データソースにデータを同期する場合、ソースデータソース情報と、データを書き込むターゲット KingbaseES データソースの両方を構成する必要があります。このトピックでは、KingbaseES 出力コンポーネントの構成方法について説明します。
前提条件
KingbaseES データソースを追加済みであること。詳細については、「KingbaseES データソースの作成」をご参照ください。
KingbaseES 出力コンポーネントのプロパティを構成するために使用するアカウントに、データソースへのライトスルー権限があること。この権限がない場合は、リクエストする必要があります。詳細については、「データソース権限のリクエスト」をご参照ください。
操作手順
Dataphin ホームページのトップナビゲーションバーで、[開発] > [データ統合] を選択します。
Integration ページのトップナビゲーションバーで、[Project] を選択します (Dev-Prod モードでは、[Environment] を選択する必要があります)。
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックし、次に [バッチパイプライン] リストから開発する [オフラインパイプライン] をクリックして、オフラインパイプラインの構成ページを開きます。
ページの右上隅にある[コンポーネントライブラリ]をクリックして、[コンポーネントライブラリ] パネルを開きます。
[コンポーネントライブラリ] パネルの左側にあるナビゲーションウィンドウで [出力] を選択し、右側の出力コンポーネントリストで [KingbaseES] コンポーネントを見つけ、キャンバスにドラッグします。
ターゲットの入力、変換、またはフローコンポーネントの
アイコンをクリックしてドラッグし、現在の KingbaseES 出力コンポーネントに接続します。KingbaseES Output コンポーネントカード上の
アイコンをクリックして、[KingbaseES Output Configuration] ダイアログボックスを開きます。
[KingbaseES 出力設定] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
Basic Settings
Step Name
KingbaseES 出力コンポーネントの名前。Dataphin はステップ名を自動的に生成します。ビジネスシナリオに基づいて変更できます。名前は次の要件を満たす必要があります。
漢字、文字、アンダースコア (_)、数字のみを含めることができます。
長さは 64 文字を超えることはできません。
Datasource
データソースのドロップダウンリストには、ライトスルー権限を持つデータソースと持たないデータソースを含む、すべての KingbaseES データソースが表示されます。
アイコンをクリックして、現在のデータソース名をコピーします。ライトスルー権限がないデータソースについては、データソースの横にある[リクエスト]をクリックして、データソースのライトスルー権限をリクエストできます。 詳細については、「データソース権限をリクエストする」をご参照ください。
KingbaseES データソースがない場合は、[データソースの作成] をクリックしてデータソースを作成します。詳細については、「KingbaseES データソースの作成」をご参照ください。
Table
出力データの出力先テーブルを選択します。キーワードを入力してテーブルを検索するか、正確なテーブル名を入力して [完全一致] をクリックします。テーブルを選択すると、システムが自動的にテーブルのステータスを確認します。
アイコンをクリックして、選択したテーブルの名前をコピーします。Loading Policy
ターゲットテーブルにデータを書き込むためのポリシーを選択します。
Append Data (insert Into): プライマリキーまたは制約違反が発生した場合、ダーティデータエラーが報告されます。
Update On Primary Key Conflict (on Conflict Do Update Set): プライマリキーまたは制約違反が発生した場合、マップされたフィールドのデータは既存のレコードで更新されます。
Write-through
KingbaseES データベースのプライマリキー更新構文はアトミック操作ではありません。書き込むデータに 重複するプライマリキーがある場合、ライトスルーを 有効にする必要があります。そうでない場合は、並列書き込みが使用されます。ライトスルーは並列書き込みよりもパフォーマンスが低くなります。
説明このパラメーターは、Loading Policy で [Update on Primary Key Conflict] が選択されている場合にのみ構成できます。
Batch Write Size (オプション)
一度に書き込むデータのサイズです。バッチ書き込み数も設定できます。いずれかの制限に達すると、システムがデータを書き込みます。デフォルト値は 32M です。
Batch Write Count (オプション)
デフォルト値は 2048 です。データが同期および書き込みされると、バッチ書き込み戦略が使用されます。パラメーターには、[バッチ書き込み数] と [バッチ書き込みサイズ] が含まれます。
蓄積されたデータがいずれかの制限 (バッチ書き込みサイズまたはカウント制限) に達すると、システムはデータのバッチが蓄積されたとみなし、そのデータのバッチを一度に宛先にすぐに書き込みます。
バッチ書き込みサイズを 32 MB に設定することを推奨します。バッチ書き込みカウント制限については、単一レコードの実際のサイズに基づいて柔軟に調整できます。通常、バッチ書き込みの利点を最大限に活用するために、大きな値を設定します。たとえば、単一レコードのサイズが約 1 KB の場合、バッチ書き込みサイズを 16 MB に設定できます。同時に、この条件を考慮して、バッチ書き込みカウントを 16 MB を単一レコード 1 KB で割った結果 (つまり 16384 より大きい値) よりも大きい値、たとえば 20000 に設定します。この構成後、システムはバッチ書き込みサイズに基づいてバッチ書き込みをトリガーします。蓄積されたデータが 16 MB に達すると、書き込み操作が実行されます。
Prepare Statement (オプション)
データインポートの前にデータベースで実行される SQL スクリプト。
たとえば、サービスの継続的な可用性を確保するために、現在のステップがデータを書き込む前に、まずターゲットテーブル Target_A を作成し、次にターゲットテーブル Target_A への書き込みを実行します。現在のステップがデータの書き込みを完了した後、データベースでサービスを継続的に提供する Service_B テーブルの名前を Temp_C に変更し、次に Target_A テーブルの名前を Service_B に変更し、最後に Temp_C を削除します。
Post Statement (オプション)
データインポート後にデータベースで実行される SQL スクリプト。
Field Mapping
Input Fields
アップストリームの 入力コンポーネント の出力フィールドに基づいて、入力フィールドを表示します。
Output Fields
出力フィールドを表示します。次の操作を実行できます。
フィールド管理: [フィールド管理] をクリックして、出力フィールドを選択します。

アイコンをクリックして、[選択済み入力フィールド] を [未選択入力フィールド] に移動します。
アイコンをクリックして [未選択の入力フィールド] を [選択済みの入力フィールド] に移動します。
バッチ追加: [バッチ追加] をクリックして、JSON、TEXT、または DDL フォーマットで一括して設定します。
JSON 形式で構成します。例:
// 例: [{ "name": "user_id", "type": "String" }, { "name": "user_name", "type": "String" }]説明`name` パラメーターはインポートされたフィールドの名前を指定し、`type` パラメーターはインポート後のフィールドのデータの型を指定します。たとえば、
"name":"user_id","type":"String"は `user_id` という名前のフィールドをインポートし、そのデータの型を String に設定します。TEXT 形式で構成します。例:
// 例: user_id,String user_name,String行区切り文字は、各フィールドの情報を区切るために使用されます。デフォルトは改行 (\n) です。改行 (\n)、セミコロン (;) 、ピリオド (.) がサポートされています。
列区切り文字は、フィールド名とフィールドタイプを区切るために使用されます。デフォルトはコンマ (,) です。
DDL 形式で構成します。例:
CREATE TABLE tablename ( id INT PRIMARY KEY, name VARCHAR(50), age INT );
出力フィールドの作成: [+出力フィールドの作成] をクリックし、表示に従って [カラム] に入力し、[タイプ] を選択します。 現在の行を設定した後、
アイコンをクリックして保存します。
Mapping
上流からの入力フィールドとターゲットテーブルのフィールドに基づいて、手動でフィールドマッピングを選択できます。[マッピング] には [同一行マッピング] と [同一名称マッピング] が含まれます。
[Same Name Mapping]: 同じ名前のフィールドをマップします。
[Same Row Mapping]: ソーステーブルとターゲットテーブルのフィールド名は異なりますが、フィールドの対応する行のデータをマップする必要があります。同じ行のフィールドのみがマップされます。
[OK] をクリックして、KingbaseES Output Component のプロパティの構成を完了します。