PostgreSQL 入力コンポーネントは、PostgreSQL データソースからデータを読み取ります。PostgreSQL ソースから別の宛先にデータを同期するには、まず PostgreSQL 入力コンポーネントを構成してソースからデータを読み取る必要があります。その後、宛先コンポーネントを構成します。このトピックでは、PostgreSQL 入力コンポーネントの構成方法について説明します。
前提条件
PostgreSQL データソースが追加されました。詳細については、「PostgreSQL データソースの作成」をご参照ください。
PostgreSQL 入力コンポーネントのプロパティを構成するには、データソースに対するリードスルー権限を持つアカウントを使用する必要があります。この権限がない場合は、データソース権限を申請してください。詳細については、「データソース権限の申請、更新、および解放」をご参照ください。
操作手順
Dataphin ホームページの上部メニューバーで、開発者 > データ統合 を選択します。
統合ページの上部メニューバーで、プロジェクト を選択します。Dev-Prod モードでは、環境も選択する必要があります。
左側のナビゲーションウィンドウで、オフライン統合 をクリックします。オフライン統合 リストで、開発対象のオフラインパイプラインをクリックして、その構成ページを開きます。
ページ右上隅の コンポーネントライブラリ をクリックします。これにより、コンポーネントライブラリ パネルが開きます。
コンポーネントライブラリ パネルの左側ナビゲーションウィンドウで、入力 を選択します。次に、右側の入力コンポーネントリストで PostgreSQL コンポーネントを見つけ、キャンバスにドラッグします。
PostgreSQL 入力コンポーネントカードの
アイコンをクリックします。これにより、PostgreSQL 入力構成 ダイアログボックスが開きます。PostgreSQL 入力構成 ダイアログボックスで、以下のパラメーターを構成します。
パラメーター
説明
ステップ名
PostgreSQL 入力コンポーネントの名前です。Dataphin は自動的にステップ名を生成します。必要に応じて変更できます。命名規則は以下のとおりです。
使用できる文字は、漢字、英字、アンダースコア (_)、数字のみです。
長さは 64 文字以内です。
データソース
データソースのドロップダウンリストには、すべての PostgreSQL データソースが表示されます。これには、リードスルー権限があるものとないものが含まれます。現在のデータソース名をコピーするには、
アイコンをクリックします。リードスルー権限がないデータソースについては、データソース名の横にある リクエスト をクリックして、対応するデータソースの読み取り権限を申請できます。データソースの読み取り権限を申請する具体的な手順については、「データソース権限の申請、更新、および返却」をご参照ください。
まだ PostgreSQL データソースをお持ちでない場合は、新規データソース をクリックして作成します。詳細な手順については、「PostgreSQL データソースの作成」をご参照ください。
タイムゾーン
時刻形式のデータは、現在のタイムゾーンに基づいて処理されます。デフォルトでは、選択したデータソースで構成されたタイムゾーンが使用され、変更できません。
説明V5.1.2 より前のバージョンで作成されたタスクでは、データソースのデフォルト設定 または チャネル構成のタイムゾーン を選択します。デフォルトの選択肢は チャネル構成のタイムゾーン です。
データソースのデフォルト設定:選択したデータソースのデフォルトタイムゾーンです。
チャネル構成のタイムゾーン:プロパティ > チャネル構成 で現在の統合タスクに対して構成されたタイムゾーンです。
スキーマ (オプション)
スキーマをまたいだテーブル選択をサポートします。テーブルが存在するスキーマを選択します。指定しない場合、デフォルトでデータソースに構成されたスキーマが使用されます。
ソーステーブル数
ソーステーブル数を選択します。ソーステーブル数には、単一テーブル と 複数テーブル があります。
単一テーブル:1 つのテーブルからビジネスデータを同期し、1 つの宛先テーブルに書き込むシナリオで使用します。
複数テーブル:複数のテーブルからビジネスデータを同期し、同じ宛先テーブルに書き込むシナリオで使用します。複数のテーブルからのデータを同じデータテーブルに書き込む場合、UNION アルゴリズムが使用されます。
テーブル一致方法
汎用クラスルール または データベース正規表現 を選択できます。
説明このオプションは、ソーステーブル数が「複数テーブル」に設定されている場合にのみ構成します。
テーブル
ソーステーブルを選択します。
ソーステーブル数 が 単一テーブル に設定されている場合、テーブル名のキーワードを入力して検索します。または、正確なテーブル名を入力して 正確検索 をクリックします。テーブルを選択すると、システムが自動的にそのステータスを検出します。選択したテーブルの名前をコピーするには、
アイコンをクリックします。ソーステーブル数 が 複数テーブル に設定されている場合、テーブル一致方法に基づいて異なる式を入力してテーブルを追加します。
テーブル一致方法に 汎用ルール を選択した場合:入力ボックスにテーブル式を入力して、同じ構造を持つテーブル をフィルターします。システムは列挙、正規表現風、および混合形式をサポートします。例:
table_[001-100];table_102;テーブル一致方法に データベース正規表現 を選択した場合:入力ボックスに現在のデータベースでサポートされる正規表現を入力します。システムはこの正規表現に基づいて宛先データベース内のテーブルを一致させます。実行時に、タスクはデータベース正規表現に基づいて新しいテーブル範囲を即座に一致させて同期します。
式を入力後、正確検索 をクリックします。これにより、一致詳細の確認 ダイアログボックスに一致したテーブルの一覧が表示されます。
シャードキー (オプション)
システムは、構成されたシャードキーのフィールドに基づいてデータパーティションを実行します。同時実行構成と併用することで、同時読み取りを実現できます。ソースデータテーブルの列をシャードキーとして使用できます。また、転送パフォーマンスを確保するために、プライマリキーまたはインデックス付きの列をシャードキーとして使用することを推奨します。
重要日時型を選択した場合、システムは最大値と最小値を識別し、総時間範囲と同時実行数に基づいてブルートフォース分割を実行します。これは均等な分布を保証しません。
バッチ読み取り件数 (オプション)
一度に読み取るデータレコードの件数です。ソースデータベースからデータを読み取る際、1 レコードずつではなく、特定のバッチ読み取り件数(例:1024 件)を構成します。これにより、データソースとのやり取りを削減し、I/O 効率を向上させ、ネットワーク遅延を低減できます。
入力フィルター (オプション)
入力フィールドのフィルター情報を入力します。例:
ds=${bizdate}。入力フィルタリング は、以下の 2 つのシナリオに適用されます。固定されたデータのサブセット。
パラメーターによるフィルタリング。
出力フィールド
出力フィールドエリアには、選択したテーブルのすべてのフィールドおよびフィルター条件に一致するフィールドが表示されます。以下の操作がサポートされています。
フィールド管理:下流コンポーネントに出力する必要のないフィールドがある場合は、該当するフィールドを削除します。
単一フィールド削除シナリオ:少数のフィールドを削除する場合、操作列の
アイコンをクリックして不要なフィールドを削除します。一括フィールド削除シナリオ:多数のフィールドを削除する場合、フィールド管理 をクリックします。フィールド管理 ダイアログボックスで複数のフィールドを選択し、左向きの
アイコンをクリックして選択した入力フィールドを未選択の入力フィールドに移動させ、OK をクリックして一括フィールド削除を完了します。
一括追加:一括追加 をクリックします。JSON、TEXT、DDL 形式での一括構成がサポートされています。
説明一括追加後、[OK] をクリックすると、構成済みのフィールド情報が上書きされます。
JSON 形式で一括構成します。例:
// 例: [{ "index": 0, "name": "id", "type": "int(10)", "mapType": "Long", "comment": "comment1" }, { "index": 1, "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 形式で一括構成します。例:
// 例: 0,id,int(10),Long,comment1 1,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 をクリックして、PostgreSQL 入力コンポーネントのプロパティ構成を完了します。