Skip to main content
O ClickHouse Managed Postgres é baseado no PostgreSQL padrão e funciona com o ecossistema PostgreSQL existente. Para a maioria das tarefas de desenvolvimento, você pode desenvolver e testar em uma instância local do PostgreSQL em execução no Docker, em vez de uma implantação em nuvem. Essa abordagem oferece um ciclo de feedback rápido, simplifica o onboarding, reduz dependências de infraestrutura compartilhada e permite experimentar com segurança sem impactar sistemas de produção. O objetivo não é replicar a produção exatamente. Em vez disso, crie um ambiente local reproduzível que:
  • Use a mesma versão principal do PostgreSQL da produção.
  • Aplique as mesmas definições de schema da produção.
  • Contenha dados de desenvolvimento representativos.
  • Dê suporte aos fluxos normais de desenvolvimento e teste de aplicações.
Como o ClickHouse Managed Postgres é PostgreSQL padrão, frameworks de migração existentes, ferramentas de gerenciamento de schema e abordagens de seeding de dados funcionam sem modificações.

Exemplo de fluxo de desenvolvimento

Um fluxo típico de desenvolvimento local é o seguinte: O ClickHouse Managed Postgres se integra aos fluxos de trabalho de desenvolvimento com PostgreSQL já existentes. Ao desenvolver em uma instância local do PostgreSQL, as equipes podem iterar rapidamente, manter ambientes reproduzíveis e ter mais confiança de que os aplicativos se comportarão de forma consistente quando implantados no ClickHouse Managed Postgres.

Execute o PostgreSQL localmente com Docker

A forma mais simples de criar um ambiente de desenvolvimento local é executar o PostgreSQL no Docker. Escolha uma versão do PostgreSQL que corresponda à implantação do seu ClickHouse Managed Postgres:
docker-compose.yml
Inicie o PostgreSQL:
Verifique a conexão:
Neste momento, o PostgreSQL está em execução localmente, mas ainda não contém o schema da aplicação nem dados de desenvolvimento.

Aplique o schema da aplicação

Não há uma única abordagem obrigatória para criar o schema em um ambiente local. A maioria das organizações já tem um fluxo de gerenciamento de schema estabelecido, que pode ser reutilizado sem alterações.

Migrações da aplicação

Muitas equipes usam o mesmo framework de migração que roda nos ambientes de homologação e produção — ferramentas como Flyway, Liquibase, migrações do Rails, migrações do Django, migrações do Prisma ou Alembic. Aplicar as migrações localmente garante que a evolução do schema seja testada continuamente como parte normal do desenvolvimento:

Dumps somente de schema do PostgreSQL

Uma exportação somente de schema do PostgreSQL pode reproduzir a estrutura de um banco de dados existente. Isso é útil para onboarding, investigar o comportamento do schema, validar a compatibilidade ou preparar rapidamente ambientes de desenvolvimento. Exporte o schema:
Restaure localmente:

Definições SQL versionadas

Algumas equipes mantêm definições de schema diretamente no controle de versão como arquivos SQL. Elas podem ser aplicadas diretamente a uma instância local do PostgreSQL durante a configuração do ambiente. Independentemente da abordagem, o importante é que a criação do schema seja automatizada, reproduzível e derivada de definições versionadas.

Popule dados representativos de desenvolvimento

Quando o schema existir, popule o banco de dados com dados representativos de desenvolvimento. Para a maioria dos fluxos de trabalho de desenvolvimento, conjuntos de dados sintéticos gerados por scripts de seed são suficientes. Eles são fáceis de recriar, seguros para distribuir e evitam as considerações de conformidade e segurança associadas aos dados de produção. Uma abordagem comum para aplicações SaaS é gerar dados para um pequeno número de tenants de exemplo e criar relações realistas entre usuários, produtos, pedidos e outras entidades de negócios.

Exemplo de schema multi-tenant

O schema a seguir representa uma aplicação SaaS multi-tenant simplificada:

Gerar dados de exemplo

Instale as dependências:
Crie um arquivo chamado seed.py:
seed.py
Execute o script:
O conjunto de dados resultante contém: Esse conjunto de dados é grande o bastante para abranger fluxos de trabalho comuns da aplicação, lógica de isolamento de tenant, consultas de relatórios e verificações de integridade relacional, mantendo-se leve para desenvolvimento e testes locais.

Ambiente de desenvolvimento PostgreSQL + ClickHouse

Os exemplos acima se concentram no desenvolvimento local com PostgreSQL. Se você quiser testar localmente a arquitetura completa entre PostgreSQL e ClickHouse, pode executar a stack open-source PostgreSQL + ClickHouse. Essa stack combina PostgreSQL para cargas de trabalho transacionais, ClickHouse para análises e PeerDB para captura nativa de alterações de dados (CDC). Ela permite desenvolver com PostgreSQL enquanto replica continuamente os dados para o ClickHouse, tornando possível testar análises operacionais, cargas de trabalho de relatórios e pipelines de dados em tempo real diretamente no seu laptop. A stack pode ser iniciada com um único comando e inclui todos os serviços necessários pré-configurados:
A stack é composta por:
  • PostgreSQL
  • ClickHouse
  • PeerDB para CDC do PostgreSQL
  • Serviços de suporte e aplicações de exemplo
Para instruções de configuração, detalhes da arquitetura e um guia passo a passo da stack completa, consulte: Este é um bom próximo passo quando sua aplicação já estiver rodando localmente no PostgreSQL e você quiser validar a sincronização do PostgreSQL com o ClickHouse, analytics em tempo real e o comportamento da aplicação de ponta a ponta.
Última modificação em 14 de agosto de 2026