KingbaseES Input コンポーネントは、KingbaseES データソースからデータを読み取ります。KingbaseES データソースから別のデータソースにデータを同期するには、まず KingbaseES Input コンポーネントを構成してソースから読み取り、次にターゲットデータソースのコンポーネントを構成する必要があります。このトピックでは、KingbaseES Input コンポーネントを構成する方法について説明します。
前提条件
KingbaseES データソースを作成済みであること。詳細については、「KingbaseES データソースの作成」をご参照ください。
KingbaseES Input コンポーネントの構成に使用するアカウントには、データソースに対する同期読み取り権限が必要です。アカウントにこの権限がない場合は、申請する必要があります。詳細については、「データソース権限の申請、更新、または解放」をご参照ください。
操作手順
Dataphin ホームページで、上部のメニューバーから [開発] > [データ統合] を選択します。
統合ページで、トップメニューバーから [プロジェクト] を選択します。開発-本番モードの場合は、環境も選択する必要があります。
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックします。[バッチパイプライン] リストで、開発するオフラインパイプラインをクリックします。パイプラインの構成ページが開きます。
ページの右上隅で、[コンポーネントライブラリ] をクリックして [コンポーネントライブラリ] パネルを開きます。
「コンポーネントライブラリ」パネルの左側にあるナビゲーションウィンドウで、[入力] をクリックします。右側の入力コンポーネントのリストから、[KingbaseES] コンポーネントを探し、キャンバスにドラッグします。
KingbaseES 入力ウィジェットカードの
アイコンをクリックして、[KingbaseES] [入力設定] ダイアログボックスを開きます。[KingbaseES 入力設定] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
ステップ名
KingbaseES Input コンポーネントの名前です。Dataphin がステップ名を自動生成します。ビジネスシナリオに基づいて変更できます。以下の命名規則を使用してください。
中国語文字、文字、アンダースコア (_)、および数字のみを使用します。
名前は 64 文字以内にする必要があります。
データソース
ドロップダウンリストには、Dataphin 内のすべての KingbaseES データソースが表示されます。これには、同期読み取り権限を持つデータソースと持たないデータソースが含まれます。
アイコンをクリックして、現在のデータソース名をコピーします。データソースに対する同期読み取り権限がない場合は、読み取り権限を申請してください。手順については、「データソース権限の申請、更新、または解放」をご参照ください。
KingbaseES データソースがまだない場合は、[データソースの作成] をクリックして作成します。詳細については、「KingbaseES データソースの作成」をご参照ください。
ソーステーブル数
ソーステーブルの数を選択します。オプションは [単一テーブル] と [複数テーブル] です。
[単一テーブル]: 1つのソーステーブルから1つのターゲットテーブルにビジネスデータを同期する場合に、このオプションを使用します。
[複数テーブル]: 複数のソーステーブルから1つのターゲットテーブルにビジネスデータを同期する場合に、このオプションを使用します。複数のテーブルから1つのテーブルにデータを書き込む場合、システムは UNION アルゴリズムを使用します。
テーブルマッチング方法
選択できるのは、[汎用ルール] のみです。
説明この設定は、ソーステーブル数に [複数テーブル] を選択した場合にのみ使用できます。
テーブル
ソーステーブルを選択します。
[ソーステーブル数] で [単一テーブル] を選択した場合は、テーブル名のキーワードを入力して検索します。または、正確なテーブル名を入力して [完全一致] をクリックします。テーブルを選択すると、システムが自動的にそのステータスを確認します。
アイコンをクリックして、選択したテーブル名をコピーします。ソーステーブル数に [複数テーブル] を選択した場合は、次のようにテーブルを追加します。
入力ボックスに、同じ構造のテーブルをフィルターする式を入力します。
システムは、列挙、正規表現のようなパターン、および混合パターンをサポートしています。例:
table_[001-100];table_102。「[完全一致]」をクリックします。[一致詳細の確認] ダイアログボックスで、一致したテーブルの一覧を確認します。
[確認] をクリックします。
シャードキー (オプション)
システムは、指定したシャードキーフィールドに基づいてデータを分割します。これを同時実行設定と組み合わせて使用すると、同時読み取りを有効にできます。ソーステーブルの任意の列をシャードキーとして使用できます。最高のパフォーマンスを得るには、プライマリキーまたはインデックス付き列を使用してください。
重要日時タイプを選択した場合、システムは最大値と最小値を使用して全時間範囲で総当たり分割を実行します。この方法では、均等な分散は保証されません。
バッチ読み取りサイズ (オプション)
一度に読み取るレコード数です。レコードを1つずつ読み取る代わりに、1024などのバッチサイズを設定します。これにより、データソースとのインタラクションが減り、I/O 効率が向上し、ネットワーク遅延が低減されます。
入力フィルター (オプション)
入力フィールドのフィルター条件を入力します。例:
ds=${bizdate}。以下のシナリオで [入力フィルター] を使用します。データの固定サブセット。
パラメーターベースのフィルタリング。
出力フィールド
このセクションには、選択したテーブルと一致するフィルターからのすべてのフィールドがリストされます。以下の操作を実行できます。
[フィールド管理]: ダウンストリームコンポーネントに渡す必要のないフィールドを削除します。
個々のフィールドの削除: [操作] 列の
アイコンをクリックして、不要なフィールドを削除します。バッチフィールド削除シナリオ: 複数のフィールドを削除するには、[フィールド管理] をクリックし、[フィールド管理] ダイアログボックスで複数のフィールドを選択して、
左方向移動アイコンをクリックし、選択した入力フィールドを未選択の入力フィールドに移動させてから、[OK] をクリックしてバッチフィールド削除を完了します。
一括追加: [一括追加] をクリックして、JSON、TEXT、または DDL フォーマットで出力フィールドを設定します。
説明[OK] をクリックすると、一括追加操作により既存のフィールド構成が上書きされます。
JSON 形式の例:
// Example: [{ "index": 1, "name": "id", "type": "int(10)", "mapType": "Long", "comment": "comment1" }, { "index": 2, "name": "user_name", "type": "varchar(255)", "mapType": "String", "comment": "comment2" }]説明indexは指定されたオブジェクトの 0 ベースの列インデックス、nameはインポート後のフィールド名、typeはインポート後のフィールドタイプをそれぞれ指定します。 たとえば、"index":3,"name":"user_id","type":"String"は、ファイルの 4 番目の列がインポートされ、フィールド名がuser_idで、フィールドタイプがStringであることを示します。TEXT 形式の例:
// Example: 1,id,int(10),Long,comment1 2,user_name,varchar(255),Long,comment2行区切り文字は、各フィールドの情報を区切ります。デフォルトでは、改行 (\n) です。セミコロン (;) またはピリオド (.) も使用できます。
列区切り文字は、フィールド名とフィールドタイプを区切ります。デフォルトでは、コンマ (,) です。
','も使用できます。フィールドタイプはオプションであり、デフォルトは','です。
DDL 形式でバッチ構成を実行できます。例:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
新しい出力フィールドの追加: [+ 出力フィールドの追加] をクリックします。[列]、[型]、および [コメント] を入力します。[マッピングタイプ] を選択します。
アイコンをクリックして行を保存します。
[OK] をクリックして、[KingbaseES Input Component] の設定を完了します。