すべてのプロダクト
Search
ドキュメントセンター

Dataphin:PostgreSQL 出力コンポーネントの構成

最終更新日:Mar 06, 2026

PostgreSQL 出力コンポーネントは、データを PostgreSQL データソースに書き込みます。ソースデータを構成した後、別のデータソースから PostgreSQL へデータ同期を行う際に、PostgreSQL 出力コンポーネントでターゲットの PostgreSQL データソースを構成します。本トピックでは、PostgreSQL 出力コンポーネントの構成方法について説明します。

前提条件

  • PostgreSQL データソースを作成しました。詳細については、「PostgreSQL データソースの作成」をご参照ください。

  • PostgreSQL 出力コンポーネントを構成するアカウントには、データソースに対するライトスルー権限が必要です。この権限がない場合は、申請してください。詳細については、「Request, renew, and return data source permissions」をご参照ください。

操作手順

  1. Dataphin ホームページの上部メニューバーで、[Development] をクリックし、次に [Data Integration] をクリックします。

  2. 統合ページの上部メニューバーで、[project] を選択します。Dev-Prod モードの場合は、環境も選択します。

  3. 左側のナビゲーションウィンドウで、[Offline Integration] をクリックします。[Offline Integration] リストで、開発対象のオフラインパイプラインをクリックして、その構成ページを開きます。

  4. ページ右上隅で、[Component Library] をクリックして、[Component Library] パネルを開きます。

  5. [Component Library] パネルの左側ナビゲーションウィンドウで、[Output] をクリックします。右側の出力コンポーネントリストで、[PostgreSQL] コンポーネントを見つけ、キャンバス上にドラッグします。

  6. 入力ウィジェットのターゲットから image アイコンをクリックしてドラッグし、PostgreSQL 出力ウィジェットに接続します。

  7. PostgreSQL 出力コンポーネントカードで、image アイコンをクリックして、[PostgreSQL Output Configuration] ダイアログボックスを開きます。

    image

  8. [PostgreSQL Output Configuration] ダイアログボックスで、以下のパラメーターを構成します。

    パラメーター

    説明

    基本設定

    ステップ名

    PostgreSQL 出力コンポーネントの名前です。Dataphin は自動的にステップ名を生成しますが、ビジネスシナリオに応じて変更できます。命名規則は以下のとおりです。

    • 英字、数字、アンダースコア (_)、および漢字のみ使用可能です。

    • 64 文字以内である必要があります。

    データソース

    データソースのドロップダウンリストには、ライトスルー権限があるものとないものを含む、すべての PostgreSQL タイプのデータソースが表示されます。現在のデータソース名をコピーするには、image アイコンをクリックします。

    • ライトスルー権限がないデータソースについては、その横にある [Request] をクリックして、ライトスルー権限を申請できます。詳細については、「Request data source permissions」をご参照ください。

    • PostgreSQL タイプのデータソースがない場合は、dfag [New] アイコンをクリックして新規作成できます。詳細については、「Create a PostgreSQL data source」をご参照ください。

    タイムゾーン

    Dataphin は、現在のタイムゾーンに基づいて時刻形式のデータを処理します。デフォルトでは、選択されたデータソースに設定されているタイムゾーンが使用され、変更できません。

    説明

    V5.1.2 より前のバージョンで作成されたタスクでは、[Data Source Default Configuration] または [Channel Configuration Time Zone] のいずれかを選択できます。デフォルトの選択肢は [Channel Configuration Time Zone] です。

    • データソースのデフォルト設定:選択されたデータソースのデフォルトのタイムゾーンです。

    • [Channel Configuration Time Zone]:現在の統合タスクの [Properties] > [Channel Configuration] で設定されたタイムゾーンです。

    スキーマ(任意)

    テーブルが存在するスキーマを選択すると、スキーマをまたいだテーブル選択が可能になります。指定しない場合、データソースに設定されたスキーマがデフォルトで使用されます。

    テーブル

    出力データのターゲットテーブルを選択します。 キーワードを入力してテーブルを検索するか、正確なテーブル名を入力して [Exact Search] をクリックできます。テーブルを選択すると、Dataphin は自動的にそのステータスをチェックします。選択したテーブル名をコピーするには、image アイコンをクリックします。

    MySQL データソース内にターゲットテーブルが存在しない場合、ワンクリックテーブル作成機能を使用して、ターゲットテーブルを迅速かつ簡単に作成できます。手順は以下のとおりです。

    1. [One-Click Table Creation] をクリックします。Dataphin は、ターゲットテーブルを作成するための SQL コード(テーブル名はデフォルトでソーステーブル名、フィールドの型は Dataphin フィールドに基づいて事前に変換)を自動生成します。

    2. ビジネスシナリオに応じて SQL スクリプトを必要に応じて修正し、[Create] をクリックします。正常に作成されると、Dataphin は自動的に新しいテーブルを出力先として設定します。

      説明
      • 開発環境にすでに同じ名前のテーブルが存在する場合、[Create] をクリックするとエラーが返されます。

      • 一致するテーブルが見つからない場合でも、手動でテーブル名を入力して続行できます。

    本番テーブル不在時のポリシー

    本番テーブルが存在しない場合の動作を指定します。オプションは [Do Nothing] または [Automatic Creation] です。デフォルトは [Automatic Creation] です。[Do Nothing] を選択すると、タスク公開時にテーブル作成をスキップします。[Automatic Creation] を選択すると、公開時にターゲット環境に同名のテーブルが作成されます。

    • [Do Nothing]:ターゲットテーブルが存在しない場合、提出時に警告が表示されますが、公開は許可されます。タスク実行前に、本番環境で手動でターゲットテーブルを作成する必要があります。

    • [Automatic Creation]:必ず [Edit Table Creation Statement] を実行する必要があります。システムは選択されたテーブルに基づいて文を事前に入力しますが、これを調整できます。テーブル名にはプレースホルダー ${table_name} を使用してください。これは唯一サポートされる形式です。実行時に、システムはこれを実際のテーブル名に置き換えます。

      ターゲットテーブルが存在しない場合、システムは提供された文を使用してテーブルの作成を試みます。作成に失敗すると、公開も失敗するため、文を修正して再公開する必要があります。テーブルがすでに存在する場合は、作成は行われません。

    説明

    この設定は、Dev-Prod モードのプロジェクトでのみ利用可能です。

    ローディングポリシー

    ターゲットテーブルへのデータ書き込み方法を選択します。[Loading Policy] のオプションは以下のとおりです。

    • [Append Data (INSERT INTO)]:プライマリキーまたは制約違反が発生した場合、ダーティデータエラーを報告します。

    • [Update on Primary Key Conflict (ON CONFLICT DO UPDATE SET)]:プライマリキーまたは制約違反が発生した場合、既存レコードのマッピング済みフィールドを更新します。

    同期書き込み

    プライマリキー更新の構文はアトミック操作ではありません。データに重複するプライマリキーが含まれる場合は、同期書き込みを有効にしてください。それ以外の場合は、並列書き込みを使用します。同期書き込みは並列書き込みよりもパフォーマンスが低くなります。

    説明

    このオプションは、ローディングポリシーとして [Update on Primary Key Conflict] が選択されている場合にのみ利用可能です。

    バッチ書き込みデータ量(任意)

    1 回のバッチで書き込まれるデータ量です。[Batch Write Record Count] も設定できます。いずれかの上限に達すると、システムはすぐにデータを書き込みます。デフォルト値は 32 MB です。

    バッチ書き込みレコード数(任意)

    デフォルト: 2,048 レコード。データ同期中に、Dataphin は、[バッチ書き込みレコード数] および [バッチ書き込みデータ量] の 2 つのパラメーターによって制御されるバッチ書き込み戦略を使用します。

    • 蓄積されたデータがいずれかの上限(レコード数またはデータ量)に達すると、システムはバッチが満杯と判断し、直ちにターゲットに書き込みます。

    • バッチデータ量を 32 MB に設定することを推奨します。平均レコードサイズに応じてレコード数を調整し、バッチ効率を最大化してください。たとえば、各レコードが約 1 KB の場合、バッチデータ量を 16 MB、レコード数を 16,384(16 MB ÷ 1 KB)以上に設定します。20,000 レコードに設定すると、データ量に基づいて書き込みがトリガーされ、16 MB が蓄積されるたびに書き込みが実行されます。

    準備文(任意)

    データインポート前にデータベースで実行される SQL スクリプトです。

    たとえば、サービス可用性を維持するために、データ書き込み前に一時テーブル Target_A を作成し、Target_A に書き込んだ後、稼働中のテーブル Service_B を Temp_C にリネームし、Target_A を Service_B にリネームし、最後に Temp_C を削除するといった操作が可能です。

    完了文(任意)

    データインポート後にデータベースで実行される SQL スクリプトです。

    フィールドマッピング

    入力フィールド

    上流の出力に基づいて入力フィールドを表示します。

    出力フィールド

    出力フィールドを表示します。以下の操作が可能です。

    • フィールド管理: [フィールド管理] をクリックして、出力フィールドを選択します。

      image

      • gaagag アイコンをクリックして、[Selected Input Field][Unselected Input Fields] に移動します。

      • agfag アイコンをクリックして、[Unselected Input Field][Selected Input Fields] に移動します。

    • 一括追加: [一括追加] をクリックして、JSON、TEXT、またはDDLフォーマットでフィールドを設定します。

      • JSON 形式で一括構成を行います。例:

        // 例:
        [{
          "name": "user_id",
          "type": "String"
         },
         {
          "name": "user_name",
          "type": "String"
         }]
        説明

        name はインポートするフィールドの名前を、type はインポート後のフィールドのデータの型を指定します。たとえば、"name":"user_id","type":"String" は、user_id という名前のフィールドをインポートし、そのデータの型を String に設定します。

      • TEXT 形式の例:

        // 例:
        user_id,String
        user_name,String
        • 行区切り文字はフィールドエントリを区切ります。デフォルト:改行 (\n)。サポートされるデリミタ:改行 (\n)、セミコロン (;)、ピリオド (.)。

        • 列区切り文字はフィールド名と型を区切ります。デフォルト:カンマ (,)。

      • DDL 形式で複数のオブジェクトを一度に構成します。例:

        CREATE TABLE tablename (
            id INT PRIMARY KEY,
            name VARCHAR(50),
            age INT
        );
    • 出力フィールドの作成[+ Create Output Field] をクリックし、[Column] 名を入力して、[Type] を選択します。行の構成後、image アイコンをクリックして保存します。

    マッピング

    アップストリーム入力およびターゲットテーブルのフィールドに基づいて、フィールドを手動でマップします。[クイックマッピング]には、[行ベースのマッピング]および[名前ベースのマッピング]が含まれます。

    • [Name-Based Mapping]:名前が同一のフィールドをマッピングします。

    • [Row-Based Mapping]:ソースとターゲットのフィールド名が異なる場合、同じ行位置にあるフィールドをマッピングします。

  9. [Confirm] をクリックして、[PostgreSQL] 出力コンポーネントのプロパティ構成を完了します。