PostgreSQL パーティション分割テーブルを操作する

Datastream は、PostgreSQL ソース データベースのパーティション テーブルのレプリケーションをサポートしています。テーブルは、単一のルートテーブルまたは個別のパーティション分割テーブルとして複製できます。ルートテーブルとパーティション分割テーブルの両方を複製する場合は、2 つの異なるパブリケーションを持つ 2 つの異なるストリームを作成する必要があります。

単一のルートテーブルとして複製する

ルートテーブルのスキーマを使用してパーティション分割テーブルを複製するには、次の操作を行います。

  1. パブリケーションの publish_via_partition_root パラメータを true に設定して使用するか、新しいパブリケーションを作成します。

    CREATE PUBLICATION PUBLICATION_NAME FOR TABLE
    SCHEMA1.TABLE1, SCHEMA2.TABLE2 WITH (publish_via_partition_root = true);
    

    以下を置き換えます。

    • PUBLICATION_NAME: パブリケーションの名前。
    • SCHEMA(n): テーブルを含むスキーマの名前。
    • TABLE(n): パブリケーションを作成する対象となるテーブルの名前。

    パブリケーションの作成の詳細については、ソース PostgreSQL データベースの構成をご覧ください。

  2. Google Cloud でストリームを作成するときに、[ソースを構成] の手順で次の操作を行います。

    1. [含めるオブジェクト] リストから [特定のスキーマとテーブル] を選択します。
    2. ルートテーブルのみを選択し、パーティション分割テーブルが選択されていないことを確認します。

    ストリームの作成については、ストリームを作成するをご覧ください。

個別のパーティション分割テーブルとして複製する

パーティション分割テーブルを個別のテーブルとして複製するには、次の操作を行います。

  1. パブリケーションの publish_via_partition_root パラメータを false に設定して使用するか、新しいパブリケーションを作成します。false はパラメータのデフォルト設定です。

    パブリケーションの作成の詳細については、ソース PostgreSQL データベースの構成をご覧ください。

  2. Google Cloud でストリームを作成するときに、[ソースを構成] の手順で次の操作を行います。

    1. [含めるオブジェクト] リストから [特定のスキーマとテーブル] を選択します。
    2. パーティション分割テーブルをすべて選択し、ルートテーブルが選択されていないことを確認します。

    ストリームの作成については、ストリームを作成するをご覧ください。

次のステップ