> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ClickHouse 連携

> 組み込みの CDC（変更データキャプチャ）機能を使って、Postgres のデータを ClickHouse にレプリケートします

export const Image = ({img, alt, size}) => {
  return <Frame>
      <img src={img} alt={alt} />
    </Frame>;
};

export const galaxyOnClick = eventName => () => {
  try {
    if (typeof window !== "undefined" && window.galaxy && eventName) {
      window.galaxy.track(eventName, {
        interaction: "click"
      });
    }
  } catch (e) {}
};

export const BetaBadge = ({link, galaxyTrack, galaxyEvent}) => {
  if (link) {
    return <a href={link} target="_blank" rel="noopener noreferrer" className="betaBadge" onClick={galaxyTrack && galaxyEvent ? galaxyOnClick(galaxyEvent) : undefined}>
                <Icon />
                <span>Beta</span>
            </a>;
  }
  return <div className="betaBadge">
            <Icon />
            <span>
                Beta feature. 
                <u>
                    <a href="/docs/beta-and-experimental-features#beta-features">
                        Learn more.
                    </a>
                </u>
            </span>
        </div>;
};

すべての Managed Postgres インスタンスには、任意の ClickHouse サービスに対する CDC 機能が標準で組み込まれています。これにより、Postgres インスタンス上のデータの一部または全部を ClickHouse に移行し、Postgres 側で発生したデータの変更を ClickHouse に継続的かつほぼリアルタイムで反映できます。この機能は内部的に [ClickPipes](/ja/integrations/clickpipes/home) によって提供されています。

これを利用するには、Postgres インスタンスのサイドバーで **ClickHouse Integration** をクリックします。

<Image img="https://mintcdn.com/private-7c7dfe99-fix-nav-issues/qT0j4CNmQubVqREl/images/managed-postgres/clickhouse-integration-intro.png?fit=max&auto=format&n=qT0j4CNmQubVqREl&q=85&s=725f49ffaae6f1cc5666e66a8cb2e900" alt="サイドバーのインテグレーションオプションを示す ClickHouse 連携のランディングページ" size="md" border width="2682" height="1274" data-path="images/managed-postgres/clickhouse-integration-intro.png" />

<Note>
  先に進む前に、Postgres サービスに ClickPipes サービスからアクセスできることを確認してください。通常はデフォルトでアクセス可能ですが、IP アクセスを制限している場合は、**ClickHouse service** が配置されているリージョンに応じて、[こちら](/ja/integrations/clickpipes/home#list-of-static-ips) の一覧にある一部の送信元 IP からのアクセスを許可する必要がある場合があります。
</Note>

ClickPipe の設定を開始するには、**Replicate data in ClickHouse** をクリックします。

<Steps>
  <Step>
    ## レプリケーションサービスを設定する

    レプリケーション設定を入力します。

    * **Integration name**: この ClickPipe の名前
    * **ClickHouse service**: 既存の ClickHouse Cloud サービスを選択するか、新しく作成します
    * **Postgres database**: レプリケーション元のソースデータベース
    * **Replication method**: 次のいずれかを選択します。
      * **Initial load + CDC**: 既存データを取り込み、新しい変更があればテーブルを継続的に更新します (推奨)
      * **Initial load only**: 既存データを一回限りでスナップショット取得し、その後の更新は行いません
      * **CDC only**: 初期スナップショットをスキップし、以降の新しい変更のみをキャプチャします

    <Image img="https://mintcdn.com/private-7c7dfe99-fix-nav-issues/qT0j4CNmQubVqREl/images/managed-postgres/replication-service-step.png?fit=max&auto=format&n=qT0j4CNmQubVqREl&q=85&s=dfdb6548307e14cbab3bd99f014ae918" alt="インテグレーション名、宛先サービス、レプリケーション方式のオプションを示すレプリケーションサービス設定" size="md" border width="2076" height="1290" data-path="images/managed-postgres/replication-service-step.png" />

    続行するには **Next** をクリックします。
  </Step>

  <Step>
    ## レプリケートするテーブルを選択する

    宛先データベースを選択し、レプリケートするテーブルを指定します。

    * **Destination database**: 既存の ClickHouse データベースを選択するか、新しく作成します
    * **Prefix default destination table names with schema name**: 名前の競合を避けるため、Postgres スキーマ名をプレフィックスとして追加します
    * **Preserve NULL values from source**: デフォルト値に変換せず、NULL 値を保持します
    * **Remove deleted rows during merges**: [ReplacingMergeTree](/ja/reference/engines/table-engines/mergetree-family/replacingmergetree) テーブルで、バックグラウンドマージ中に削除済みの行を物理的に削除します

    スキーマを展開して、レプリケートする個々のテーブルを選択します。宛先テーブル名やカラム設定をカスタマイズすることもできます。

    <Image img="https://mintcdn.com/private-7c7dfe99-fix-nav-issues/qT0j4CNmQubVqREl/images/managed-postgres/select-tables-step.png?fit=max&auto=format&n=qT0j4CNmQubVqREl&q=85&s=bc98e7efa4ba22f0ee00d452e158daa2" alt="データベース選択、レプリケーションオプション、スキーマごとにグループ化されたテーブルピッカーを示すテーブル選択ステップ" size="md" border width="2454" height="1804" data-path="images/managed-postgres/select-tables-step.png" />

    レプリケーションを開始するには、**Replicate data to ClickHouse** をクリックします。
  </Step>

  <Step>
    ## ClickPipe を監視する

    ClickPipe が開始されると、同じメニューに一覧表示されます。すべてのデータの初期スナップショットには、テーブルのサイズによっては時間がかかる場合があります。

    <Image img="https://mintcdn.com/private-7c7dfe99-fix-nav-issues/qT0j4CNmQubVqREl/images/managed-postgres/integration-running.png?fit=max&auto=format&n=qT0j4CNmQubVqREl&q=85&s=9a94e816b4507d6cc67414342cf27a6a" alt="宛先サービスとステータスを含む Running 状態の ClickPipe を示す ClickHouse 連携の一覧" size="md" border width="2518" height="622" data-path="images/managed-postgres/integration-running.png" />

    インテグレーション名をクリックすると、詳細なステータスの確認、進行状況の監視、エラーの表示、ClickPipe の管理を行えます。ClickPipe が取りうるさまざまな状態については、[Lifecycle of a Postgres ClickPipe](/ja/integrations/clickpipes/postgres/lifecycle) を参照してください。
  </Step>
</Steps>
