Skip to main content

コネクタを追加する

への認証

コネクタを追加したら、必要なプロパティを設定します。 Server: データベースをホストしているサーバーのホスト名またはIP アドレスを入力します。デフォルトのサーバー値はlocalhost です。 は、いくつかの方法で への認証をサポートしています。以下から認証方法を選択し、認証の詳細を含む該当セクションに進みます。

Password

ユーザー資格情報で接続するには、次のプロパティを指定します:
  • Auth Scheme: Password を選択。
  • User: アカウントへの認証に使用するユーザー名を入力。
  • Password: アカウントへの認証に使用するパスワードを入力。

Azure Active Directory

Azure Active Directory で接続するには、次のプロパティを指定します:
  • Auth Scheme: AzureAD を選択。
  • User: アカウントへの認証に使用するユーザー名を入力。
  • Azure Tenant: 接続するMicrosoft Online テナントを入力。テナントを指定しない場合には、 はデフォルトのテナントを使用します。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。

Azure Service Principal

Azure サービスプリンシパルとクライアントシークレットで接続するには、次のプロパティを設定します:
  • Auth Scheme: AzureServicePrincipal を選択。
  • Azure Tenant: 接続するMicrosoft Online テナントを入力。
  • User: アカウントへの認証に使用するユーザー名を入力。
  • OAuth Client Id: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントId を入力。
  • OAuth Client Secret: OAuth 認証サーバーにアプリケーションを登録した際に割り当てられたクライアントシークレットを入力。
  • (オプション)Scope: アプリケーションへのアクセス範囲を指定。
アプリケーションのOAuth クライアントId およびクライアントシークレットを取得するには:
  1. Azure ポータルにログインします。
  2. 左ナビゲーションペインですべてのサービスを選択します。次にアプリの登録を検索し選択します。
  3. 新規登録をクリックします。
  4. アプリケーションの名前を入力して任意のAzure AD ディレクトリ - マルチテナントを選択します。
  5. アプリケーションを作成したら、概要セクションに表示されるアプリケーション(クライアント)ID の値をコピーします。この値をOAuth クライアントId として使用します。
  6. 証明書とシークレットセクションに移動して、アプリケーションの新しいクライアント シークレットを選択します。
  7. 有効期間を指定してクライアントシークレットを保存します。保存するとキーの値が表示されます。
  8. 値は一度しか表示されないので、コピーしておきます。この値をOAuth クライアントシークレットとして使用します。
  9. 認証タブで、必ずアクセストークン(暗黙的なフローに使用) を選択します。

Azure Service Principal Certificate

Azure サービスプリンシパルとクライアント証明書で接続するには、次のプロパティを設定します:
  • Auth Scheme: AzureServicePrincipalCert を選択。
  • User: アカウントへの認証に使用するユーザー名を入力。
  • Azure Tenant: 接続するMicrosoft Online テナントを入力。
  • OAuth JWT Cert: Java web token(JWT)証明書ストアを入力。
  • OAuth JWT Cert Type: JWT 証明書を格納するキーストアの種類を入力。デフォルトの種類はPEMKEY_BLOB です。
  • (オプション)Scope: アプリケーションへのアクセス範囲を指定。
  • (オプション)OAuth JWT Cert Password: OAuth JWT 証明書のパスワードを入力。
  • (オプション)OAuth JWT Cert Subject: OAuth JWT 証明書のサブジェクトを入力。
アプリケーションのOAuth 証明書を取得するには:
  1. Azure ポータルにログインします。
  2. 左ナビゲーションペインですべてのサービスを選択します。次にアプリの登録を検索し選択します。
  3. 新規登録をクリックします。
  4. アプリケーションの名前を入力して任意のAzure AD ディレクトリ - マルチテナントを選択します。
  5. アプリケーションを作成したら、概要セクションに表示されるアプリケーション(クライアント)ID の値をコピーします。この値をOAuth クライアントId として使用します。
  6. 証明書とシークレットセクションに移動して、証明書のアップロードを選択します。次に、ローカルマシンからアップロードする証明書を選択します。
  7. 有効期間を指定してクライアントシークレットを保存します。保存するとキーの値が表示されます。
  8. 値は一度しか表示されないので、コピーしておきます。この値をOAuth クライアントシークレットとして使用します。
  9. 認証タブで、必ずアクセストークン(暗黙的なフローに使用) を選択します。

Azure Password

Azure ユーザー資格情報で接続するには、次のプロパティを指定します:
  • Auth Scheme: AzurePassword を選択。
  • User: アカウントへの認証に使用するユーザー名を入力。
  • Password: アカウントへの接続に使用するパスワードを入力。
  • Azure Tenant: 接続するMicrosoft Online テナントを入力。テナントを指定しない場合には、 はデフォルトのテナントを使用します。

Azure Managed Service Identity

Azure マネージドサービスID(MSI)で接続するには、次のプロパティを指定します:
  • Auth Scheme: AzureMSI を選択。
  • User: アカウントへの認証に使用するユーザー名を入力。

AWS IAM Roles

AWS EC2 Roles

GCP Service Account

GCP サービスアカウントで接続するには、次のプロパティを指定します:
  • Auth Scheme: GCPServiceAccount を選択。
  • OAuth JWT Cert: Java web token(JWT)証明書ストアを入力。
  • OAuth JWT Cert Type: JWT 証明書を格納するキーストアの種類を入力。デフォルトの種類はPEMKEY_BLOB です。
  • (オプション)OAuth JWT Cert Password: OAuth JWT 証明書のパスワードを入力。
  • (オプション)OAuth JWT Cert Subject: アプリケーションが委任されたアクセスを要求するユーザーサブジェクトを入力。

接続を完了する

接続を完了するには:
  1. 以下を設定します:
    • Database: サーバーに接続する際に接続するデフォルトのデータベースの名前を入力。
    • Port: データベースをホストしているサーバーのポート番号を入力。デフォルトのポート値は5432です。
  2. Advanced タブで詳細な接続設定を定義します。(ただし、ほとんどの場合、これらの設定は必要ありません。)
  3. への接続をクリックして アカウントに接続します。
  4. 作成およびテストをクリックして接続を作成します。

論理レプリケーションの設定

は、 で設定された論理レプリケーションを使用して同期先テーブルを差分更新することができます。 は、データベース内のデータ変更を追跡するログ先行書き込み(WAL)の内容を可読形式にするために論理デコードを使用します。これらの変更は によって読み込まれ、同期先へプッシュされます。

の論理レプリケーションを有効化

の論理レプリケーションを有効化するには:
  1. データベースでwal_level=logical パラメータが設定されていることを確認します。postgresql.conf ファイルでこのパラメータを設定できます。
  2. 次のSELECT ステートメントを送信して、 の論理レプリケーションスロットを作成します:
    スロット名cdatasync_replication_slot は、スロット名の例です。任意の名前を代用できます。このスロット名は、 でジョブを作成する際に必要です。このスロットは、 によってのみ使用されることが重要です。なぜなら、スロットからの読み込み時に変更が消費されるからです。
  3. 次のステートメントを送信して、 から接続するユーザーがレプリケーションスロットの読み取り権限を持っていることを確認します:
  4. データソースでジョブを作成します。変更データキャプチャオプションを選択後、レプリケーションスロット名を入力します。

削除の挙動

論理レプリケーションでは、ソーステーブルに主キーが含まれている場合、 は削除されたレコードを追跡できます。ソーステーブルに主キーが含まれていない場合、 は削除されたレコードを取得できません。

差分レプリケーションのサポート

データソースは差分レプリケーションをサポートしています。差分レプリケーションによりワークロードが大幅に軽減され、帯域幅の使用と同期の遅延が最小限に抑えられます。データを差分ごとに移動させることで、遅いAPI や毎日のクオータに対処する際、非常に高い柔軟性を発揮します。 データソースのカラムに基づいて差分チェックカラムを構成する必要があります。差分チェックカラムは、データを同期する際に新規または変更されたレコードを識別するために が使用する、datetime またはinteger ベースのカラムです。したがって、差分レプリケーションを実行するには、 テーブルのdatetime またはinteger ベースのカラムに対して差分チェックを構成する必要があります。 差分レプリケーションの設定方法の詳細は、差分レプリケーションを参照してください。

詳細について