O ClickHouse Managed Postgres é um Postgres de nível empresarial com armazenamento NVMe, oferecendo desempenho até 10x mais rápido para workloads disk-bound em comparação com armazenamento conectado à rede, como o EBS. Este quickstart está dividido em duas partes:Crie duas tabelas de exemplo para eventos e usuários:Agora, insira 1 milhão de eventos e veja a velocidade do NVMe:Insira 1.000 usuários:Consulta com filtragem JSONB e intervalo de datas:Faça join de eventos com usuários:
Clique em Next para ser direcionado ao seletor de tabelas. Aqui, tudo o que você precisa fazer é:Em seguida, crie uma conexão de foreign server para o ClickHouse. Use o driver Substitua Agora importe as tabelas do ClickHouse para um schema do Postgres:Substitua Consulta 2: Engajamento de usuários por país e plataformaEsta consulta realiza junções entre eventos e usuários e calcula métricas de engajamento:Comparação de desempenho:
- Parte 1: Comece a usar o NVMe Postgres e experimente seu desempenho
- Parte 2: Tenha analytics em tempo real integrando com o ClickHouse
- Crie uma instância do Managed Postgres com desempenho proporcionado pelo NVMe
- Carregue 1 milhão de eventos de exemplo e veja a velocidade do NVMe em ação
- Execute consultas e experimente um desempenho com baixa latência
- Replique dados para o ClickHouse para analytics em tempo real
- Consulte o ClickHouse diretamente do Postgres usando
pg_clickhouse
Parte 1: Primeiros passos com NVMe Postgres
Criar um banco de dados
Para criar um novo serviço Managed Postgres, clique no botão New service na lista de serviços do Cloud Console. Em seguida, você poderá selecionar Postgres como o tipo de banco de dados.Insira um nome para sua instância de banco de dados e clique em Create service. Você será direcionado para a página de visão geral.Sua instância do Managed Postgres será provisionada e estará pronta para uso em 3 a 5 minutos.Conecte-se ao seu banco de dados
Na barra lateral à esquerda, você verá um botão Connect. Clique nele para visualizar os detalhes de conexão e as connection strings em múltiplos formatos.Copie a connection string dopsql e conecte-se ao seu banco de dados. Você também pode usar qualquer client compatível com Postgres, como o DBeaver, ou qualquer biblioteca de aplicação.Experimente o desempenho com NVMe
Vamos ver na prática o desempenho proporcionado pelo NVMe. Primeiro, ative a temporização no psql para medir a execução da consulta:Execute consultas nos seus dados
Agora vamos executar algumas consultas para ver com que rapidez o Postgres responde com armazenamento NVMe.Agregue 1 milhão de eventos por tipo:Seu Postgres está prontoNeste ponto, você já tem um banco de dados Postgres totalmente funcional e de alto desempenho, pronto para executar suas cargas de trabalho transacionais.Continue para a Parte 2 para ver como a integração nativa do ClickHouse pode turbinar seu analytics.
Parte 2: Adicione analytics em tempo real com ClickHouse
Enquanto o Postgres se destaca em cargas de trabalho transacionais (OLTP), o ClickHouse foi desenvolvido especificamente para consultas analíticas (OLAP) em grandes conjuntos de dados. Ao integrar os dois, você obtém o melhor dos dois mundos:- Postgres para os dados transacionais da sua aplicação (inserções, atualizações, buscas pontuais)
- ClickHouse para analytics em menos de um segundo em bilhões de linhas
Setup da integração com o ClickHouse
Agora que temos tabelas e dados no Postgres, vamos replicar as tabelas para o ClickHouse para analytics. Começamos clicando em ClickHouse integration na barra lateral. Em seguida, clique em Replicate data in ClickHouse.No formulário a seguir, você pode inserir um nome para sua integração e selecionar uma instância do ClickHouse existente para replicar os dados. Se você ainda não tiver uma instância do ClickHouse, poderá criar uma diretamente neste formulário.ImportanteCertifique-se de que o serviço do ClickHouse selecionado esteja com o status Running antes de prosseguir.
- Selecione um banco de dados do ClickHouse para o qual replicar.
- Expanda o schema public e selecione as tabelas users e events que criamos anteriormente.
- Clique em Replicar dados no ClickHouse.
Consulte o ClickHouse a partir do Postgres
A extensãopg_clickhouse permite consultar dados do ClickHouse diretamente do Postgres usando SQL padrão. Isso significa que sua aplicação pode usar o Postgres como uma camada de consulta unificada para dados transacionais e analíticos. Consulte a documentação completa para mais detalhes.Ative a extensão:http com a porta 8443 para conexões seguras:<clickhouse_cloud_host> pelo hostname do seu ClickHouse e <database_name> pelo banco de dados selecionado durante a configuração da replicação. Você pode encontrar o hostname no seu serviço do ClickHouse clicando em Connect na barra lateral.Agora, mapeamos o usuário do Postgres para as credenciais do serviço ClickHouse:<database_name> pelo mesmo nome do banco de dados que você usou ao criar o servidor.Agora você pode ver todas as tabelas do ClickHouse no seu cliente Postgres:Veja seu analytics em ação
Volte à página de integração. Você verá que a replicação inicial foi concluída. Clique no nome da integração para ver os detalhes.Clique no nome do serviço para abrir o console do ClickHouse e visualizar suas tabelas replicadas.Compare o desempenho do Postgres vs ClickHouse
Agora vamos executar algumas consultas analíticas e comparar o desempenho entre o Postgres e o ClickHouse. Observe que as tabelas replicadas utilizam a convenção de nomenclaturapublic_<table_name>.Consulta 1: Usuários mais ativosEsta consulta encontra os usuários mais ativos com múltiplas agregações:Limpeza
Para excluir os recursos criados neste quickstart:- Primeiro, exclua a integração ClickPipe do serviço ClickHouse
- Em seguida, exclua a instância do Managed Postgres no Cloud Console