GBase 8a 入力コンポーネントは、GBase 8a データソースからデータを取得します。 GBase 8a データソースから別のデータソースにデータを同期するには、まず GBase 8a 入力コンポーネントを設定してソースからデータを読み取ります。 次に、同期先のターゲットデータソースを設定します。 このトピックでは、GBase 8a 入力コンポーネントの設定方法について説明します。
前提条件
GBase 8a データソースを作成します。 詳細については、「GBase 8a データソースの作成」をご参照ください。
GBase 8a 入力コンポーネントの設定に使用するアカウントには、データソースに対する同期読み取り権限が必要です。 この権限がない場合は、権限をリクエストしてください。 詳細については、「データソース権限のリクエスト」をご参照ください。
操作手順
Dataphin のホームページの上部メニューバーで [開発] をクリックし、次に [データ統合] をクリックします。
統合ページの上部メニューバーで、[プロジェクト] を選択します。 Dev-Prod モードでは、環境も選択します。
左側のナビゲーションウィンドウで [オフライン統合] をクリックします。 [オフライン統合] リストで、開発するオフラインパイプラインをクリックして、設定ページを開きます。
ページの右上隅にある [コンポーネントライブラリ] をクリックして、[コンポーネントライブラリ] パネルを開きます。
[コンポーネントライブラリ] パネルの左側のナビゲーションウィンドウで、[入力] を選択します。 右側の入力コンポーネントのリストで [GBase 8a] コンポーネントを見つけ、キャンバスにドラッグします。
GBase 8a 入力ウィジェットカードの
アイコンをクリックして、[GBase 8a] [入力設定] ダイアログボックスを開きます。[GBase 8a 入力設定] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
[ステップ名]
GBase 8a 入力コンポーネントの名前です。 Dataphin はステップ名を自動的に生成します。 ビジネスシナリオに基づいて変更できます。 以下の命名ルールに従ってください:
漢字、英字、アンダースコア (_)、数字のみを使用します。
名前は 64 文字未満にしてください。
データソース
ドロップダウンリストには、Dataphin 内のすべての GBase 8a データソースが表示されます。 これには、同期読み取り権限を持つデータソースと、持たないデータソースが含まれます。
アイコンをクリックして、現在のデータソース名をコピーします。データソースに対する同期読み取り権限がない場合は、読み取り権限をリクエストしてください。 手順については、「データソース権限のリクエスト」をご参照ください。
まだ GBase 8a データソースがない場合は、[データソースの作成] をクリックして作成します。 詳細については、「GBase 8a データソースの作成」をご参照ください。
ソーステーブル数
ソーステーブルの数を選択します。 オプションは [単一テーブル] と [複数テーブル] です:
[単一テーブル]:1 つのテーブルから 1 つのターゲットテーブルにビジネスデータを同期する場合にこのオプションを使用します。
[複数テーブル]:複数のテーブルから 1 つのターゲットテーブルにビジネスデータを同期する場合にこのオプションを使用します。 複数のテーブルから 1 つのテーブルにデータを書き込む際、システムは UNION アルゴリズムを使用します。
テーブルマッチング方法
[汎用ルール] のみ選択できます。
説明この設定は、[ソーステーブル数] で [複数テーブル] を選択した場合にのみ利用可能です。
テーブル
ソーステーブルを選択します:
[ソーステーブル数] で [単一テーブル] を選択した場合、テーブル名のキーワードを入力して検索します。 または、正確なテーブル名を入力して [完全一致] をクリックします。 テーブルを選択すると、システムが自動的にそのステータスを確認します。
アイコンをクリックして、選択したテーブルの名前をコピーします。[ソーステーブル数] で [複数テーブル] を選択した場合、次のようにテーブルを追加します:
入力ボックスに、同じ構造を持つテーブルをフィルターする式を入力します。
システムは、列挙形式、正規表現形式、および混合形式をサポートしています。 例:
table_[001-100];table_102。[完全一致] をクリックします。 [一致詳細の確認] ダイアログボックスで、一致したテーブルのリストを確認します。
[確認] をクリックします。
Shard Key (オプション)
システムは、設定されたシャードキーフィールドを使用してデータを分割します。 これを同時実行設定と併用して、同時読み取りを有効にします。 ソーステーブルの任意の列をシャードキーとして使用できます。 最高のパフォーマンスを得るには、プライマリキーまたはインデックス付き列を使用してください。
重要日時タイプを選択した場合、システムは最大値、最小値、および同時実行設定に基づいて、全時間範囲にわたってブルートフォース分割を実行します。 この分割は、均等であるとは限りません。
[バッチ読み取りサイズ] (オプション)
一度に読み取るレコード数です。 1024 レコードなどのバッチサイズを設定して、ソースデータベースへのラウンドトリップを減らします。 これにより、I/O 効率が向上し、ネットワーク遅延が低減します。
[入力フィルター] (オプション)
抽出するデータをフィルターするための条件を設定します。 例:
静的な値を使用します。 例:
ds=20210101。変数パラメーターを使用します。 例:
ds=${bizdate}。
出力フィールド
このセクションには、選択したテーブルと一致するフィルター条件のすべてのフィールドが一覧表示されます。 次の操作が可能です:
フィールドの管理:ダウンストリームで不要なフィールドを削除します:
単一フィールドの削除:[操作] 列の
アイコンをクリックして、単一のフィールドを削除します。複数フィールドの削除:[フィールド管理] をクリックします。 [フィールド管理] ダイアログボックスで、複数のフィールドを選択します。 左シフトアイコン (
) をクリックして、[選択済み] リストから [未選択] リストに移動します。 [OK] をクリックして、一括削除を完了します。
バッチ追加:[バッチ追加] をクリックして、JSON、TEXT、または DDL 形式で出力フィールドを設定します。
説明[OK] をクリックすると、バッチで追加されたフィールドは、既存のフィールド設定を上書きします。
JSON 形式の例:
// 例: [{ "index": 1, "name": "id", "type": "int(10)", "mapType": "Long", "comment": "comment1" }, { "index": 2, "name": "user_name", "type": "varchar(255)", "mapType": "String", "comment": "comment2" }]説明index は指定されたオブジェクトの列番号を示し、name はインポート後のフィールド名、type はインポート後のフィールドタイプを示します。 たとえば、
"index":3,"name":"user_id","type":"String"は、ファイル内の 4 番目の列を、フィールド名 user_id、フィールドタイプ String としてインポートします。TEXT 形式の例:
// 例: 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] をクリックして、[GBase 8a 入力コンポーネント] の設定を完了します。