Hi, I'm Ask INFA!
What would you like to know?
ASK INFAPreview
Please to access Ask INFA.

目次

Search

  1. はじめに
  2. アプリケーション取り込みとレプリケーション

アプリケーション取り込みとレプリケーション

アプリケーション取り込みとレプリケーション

PostgreSQLターゲットのガイドライン

PostgreSQLターゲットのガイドライン

PostgreSQLターゲットを使用する場合は、次のガイドラインを考慮してください。
  • PostgreSQLターゲットを含むアプリケーション取り込みタスクをデプロイして実行するには、ターゲット接続で必要な特権を持つデータベースユーザーを指定する必要があります。
    ユーザーには、接続で指定されたデータベースに対するCONNECT特権とTEMPORARY特権、およびターゲットプロパティで指定されたターゲットスキーマに対するUSAGE特権とCREATE特権が必要です。
    次のSQL文を使用して、これらの特権をユーザーロールに付与し、そのロールをユーザーに割り当てます。
    CREATE ROLE
    dbmi_role
    ; GRANT CONNECT ON DATABASE
    database
    TO
    dbmi_role
    ; GRANT TEMPORARY ON DATABASE
    database
    TO
    dbmi_role
    ; GRANT CREATE ON SCHEMA
    schema
    TO
    dbmi_role
    ; GRANT USAGE ON SCHEMA
    schema
    TO
    dbmi_role
    ; CREATE USER
    dbmi_user
    with PASSWORD '
    password
    '; GRANT
    dbmi_role
    to
    dbmi_user
    ;
    ジョブの実行時に生成されるターゲットテーブルに対する特権は、ジョブを実行するユーザーに付与されます。
  • PostgreSQLターゲットを使用した
    アプリケーション取り込みとレプリケーション
    の増分ロードジョブでは、ターゲットテーブルスキーマに基づいてLOGテーブルが生成され、いくつかのメタデータカラムが追加されます。LOGテーブルは、変更データがターゲットにフラッシュされる直前に作成されます。受信DMLデータは、ローカルCSVファイルをPostgreSQLドライバのBulk Copy APIに提供することにでLOGテーブルに挿入されます。LOGテーブルの情報に基づいて一連のmerge apply文が生成され、DML操作が実際のターゲットテーブルに適用されます。DMLの変更が適用されると、LOGテーブルは削除されます。
    複数のジョブ、または複数のテーブルを含むジョブを実行している場合、LOGテーブルによって、顧客データベースインスタンスの追加スペースまたはサイズ要件が一時的に急増する可能性があります。LOGテーブルに必要なスペースとサイズは、フラッシュサイクルの一部として受信される行数によって異なります。
  • アプリケーション取り込みとレプリケーション
    の増分ロードジョブがPostgreSQLターゲットにプロパゲートできるソースオブジェクト内のフィールド数は、796フィールドを超えることはできません。ソースオブジェクトに796を超えるフィールドが含まれている場合、ジョブはLOGテーブルの作成中に失敗します。
  • PostgreSQLテーブルの行に挿入されるデータは、インスタンスに設定されたページサイズによって異なります。既定値は8 KBです。行がページサイズを超えると、ジョブは失敗し、
    アプリケーション取り込みとレプリケーション
    に次のエラーが表示されます。
    SQL Error [54000]: ERROR: row is too big: size 9312, maximum size 8160
    このエラーは、データが設定されたページサイズを超え、PostgreSQLがデータを保持できない場合に発生します。
    例:
    • ソーステーブルに500個のINTカラムがある場合、行サイズは2,000バイト(500 * 4バイト)です。行がページサイズ(8,192バイト)内に収まり、正常に挿入されました。
    • ソーステーブルに500個のBIGINTカラムがある場合、行サイズは4,000バイト(500 * 8バイト)です。行がページサイズ内に収まり、正常に挿入されました。
    • ソーステーブルに500個のVARCHAR(255)カラムがある場合、行サイズは9,000バイト(500 * 18バイト)です。行がページサイズに収まらないため、エラーが発生します。
  • PostgreSQLでサポートするソースオブジェクト識別子の最大長は63文字です。PostgreSQLターゲットを持つ
    アプリケーション取り込みとレプリケーション
    タスクのデプロイは、ソーステーブル名またはカラム名の長さが63文字を超えると、検証中に失敗します。
  • アプリケーション取り込みとレプリケーション
    の増分ロードジョブにより、ターゲット上にINFORMATICA_CDC_RECOVERYという名前のリカバリテーブルが生成され、障害後に再開されたジョブが以前に処理されたデータを再度プロパゲートするのを防ぐ内部サービス情報が格納されます。このリカバリテーブルは、ターゲットテーブルと同じスキーマで生成されます。