Pular para o conteúdo principal
Este guia apresenta nossas recomendações gerais sobre configurações de hardware, computação, memória e disco para usuários da versão open-source. Se você quiser simplificar sua implantação, recomendamos usar o ClickHouse Cloud, pois ele escala automaticamente e se adapta às suas cargas de trabalho, ao mesmo tempo que minimiza os custos de gerenciamento da infraestrutura. A configuração do seu cluster do ClickHouse depende muito do caso de uso da sua aplicação e dos padrões de carga de trabalho. Ao planejar sua arquitetura, considere os seguintes fatores:
  • Concorrência (solicitações por segundo)
  • Taxa de processamento (linhas processadas por segundo)
  • Volume de dados
  • Política de retenção de dados
  • Custos de hardware
  • Custos de manutenção

Disco

Os tipos de discos que você deve usar com o ClickHouse dependem do volume de dados e dos requisitos de latência e de taxa de transferência.

Otimizando o desempenho

Para maximizar o desempenho, recomendamos anexar diretamente volumes SSD com IOPS provisionadas da AWS ou a oferta equivalente do seu provedor de nuvem, para otimizar o I/O.

Otimizando os custos de armazenamento

Para reduzir os custos, você pode usar volumes EBS SSD de uso geral. Você também pode implementar armazenamento em camadas usando SSDs e HDDs em uma arquitetura hot/warm/cold. Como alternativa, também é possível usar o AWS S3 como armazenamento para separar computação e armazenamento. Consulte nosso guia sobre como usar o ClickHouse de código aberto com separação entre computação e armazenamento aqui. A separação entre computação e armazenamento está disponível por padrão no ClickHouse Cloud.

CPU

Qual CPU devo usar?

O tipo de CPU que você deve usar depende do seu padrão de uso. Em geral, porém, aplicações com muitas consultas simultâneas frequentes, que processam mais dados ou usam UDFs com uso intensivo de computação exigirão mais núcleos de CPU. Aplicações de baixa latência ou voltadas para o cliente Para requisitos de latência na faixa de dezenas de milissegundos, como em cargas de trabalho voltadas para o cliente, recomendamos a linha i3 ou a linha i4i do EC2 da AWS, ou ofertas equivalentes do seu provedor de Cloud, que são otimizadas para E/S. Aplicações de alta concorrência Para cargas de trabalho que precisam otimizar a concorrência (mais de 100 consultas por segundo), recomendamos a série C otimizada para computação da AWS ou a oferta equivalente do seu provedor de Cloud. Caso de uso de armazenamento de dados Para cargas de trabalho de armazenamento de dados e consultas analíticas ad hoc, recomendamos a série do tipo R da AWS ou a oferta equivalente do seu provedor de Cloud, pois é otimizada para memória.

Qual deve ser a utilização de CPU?

Não há uma meta padrão de utilização de CPU para o ClickHouse. Use uma ferramenta como iostat para medir o uso médio de CPU e, com base nisso, ajuste o porte dos seus servidores para lidar com picos inesperados de tráfego. No entanto, para casos de uso analíticos ou de armazenamento de dados com consultas ad hoc, a meta deve ser de 10–20% de utilização de CPU.

Quantos núcleos de CPU devo usar?

A quantidade de CPUs que você deve usar depende da sua carga de trabalho. No entanto, em geral, recomendamos as seguintes proporções entre memória e núcleo de CPU com base no tipo de CPU:
  • Tipo M (casos de uso de propósito geral): proporção de 4 GB:1 entre memória e núcleo de CPU
  • Tipo R (casos de uso de armazenamento de dados): proporção de 8 GB:1 entre memória e núcleo de CPU
  • Tipo C (casos de uso otimizados para computação): proporção de 2 GB:1 entre memória e núcleo de CPU
Por exemplo, ao usar CPUs do tipo M, recomendamos provisionar 100 GB de memória para cada 25 núcleos de CPU. Para determinar a quantidade de memória adequada para sua aplicação, é necessário analisar o perfil de uso de memória. Você pode ler este guia sobre debugging de problemas de memória ou usar o painel de observabilidade integrado para monitorar o ClickHouse.

Memória

Assim como a escolha da CPU, a escolha da proporção entre memória e armazenamento e entre memória e CPU depende do seu caso de uso. O volume necessário de RAM geralmente depende de:
  • Da complexidade das consultas.
  • Da quantidade de dados processados nas consultas.
No entanto, em geral, quanto mais memória você tiver, mais rápido suas consultas serão executadas. Se o seu caso de uso for sensível a custos, quantidades menores de memória também podem funcionar, pois é possível habilitar configurações (max_bytes_before_external_group_by e max_bytes_before_external_sort) para permitir o spill de dados para disco, mas observe que isso pode afetar significativamente o desempenho das consultas.

Qual deve ser a proporção entre memória e armazenamento?

Para volumes baixos de dados, uma proporção de 1:1 entre memória e armazenamento é aceitável, mas a memória total não deve ser inferior a 8GB. Para casos de uso com longos períodos de retenção de dados ou com altos volumes de dados, recomendamos uma proporção de 1:100 a 1:130 entre memória e armazenamento. Por exemplo, 100GB de RAM por réplica se você estiver armazenando 10TB de dados. Para casos de uso com acesso frequente, como cargas de trabalho voltadas ao cliente, recomendamos usar mais memória, com uma proporção de 1:30 a 1:50 entre memória e armazenamento.

Réplicas

Recomendamos ter pelo menos três réplicas por shard (ou duas réplicas com Amazon EBS). Além disso, sugerimos escalar verticalmente todas as réplicas antes de adicionar mais réplicas (escalonamento horizontal). O ClickHouse não faz sharding automaticamente, e refazer o sharding do seu conjunto de dados exigirá recursos computacionais significativos. Portanto, em geral, recomendamos usar o maior servidor disponível para evitar ter que refazer o sharding dos seus dados no futuro. Considere usar o ClickHouse Cloud, que escala automaticamente e permite controlar com facilidade o número de réplicas para o seu caso de uso.

Configurações de exemplo para grandes cargas de trabalho

As configurações do ClickHouse dependem fortemente dos requisitos específicos da sua aplicação. Entre em contato com a equipe de vendas se quiser nossa ajuda para otimizar sua arquitetura em custo e desempenho. Para fornecer orientações (não recomendações), a seguir estão algumas configurações de exemplo de usuários do ClickHouse em produção:

Fortune 500 B2B SaaS

Armazenamento
Volume mensal de novos dados30TB
Armazenamento total (comprimido)540TB
Retenção de dados18 meses
Disco por nó25TB
CPU
Concorrência200+ consultas simultâneas
Número de réplicas (incluindo o par de HA)44
vCPU por nó62
Total de vCPU2700
Memória
RAM total11TB
RAM por réplica256GB
Relação RAM:vCPU4 GB:1
Relação RAM:disco1:50

Operadora de telecom da Fortune 500 em um caso de uso de logging

Armazenamento
Volume mensal de dados de logs4860TB
Armazenamento total (comprimido)608TB
Retenção de dados30 dias
Disco por nó13TB
CPU
Nº de réplicas (incluindo o par de HA)38
vCPU por nó42
Total de vCPU1600
Memória
RAM total10TB
RAM por réplica256GB
Relação RAM:vCPU6 GB:1
Relação RAM:disco1:60

Leitura adicional

Abaixo estão alguns posts de blog publicados sobre arquiteturas de empresas que usam ClickHouse de código aberto:
Última modificação em 19 de junho de 2026