Estas configurações estão disponíveis em system.settings e são geradas automaticamente a partir do código-fonte.
insert_quorum
Habilita as gravações com quórum.
- Se
insert_quorum < 2, as gravações com quórum ficam desabilitadas. - Se
insert_quorum >= 2, as gravações com quórum ficam habilitadas. - Se
insert_quorum = 'auto', use o número da maioria (number_of_replicas / 2 + 1) como quórum.
Gravações com quórum
INSERT só é bem-sucedido quando o ClickHouse consegue gravar corretamente os dados em insert_quorum réplicas durante insert_quorum_timeout. Se, por qualquer motivo, o número de réplicas com gravações bem-sucedidas não atingir insert_quorum, a gravação será considerada malsucedida, e o ClickHouse excluirá o bloco inserido de todas as réplicas nas quais os dados já tiverem sido gravados.
Quando insert_quorum_parallel está desabilitado, todas as réplicas no quórum são consistentes, ou seja, contêm dados de todas as consultas INSERT anteriores (a sequência de INSERT é linearizada). Ao ler dados gravados usando insert_quorum, com insert_quorum_parallel desabilitado, você pode ativar a consistência sequencial para consultas SELECT usando select_sequential_consistency.
O ClickHouse gera uma exceção:
- Se o número de réplicas disponíveis no momento da consulta for menor que
insert_quorum. - Quando
insert_quorum_parallelestá desabilitado e é feita uma tentativa de gravar dados enquanto o bloco anterior ainda não foi inserido eminsert_quorumréplicas. Essa situação pode ocorrer se o usuário tentar executar outra consultaINSERTna mesma tabela antes que a anterior cominsert_quorumseja concluída.
Consulte também:
insert_quorum_parallel
Histórico de versões
| Versão | Valor padrão | Comentário |
|---|---|---|
| 21.1 | 1 | Use inserções com quórum em paralelo por padrão. Isso é significativamente mais conveniente do que usar inserções com quórum sequenciais |
Habilita ou desabilita o paralelismo para consultas INSERT com quórum. Se estiver habilitado, consultas INSERT adicionais poderão ser enviadas enquanto as consultas anteriores ainda não tiverem sido concluídas. Se estiver desabilitado, gravações adicionais na mesma tabela serão rejeitadas.
Valores possíveis:
- 0 — Desabilitado.
- 1 — Habilitado.
Veja também:
insert_quorum_timeout
Tempo limite para gravação em um quórum, em milissegundos. Se o timeout expirar e nenhuma gravação tiver sido realizada até então, o ClickHouse gerará uma exceção, e o cliente deverá repetir a consulta para gravar o mesmo bloco na mesma ou em qualquer outra réplica.
Veja também: