SelectDB 入力コンポーネントは、SelectDB データソースからデータを読み取ります。 SelectDB データソースから他のデータソースにデータを同期する必要がある場合は、まず SelectDB 入力コンポーネントのソースデータソース情報を構成してから、データ同期のターゲットデータソースを構成する必要があります。 このトピックでは、SelectDB 入力コンポーネントを構成する方法について説明します。
前提条件
SelectDB データソースが作成されます。 詳細については、「SelectDB データソースを作成する」をご参照ください。
SelectDB 入力コンポーネントのプロパティを構成するために使用されるアカウントは、データソースに対するリードスルー権限を持っている必要があります。 権限がない場合は、データソース権限をリクエストする必要があります。 詳細については、「データソース権限をリクエストする」をご参照ください。
手順
Dataphin ホームページの上部ナビゲーションバーで、[開発] > [Data Integration] を選択します。
統合ページの上部ナビゲーションバーで、プロジェクトを選択します(開発・本番モードでは、環境を選択する必要があります)。
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックします。 [バッチパイプライン] リストで、開発するオフラインパイプラインをクリックして、構成ページを開きます。
ページの右上隅にある [コンポーネントライブラリ] をクリックして、[コンポーネントライブラリ] パネルを開きます。
[コンポーネントライブラリ] パネルの左側のナビゲーションウィンドウで、[入力] を選択します。 右側の入力コンポーネントリストで [SelectDB] コンポーネントを見つけて、キャンバスにドラッグします。
SelectDB 入力コンポーネントカードの
アイコンをクリックして、[SelectDB] [入力構成] ダイアログボックスを開きます。[SelectDB 入力構成] ダイアログボックスで、パラメーターを構成します。
パラメーター
説明
ステップ名
SelectDB 入力コンポーネントの名前。 Dataphin は自動的にステップ名を生成します。 ビジネスシナリオに基づいて変更することもできます。 名前は次の要件を満たしている必要があります。
漢字、英字、アンダースコア(_)、数字のみを含めることができます。
長さは 64 文字を超えることはできません。
データソース
データソースドロップダウンリストには、リードスルー権限がないものを含め、現在の Dataphin インスタンスのすべての SelectDB データソースが表示されます。
リードスルー権限のないデータソースの場合、データソースの横にある [リクエスト] をクリックして、リードスルー権限をリクエストできます。 詳細については、「データソース権限をリクエストする」をご参照ください。
SelectDB データソースがない場合は、[データソースの作成] をクリックして作成します。 詳細については、「SelectDB データソースを作成する」をご参照ください。
ソーステーブル数量
ソーステーブル数量を選択します。 ソーステーブル数量には、[単一テーブル] と [複数テーブル] が含まれます。
[単一テーブル]: このオプションは、1 つのテーブルのビジネスデータを 1 つのターゲットテーブルに同期する場合に適用されます。
[複数テーブル]: このオプションは、複数テーブルのビジネスデータを同じターゲットテーブルに同期する場合に適用されます。 複数テーブルのデータを同じデータテーブルに書き込む場合は、ユニオンアルゴリズムが使用されます。
テーブル
ソーステーブルを選択します。
ソーステーブル数量 に [単一テーブル] を選択した場合は、キーワードを入力してテーブルを検索するか、正確なテーブル名を入力して [完全一致] をクリックします。 テーブルを選択すると、システムは自動的にテーブルステータスをチェックします。
アイコンをクリックして、選択したテーブルの名前をコピーします。ソーステーブル数量 に [複数テーブル] を選択した場合は、次の手順を実行してテーブルを追加します。
入力フィールドにテーブル式を入力して、同じ構造のテーブルをフィルタリングします。
システムは、列挙、正規表現、および両方の組み合わせをサポートしています。 たとえば、
table_[001-100];table_102。[完全一致] をクリックします。 [一致の詳細の確認] ダイアログボックスで、一致したテーブルのリストを表示します。
[OK] をクリックします。
シャードキー (オプション)
一度に読み取るレコードの数。 ソースデータベースからデータを読み取るときに、レコードを 1 つずつ読み取る代わりに、特定のバッチサイズ (1,024 レコードなど) を構成できます。 これにより、データソースとの対話の回数が減り、I/O 効率が向上し、ネットワークレイテンシが減少します。
バッチサイズ (オプション)
一度に読み取るレコードの数。 ソースデータベースからデータを読み取るときに、レコードを 1 つずつ読み取る代わりに、特定のバッチサイズ (1,024 レコードなど) を構成できます。 これにより、データソースとの対話の回数が減り、I/O 効率が向上し、ネットワークレイテンシが減少します。
入力フィルター (オプション)
データ抽出のフィルタリング条件を構成します。 構成手順は次のとおりです。
静的値を構成して対応するデータを抽出します。たとえば、
ds=20210101。変数パラメーターを構成して、データの特定の部分を抽出します。たとえば、
ds=${bizdate}。
出力フィールド
出力フィールドセクションには、選択したテーブルとフィルタリング条件に一致するすべてのフィールドが表示されます。 次の操作を実行できます。
フィールド管理: 特定のフィールドをダウンストリームコンポーネントに出力する必要がない場合は、これらのフィールドを削除できます。
単一フィールドの削除: 少量のフィールドを削除する必要がある場合は、操作列の
アイコンをクリックして、不要なフィールドを削除できます。複数フィールドのバッチ削除: 多くのフィールドを削除する必要がある場合は、[フィールド管理] をクリックします。 [フィールド管理] ダイアログボックスで、複数のフィールドを選択し、
左矢印アイコンをクリックして、選択した入力フィールドを未選択の入力フィールドに移動してから、[OK] をクリックして、フィールドのバッチ削除を完了します。
バッチ追加: [バッチ追加] をクリックして、JSON、TEXT、または DDL 形式でフィールドを構成します。
説明バッチ追加を完了して [OK] をクリックすると、システムは構成済みのフィールド情報を 上書き します。
JSON 形式でフィールドを構成します。例:
// 例: [{ "index": 1, "name": "id", "type": "int(10)", "mapType": "Long", "comment": "comment1" // コメント1 }, { "index": 2, "name": "user_name", "type": "varchar(255)", "mapType": "String", "comment": "comment2" // コメント2 }]説明index は指定されたオブジェクトの列番号を示し、name はインポート後のフィールド名を示し、type はインポート後のフィールドタイプを示します。 たとえば、
"index":3,"name":"user_id","type":"String"は、ファイルから 4 番目の列をインポートすることを意味し、フィールド名は user_id、フィールドタイプは String です。TEXT 形式でフィールドを構成します。例:
// 例: 1,id,int(10),Long,comment1 // コメント1 2,user_name,varchar(255),Long,comment2 // コメント2行区切り文字は、各フィールドの情報を区切るために使用されます。 デフォルトは改行(\n)です。 サポートされている区切り文字には、改行(\n)、セミコロン(;)、ピリオド(.)が含まれます。
列区切り文字は、フィールド名とフィールドタイプを区切るために使用されます。 デフォルトはカンマ(,)です。 ',' を サポートしています
','。フィールドタイプは省略可能で、デフォルトは','です。
DDL 形式でフィールドを構成します。例:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
新しい出力フィールドの作成: [+ 出力フィールドの作成] をクリックし、[列]、[タイプ]、[コメント] を入力し、プロンプトに従って [マッピングタイプ] を選択します。 現在の行の構成が完了したら、
アイコンをクリックして保存します。
[OK] をクリックして、SelectDB 入力コンポーネントのプロパティ構成を完了します。