Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Guia de configuração da origem AlloyDB Postgres

Versões compatíveis

Para propagar dados da sua instância do AlloyDB para o ClickHouse Cloud usando ClickPipes, sua instância deve estar configurada para replicação lógica. Isso é compatível a partir da versão 14 do AlloyDB.

Habilitar a replicação lógica

Para verificar se a replicação lógica está habilitada na sua instância do AlloyDB, execute a consulta a seguir na instância primária:

SHOW  wal_level;

Se o resultado for logical, a replicação lógica já estará habilitada, e você poderá pular para a próxima etapa. Se o resultado for replica, será necessário definir as flags alloydb.enable_pglogical e alloydb.logical_decoding como on na instância primária.

Para habilitar essas flags:

  1. No Google Cloud Console, acesse a página Clusters do AlloyDB. No menu Actions da sua instância primária, clique em Edit.

    Editar a configuração da instância primária
  2. Role a página para baixo até Advanced configuration options e expanda a seção. Em Flags, clique em Add a database flag.

    Definir as flags allowdb.enable_pglogical e alloydb.logical_decoding como on
  3. Clique em Update instance para salvar as alterações de configuração. É importante observar que essa ação reinicia a instância primária.

  4. Quando o status da instância mudar de Updating para Ready, execute a consulta a seguir na instância primária para verificar se a replicação lógica está habilitada:

    SHOW  wal_level;

    O resultado deve ser logical.

    Verificar se a replicação lógica está habilitada

Crie um usuário do ClickPipes e gerencie as permissões de replicação

Conecte-se à sua instância do AlloyDB como um usuário administrador e execute os seguintes comandos:

  1. Crie um usuário dedicado para o ClickPipes:

    CREATE USER clickpipes_user PASSWORD 'some-password';
  2. Conceda acesso somente leitura no nível de schema ao usuário criado na etapa anterior. O exemplo a seguir mostra as permissões para o schema public. Repita esses comandos para cada schema que contenha tabelas que você deseja replicar:

    GRANT USAGE ON SCHEMA "public" TO clickpipes_user;
    GRANT SELECT ON ALL TABLES IN SCHEMA "public" TO clickpipes_user;
    ALTER DEFAULT PRIVILEGES IN SCHEMA "public" GRANT SELECT ON TABLES TO clickpipes_user;
  3. Conceda privilégios de replicação ao usuário:

    ALTER USER clickpipes_user WITH REPLICATION;
  4. Crie uma publicação com as tabelas que você deseja replicar. Recomendamos fortemente incluir na publicação apenas as tabelas necessárias para evitar sobrecarga de desempenho.

  • Para criar uma publicação para tabelas específicas:

    CREATE PUBLICATION clickpipes FOR TABLE table_to_replicate, table_to_replicate2;
    • Para criar uma publicação para todas as tabelas em um schema específico:

      CREATE PUBLICATION clickpipes FOR TABLES IN SCHEMA "public";

A publicação clickpipes define o conjunto de tabelas cujos eventos de alteração serão transmitidos ao ClickPipes. Recomendamos não usar FOR ALL TABLES, a menos que você pretenda replicar todas as tabelas, pois incluir tabelas desnecessárias aumenta o tráfego de WAL do Postgres para o ClickPipes e reduz a eficiência geral da replicação.

Configure o acesso à rede

Em seguida, escolha como o ClickPipes se conectará à sua instância do AlloyDB.

Para usar conectividade privada a partir de um serviço do ClickHouse Cloud hospedado no GCP, siga o guia do GCP Private Service Connect para configurar um endpoint privado reverso para sua instância do AlloyDB.

O que vem a seguir?

Agora você pode criar seu ClickPipe e começar a fazer a ingestão de dados da sua instância do Postgres para o ClickHouse Cloud. Anote os detalhes da conexão que você usou ao configurar sua instância do Postgres, pois precisará deles durante o processo de criação do ClickPipe.

Navigation