# PostgreSQL

このセクションでは、データ タスクで PostgreSQL ソースを設定する方法について説明します。データ タスクを開始する前に、[前提条件](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/PostgreSQL/prereq-postgresql-source-dmgateway.htm) を満たしていることを確認し、[制限と考慮事項](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/PostgreSQL/postgresql-source-limitations.htm) を設定して、[必要な権限](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Global_Common/Content/SharedReplicateHDD/PostgreSQL-Source/security_req_postgresql.htm) をよく理解しておいてください。

次のいずれかのデータベースからデータをランディングする場合、PostgreSQL への接続を構成する必要があります。

* オンプレミス:

  * PostgreSQL

    情報メモPostgreSQL オンプレミスソースは、Azure Database for PostgreSQL - Flexible Server からの 移動 もサポートします。

* クラウドベース:

  * Amazon Aurora

  * Amazon RDS for PostgreSQL

  * Microsoft Azure Database for PostgreSQL

    情報メモMicrosoft Azure Database for PostgreSQL は、Microsoft によるサポートが終了しました。これに伴い、Data Movement gateway バージョン 2025.5.22 以降では、データソースとしての Microsoft Azure Database for PostgreSQL のサポートも廃止されました。

  * Google Cloud SQL for PostgreSQL: Data Movement gateway 2022.11.42 以降が必要です

  * Google Cloud AlloyDB for PostgreSQL: Data Movement gateway 2023.5.10 以降が必要です

## 接続プロパティの設定

このセクションでは、使用可能な接続プロパティについて説明します。特に指定がない限り、すべてのプロパティが必要です。

コネクタを開くには、次の手順を実行します。

1. [接続] で、[接続を作成] をクリックします。

2. PostgreSQL ソース コネクタを選択し、次の設定を指定します。

### データ ソース

* データ ゲートウェイ

  ユース ケースに応じて Data Movement gateway を選択します。

  情報メモ

  Qlik Talend Cloud スターター サブスクリプションでは Data Movement gateway をサポートしていないため、この項目は使用できません。別のサブスクリプション ティアを利用しており、Data Movement gateway を使用しない場合は、 [None] (なし) を選択します。

  Data Movement gateway の利点とそれを必要とするユース ケースの詳細については、「[Qlik データ ゲートウェイ - データ移動](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Gateways/replication-gateway.htm)」を参照してください。

* クラウド プロバイダー: PostgreSQL データベースがクラウドにある場合は、次のプロバイダーを選択します。

  * なし (PostgreSQL データベースがオンプレミスの場合に選択します)

  * Amazon Aurora

  * Amazon RDS

  * Microsoft Azure

  * Google Cloud - Data Movement gateway 2022.11.42 以降が必要です。

* サーバー: PostgreSQL データベースがインストールされているコンピューターのホスト名または IP アドレスです

* ポート: Data Movement gateway が PostgreSQL データベースにアクセスするときに使用するポートです。デフォルトは、5432 です。

### アカウントのプロパティ

* [User Name] (ユーザー名)と[Password] (パスワード)

  PostgreSQL データベースへのアクセスを承認されたユーザーのユーザー名とパスワードです。

* SSH トンネル

  情報メモ

  * このオプションは、[データ ゲートウェイ] が [なし] に設定されている場合にのみ使用できます。

  * このオプションを使用するには、まず少なくとも 1 つの SSH トンネル コネクタを定義する必要があります。詳細については、「[SSH tunnel](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/SourcesConnections/SSH-tunnel.htm)」を参照してください。

  SSH トンネル経由でデータ ソースに接続する場合はこれを選択し、[SSH 接続] ドロップダウン リストから SSH トンネル コネクタを選択します。

### データベースのプロパティ

データベース名: データベースを指定するには 2 つの方法があります。

* 方法 1 - リストから選択: [Load databases] (データベースをロード) をクリックし、データベースを選択します。
* 方法 2 - 手動: [Enter database name manually] (データベース名を手動で入力) を選択し、データベース名を入力します。

### SSL オプション

SSL を使用してデータ ソースに接続するように を構成できます。

* SSL モード: 次のうち 1 つを選択します:
  * None - 姓とパスワードのみで接続します。
  * Preferred - サーバーが暗号化された接続をサポートしている場合は暗号化された接続を確立し、暗号化された接続を確立できない場合は暗号化されていない接続にフォールバックします。
  * Required - サーバーが暗号化された接続をサポートしている場合、暗号化された接続を確立します。暗号化された接続を確立できない場合、接続の試行は失敗します。
  * Verify CA - Required に似ていますが、構成された CA 証明書に対してサーバー認証局 (CA) 証明書も検証します。一致する有効な CA 証明書が見つからない場合、接続試行は失敗します。
  * Verify Full - Verify CA に似ていますが、クライアント ( など) がサーバーへの接続に使用するホスト名を、サーバーがクライアントに送信する証明書の ID と照合することで、ホスト名の ID 検証も実行します。クライアントは、接続に使用するホスト名がサーバー証明書の共通名の値と一致するかどうかを確認します。不一致がある場合、接続は失敗します。
* 信頼できる証明書: クライアント証明書ファイルを PEM 形式で発行した認証局 (CA)。
* クライアント証明書: サーバーによって要求されたクライアント証明書。
* クライアント証明書キー: PEM 形式のクライアント秘密鍵ファイル。
* CRL: CRL 証明書。このファイルには、認証局によって取り消された証明書が含まれています。サーバー証明書がこのリストに表示されている場合、接続は失敗します。
* SSL 圧縮: データを暗号化する前に圧縮するには、このオプションを選択します。

### CDC のプロパティ

WAL ハートビート - 実行中だが変更をキャプチャしていない CDC タスク (ソース テーブルが非アクティブであるため) は、タスクに割り当てられたスロット内の LSN 位置を占有し続けるため、WAL の切り捨てが防止されます。WAL はすべての PostgreSQL プロセスで使用されるサーバー全体のリソースであるため、変更が長期間キャプチャされない場合、非常に大きくなる可能性があります。

これを防ぐには、WAL ハートビート オプションを有効にします。このオプションを有効にすると、PostgreSQL ソース コネクタ は、ハートビート テーブルに定期的に疑似トランザクション (「ハートビート」と呼ばれる) をコミットしてタスク アクティビティを模倣し、それによってタスク スロットの LSN 位置を進めます。

* ハートビート アーティファクトのスキーマ: WAL ハートビート テーブル (`attrep_wal_heartbeat`) が作成されるスキーマです。既定値は「パブリック」です。
* ハートビートの頻度 (分): トランザクションをハートビート テーブルにコミットする頻度です。

### DDL プロパティ

情報メモこれらのオプションは、クラウド ストレージ ターゲットへのレプリケートではサポートされません。

* DDL イベントのキャプチャ: このオプションを選択すると、次の操作が実行されます。
  * DDL イベントのキャプチャを容易にするために、Data Movement gateway はタスクの開始時に PostgreSQL データベースにトリガーとその他の運用アーティファクトを作成します。以下の「データベースからのソース アーティファクトの削除」で説明されているように、後でこれらのアーティファクトを削除できます。
  * ストリームされた DDL イベントがキャプチャされます。
* スキーマに DDL アーティファクトを作成: 運用 DDL データベース アーティファクトが作成されるスキーマ。既定値は「パブリック」です。

#### ソース データベースからのアーティファクトの削除

DDL をキャプチャするために、Data Movement gateway はタスク開始時に PostgreSQL データベースにさまざまなアーティファクトを作成します。将来のある時点でタスクを削除する場合は、これらのアーティファクトを削除できます。

アーティファクトを削除するには、次のステートメントを実行します (以下の順序を参照) 。ここで、`public` はアーティファクトが作成された既定のスキーマです。

* drop event trigger attrep\_intercept\_ddl

  情報メモ`event` `trigger` は特定のスキーマに属しません。

* drop function public.attrep\_intercept\_ddl()

* drop table public.attrep\_ddl\_audit

* drop schema public

* drop table schema.attrep\_wal\_heartbeat

  ここで、schema はコネクタ設定で指定されたハートビート アーティファクトのスキーマです。

警告メモ

スキーマをドロップする場合は、細心の注意を払う必要があります。運用スキーマ、特に `public` は絶対にドロップしないでください。

### 内部プロパティ

内部プロパティは、特殊なユース ケース向けであるため、ダイアログで公開されません。Qlik サポートによって指示があった場合にのみ使用する必要があります。

項目右側にある the 新規作成 icon と the キャンセル icon ボタンを使用して、必要に応じてプロパティを追加したり削除したりします。

### その他

BOOLEAN データ型を STRING(5) ではなく BOOLEAN にマッピングします。BOOLEAN 列を、デフォルトの STRING (5) ではなく、Qlik Cloud の BOOLEAN データ型にマッピングする場合は、このオプションを選択します。

### 名前

ソース接続の表示名です。