Pular para o conteúdo principal

Pergunta

Estou gravando dados no ClickHouse Cloud e preciso garantir, ao lê-los, que estou obtendo as informações completas mais recentes.

Resposta

Conectando-se ao mesmo nó

Se você estiver usando o protocolo nativo ou uma sessão para gravar/ler dados, deverá estar conectado à mesma réplica: nesse cenário, você está lendo diretamente do nó em que está gravando e, portanto, sua leitura sempre será consistente.

Falando com um nó aleatório

Se você não puder garantir que está falando com o mesmo nó (por exemplo, acessando o nó por meio de chamadas HTTPS distribuídas por um balanceador de carga), você pode: A)
  1. escrever seus dados
  2. conectar-se a uma nova réplica
  3. executar SYSTEM SYNC REPLICA db.table_name LIGHTWEIGHT
  4. ler os dados mais recentes
Consulte a referência dos comandos SYSTEM OU B) ler a qualquer momento com consistência sequencial
Observe que, ao usar o ClickHouse Cloud e seu SharedMergeTree como mecanismo de tabela padrão, não é necessário usar insert_quorum_parallel — todas as inserções no SharedMergeTree são inserções com quórum (por definição). O uso de SYSTEM SYNC REPLICAS ou select_sequential_consistency aumentará a carga no ClickHouse Keeper e poderá causar uma piora no desempenho, dependendo da carga do serviço. A abordagem recomendada é fazer a escrita/leitura usando a mesma sessão ou o protocolo nativo (conexão persistente).
Última modificação em 19 de junho de 2026