TDSQL for MySQL 入力コンポーネントは、TDSQL for MySQL データソースからデータを取得します。TDSQL for MySQL データソースから他のデータソースへデータを同期する場合、まず TDSQL for MySQL 入力コンポーネントを構成してソースから読み取りを行います。その後、送信先のデータソースを構成します。本トピックでは、TDSQL for MySQL 入力コンポーネントの構成方法について説明します。
前提条件
TDSQL for MySQL データソースを作成済みである必要があります。詳細については、「TDSQL for MySQL データソースの作成」をご参照ください。
TDSQL for MySQL 入力コンポーネントの構成に使用するアカウントには、データソースに対するリードスルー権限が必要です。該当の権限がない場合は、権限の付与をリクエストしてください。詳細については、「データソース権限のリクエスト」および「」をご参照ください。
操作手順
Dataphin ホームページの上部のメニューバーで、[開発] をクリックし、次に [データ統合] をクリックします。
統合ページの上部メニューバーで、**[プロジェクト]** を選択します。Dev-Prod モードの場合は、環境も併せて選択します。
左側のナビゲーションウィンドウで、[バッチパイプライン] をクリックします。[バッチパイプライン] リストで、開発するオフラインパイプラインをクリックします。オフラインパイプラインの構成ページが開きます。
ページの右上隅で、[コンポーネントライブラリ] をクリックして、[コンポーネントライブラリ] パネルを開きます。
「コンポーネントライブラリ」パネルの左側ナビゲーションウィンドウで、[入力] をクリックします。右側の入力コンポーネント一覧から [TDSQL For MySQL] コンポーネントを見つけ、キャンバス上にドラッグします。
TDSQL for MySQL 入力コンポーネントカードにある
アイコンをクリックして、[TDSQL For MySQL] [入力設定] ダイアログボックスを開きます。[TDSQL For MySQL 入力設定] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
ステップ名
TDSQL for MySQL 入力コンポーネントの名前です。Dataphin が自動的にステップ名を生成しますが、ビジネスシナリオに応じて変更可能です。命名規則は以下のとおりです。
漢字、英字、アンダースコア (_ )、数字のみを使用できます。
最大 64 文字までです。
ソーステーブル数
ソーステーブルの数を選択します。「単一テーブル」および「複数テーブル」から選択可能です。
単一テーブル:1 つのソーステーブルから 1 つの送信先テーブルへビジネスデータを同期する場合に選択します。
複数テーブル:複数のソーステーブルから 1 つの送信先テーブルへビジネスデータを同期する場合に選択します。複数テーブルから 1 つの送信先テーブルへ書き込む際、システムは UNION アルゴリズムを使用します。
UNION の詳細については、「」および「INTERSECT、UNION、EXCEPT」をご参照ください。
データソース
データソースのドロップダウンリストには、現在の Dataphin インスタンスに登録されているすべての TDSQL for MySQL データソース(リードスルー権限があるもの・ないものを含む)が表示されます。ソーステーブル数が「単一テーブル」に設定されている場合、1 つのデータソースのみ選択可能です。現在のデータソース名をコピーするには、
アイコンをクリックします。ソーステーブル数が「複数テーブル」に設定されている場合、同一タイムゾーンを共有する複数のデータソースを選択可能です。複数テーブル
リードスルー権限がないデータソースの場合、データソース名の横にある[要求]をクリックして、リードスルー権限を要求します。詳細については、「データソースの権限を要求する」をご参照ください。
TDSQL for MySQL データソースがない場合は、ドロップダウンリストで [データソースの作成] をクリックします。詳細については、「TDSQL for MySQL データソースの作成」をご参照ください。
データベース(任意)
ソーステーブルを含むデータベースを選択します。このフィールドを空欄のままにした場合、データソース登録時に指定したデータベースが使用されます。
「複数テーブル」を選択した場合、複数のデータベースを選択可能です。
アイコンをクリックすると、データベース一覧 ダイアログボックスが開き、選択済みのすべてのデータベースを確認できます。テーブルマッチング方式
「汎用ルール」または「データベース正規表現」を選択します。
説明このパラメーターは、「ソーステーブル数」で「複数テーブル」を選択した場合にのみ利用可能です。
テーブル
ソーステーブルを選択します。
「ソーステーブル数」で[単一テーブル]を選択した場合、テーブル名を検索するキーワードを入力するか、正確なテーブル名を入力して[完全一致]をクリックします。テーブルを選択すると、システムが自動的にテーブルのステータスを確認します。選択したテーブルの名前をコピーするには、
アイコンをクリックします。「ソーステーブル数」で「複数テーブル」を選択した場合、テーブルマッチング方式に基づいた式を入力します。
汎用ルール:同一構造を持つテーブルをフィルターするためのテーブル式を入力ボックスに入力します。列挙、正規表現風構文、および混合形式がサポートされています。例:
table_[001-100];table_102;。データベース正規表現:現在のデータベースでサポートされる正規表現を入力します。システムは、この正規表現を用いてターゲットデータベース内のテーブルをマッチさせます。実行時、システムは正規表現に基づいて新規テーブルを動的にマッチさせます。
式を入力した後、[完全一致] をクリックして [一致詳細の確認] ダイアログボックスを開き、一致したテーブルのリストを表示します。
シャードキー(任意)
システムは、設定されたシャードキー列に基づいてデータをパーティション分割します。同時実行設定と併用することで、同時読み取りを有効化できます。ソーステーブルの任意の列をシャードキーとして使用できます。パフォーマンス向上のため、プライマリキーまたはインデックス付き列の使用を推奨します。
重要日時型をシャードキーとして選択した場合、システムは全時間範囲および同時実行設定に基づく総当たりパーティション分割を実行します。この手法は均等な分散を保証しません。
入力フィルター(任意)
抽出対象データをフィルターする条件を設定します。構成内容は以下のとおりです。
静的値:マッチするデータを抽出します。例:
ds=20211111。変数パラメーター:データのサブセットを抽出します。例:
ds=${bizdate}。
出力フィールド
「出力フィールド」セクションには、選択したテーブルおよびフィルター結果から得られるすべてのフィールドが一覧表示されます。以下の操作が可能です。
フィールドの管理:不要なフィールドを、後続コンポーネントへ渡さないように削除できます。
1 つのフィールドを削除:少数のフィールドを削除する場合、[操作] 列の
アイコンをクリックします。複数のフィールドを削除: 多くのフィールドを削除するには、[フィールド管理] をクリックします。[フィールド管理] ダイアログボックスで、複数のフィールドを選択します。
左矢印アイコンをクリックして、それらを「選択済み」から「未選択」に移動します。[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) です。サポートされる区切り文字:\n、セミコロン (;)、ピリオド (.)。
列区切り文字はフィールド名と型を区切ります。デフォルトはカンマ (,) です。サポートされる区切り文字:
','。フィールド型は省略可能で、デフォルトは','です。
DDL 形式の例:
CREATE TABLE tablename ( user_id serial, username VARCHAR(50), password VARCHAR(50), email VARCHAR (255), created_on TIMESTAMP, );
出力フィールドの追加: [+ 出力フィールドの追加] をクリックします。[列]、[タイプ]、および[コメント] に値を入力します。[マッピングタイプ] を選択します。
アイコンをクリックして、行を保存します。
[OK] をクリックして TDSQL for MySQL 入力コンポーネントの設定を完了します。