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

# WalShadow で ClickHouse に同期する

> PostgreSQL の WAL から直接読み取るネイティブなレプリケーションエンジン WalShadow を使用して、Postgres のデータを ClickHouse にレプリケートします

export const Image = ({img, alt, size = "lg", background}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  const backgroundColor = background === "white" ? "white" : background === "black" ? "rgb(31 31 28)" : undefined;
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} style={{
    backgroundColor
  }} />
      </Frame>
    </div>;
};

export const PrivatePreviewBadge = () => {
  return <div className="privatePreviewBadge">
            <div className="privatePreviewIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M5.33301 6.66667V4.66667V4.66667C5.33301 3.194 6.52701 2 7.99967 2V2C9.47234 2 10.6663 3.194 10.6663 4.66667V4.66667V6.66667" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path d="M8.00033 9.33337V11.3334" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path fillRule="evenodd" clipRule="evenodd" d="M11.333 14H4.66634C3.92967 14 3.33301 13.4033 3.33301 12.6666V7.99996C3.33301 7.26329 3.92967 6.66663 4.66634 6.66663H11.333C12.0697 6.66663 12.6663 7.26329 12.6663 7.99996V12.6666C12.6663 13.4033 12.0697 14 11.333 14Z" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            {'プライベートプレビュー'}
        </div>;
};

<PrivatePreviewBadge />

`WalShadow` は、PostgreSQL の先行書き込みログ (WAL) から直接読み取る、ClickHouse Managed Postgres 向けのネイティブなレプリケーションエンジンです。低レイテンシかつ高スループットのワークロード向けに最適化されており、Postgres から ClickHouse へのレプリケーションラグをサブ秒に抑えます。開発はオープンな形で [ClickHouse/walshadow](https://github.com/ClickHouse/walshadow) にて進められています。

`WalShadow` は、**Sync to ClickHouse** で利用できる2つのレプリケーション方式のうちの1つです。もう一方の [ClickPipes](/ja/cloud/managed-postgres/clickpipes) は、完全マネージド型のデータパイプラインです。レイテンシとレプリケーションのオーバーヘッドを最小限に抑えたい場合は `WalShadow` を選択してください。

お使いのサービスで `WalShadow` が利用可能になると、**概要** ページに **プライベートプレビュー** バナーが表示されます。**Configure WalShadow** をクリックして開始してください。

<Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/overview-banner.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=81dfbd1832e869ec28da2fa33a3c6d9e" alt="Learn more と Configure WalShadow のリンクを含む WalShadow プライベートプレビューバナーが表示された Postgres サービスの概要ページ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/overview-banner.webp" />

<Note>
  作業を進める前に、Postgres サービスが ClickHouse からアクセス可能であることを確認してください。`WalShadow` は宛先の ClickHouse サービスに直接接続するため、データベースとテーブルを作成する権限を持つ ClickHouse ユーザーとパスワードが必要です。
</Note>

レプリケーションを設定するには、Postgres インスタンスのサイドバーで **Sync to ClickHouse** をクリックし、続いて **Replicate data in ClickHouse** をクリックします。

<Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/sync-landing.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=78e1892ef7a31503586a0635e18be6fa" alt="ClickPipes と WalShadow のレプリケーション方式が表示された Sync to ClickHouse のランディングページ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/sync-landing.webp" />

<Steps>
  <Step title="レプリケーションエンジンを選択する" id="select-replication-engine">
    レプリケーションエンジンとして **WalShadow** を選択し、**Next** をクリックします。

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/select-engine.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=f8300818381fe1cbf5ea52562b50f62b" alt="ClickPipes と WalShadow のオプションが表示され、WalShadow が選択されているレプリケーションエンジン選択のステップ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/select-engine.webp" />
  </Step>

  <Step title="レプリケーションサービスを設定する" id="configure-replication-service">
    レプリケーションの設定を入力します:

    * **ClickHouse サービス**: 既存の ClickHouse サービスを選択するか、新規に作成します
    * **Postgres database**: レプリケーション元となるソースデータベースを選択するか、新規に作成します
    * **レプリケーション方式**: 次のいずれかを選択します:
      * **初期ロード + CDC**: 既存データを取り込み、その後もテーブルを新しい変更に追従させます (推奨)
      * **初期ロード only**: 既存データを一回限り取り込み、その後の更新は行いません
      * **CDC only**: 初期取り込みは行わず、以降の新しい変更のみをキャプチャします

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/configure-service.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=94a0c71c28ef3a31e2cfa0daa551ea81" alt="ClickHouse サービス、Postgres database、レプリケーション方式のオプションが表示されたレプリケーションサービス設定のステップ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/configure-service.webp" />

    **Next** をクリックして次に進みます。
  </Step>

  <Step title="レプリケーションするテーブルを選択する" id="select-tables">
    宛先データベースを選択し、レプリケーションするテーブルを指定します:

    * **Destination database**: 既存の ClickHouse データベースを選択するか、新規に作成します
    * **Tables**: 各スキーマを展開して個別のテーブルを選択するか、**Select all tables** を切り替えます。テーブルごとに **Destination table name** をカスタマイズしたり、**Column settings** を調整したりできます。
    * **ClickHouse ユーザー** および **ClickHouse password**: `WalShadow` は宛先の ClickHouse サービスに直接接続するため、移行先データベースおよびテーブルを作成する権限を持つ認証情報が必要です。

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/select-tables.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=29b010e450a6340a932aedcda3fae1b9" alt="スキーマとテーブルの選択、宛先テーブル名、ClickHouse の認証情報が表示されたテーブル選択のステップ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/select-tables.webp" />

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

  <Step title="WalShadow を監視する" id="monitor-walshadow">
    レプリケーションを開始すると、**Sync to ClickHouse** ページに `WalShadow` が表示されます。パイプラインのプロビジョニングと初期ロードの準備が行われている間、ステータスは **Creating** になります。

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/walshadow-creating.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=5b95c778db8d48a093a6a32a9bcca30b" alt="WalShadow が Creating 状態で表示されている Sync to ClickHouse ページ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/walshadow-creating.webp" />

    プロビジョニングが完了すると、ステータスは **Running** に変わります。このページには、レプリケーションのリアルタイムなメトリクスが表示されます:

    * **Status**: パイプラインの現在の状態 (例: `Running`)
    * **Rows synced**: ClickHouse にレプリケーションされた行の総数
    * **Backfills pending**: 初期ロード待ちのテーブル数
    * **Lag**: 未適用の WAL データ量
    * **Lag time**: 宛先が Postgres からどれだけ遅れているか
    * **Uptime**: パイプラインの稼働時間
    * **Last updated**: メトリクスが最後に報告された時刻

    <Image img="https://mintcdn.com/private-7c7dfe99-vortex-format/_zeYYhn8mtbf0rOY/images/managed-postgres/walshadow/walshadow-running.webp?fit=max&auto=format&n=_zeYYhn8mtbf0rOY&q=85&s=e2383f118f630d59f4f3e6de0185b519" alt="同期済み行数、ラグ、稼働時間のメトリクスとともに WalShadow が Running 状態で表示されている Sync to ClickHouse ページ" size="md" border width="3680" height="2392" data-path="images/managed-postgres/walshadow/walshadow-running.webp" />
  </Step>
</Steps>

<h2 id="caveats">
  注意事項
</h2>

`WalShadow` はプライベートプレビュー中のため、以下の点にご注意ください:

* 現時点では、Postgres サービスごとに `WalShadow` は 1 つのみです。
* 操作とより詳細なメトリクスはロードマップに含まれています。
