remote_servers) de um cluster sem criar uma tabela Distributed. Apenas uma réplica de cada shard é consultada.
Função clusterAllReplicas — igual a cluster, mas consulta todas as réplicas. Cada réplica em um cluster é usada como um shard/conexão independente.
Todos os clusters disponíveis estão listados na tabela system.clusters.
Sintaxe
Argumentos
| Argumentos | Tipo |
|---|---|
cluster_name | Nome de um cluster usado para montar um conjunto de endereços e parâmetros de conexão para servidores remotos e locais; defina default se não for especificado. |
db.table ou db, table | Nome de um banco de dados e de uma tabela. |
sharding_key | Uma chave de sharding. Opcional. Deve ser especificada se o cluster tiver mais de um shard. |
Valor retornado
Usando macros
cluster_name pode conter macros — substituições entre {}. O valor da substituição é obtido na seção macros do arquivo de configuração do servidor.
Exemplo:
Uso e recomendações
cluster e clusterAllReplicas é menos eficiente do que criar uma tabela Distributed, porque, nesse caso, a conexão com o servidor é restabelecida a cada requisição. Ao processar um grande número de consultas, sempre crie a tabela Distributed com antecedência e não use as funções de tabela cluster e clusterAllReplicas.
As funções de tabela cluster e clusterAllReplicas podem ser úteis nos seguintes casos:
- Acessar um cluster específico para comparação de dados, depuração e testes.
- Executar consultas em vários clusters e réplicas do ClickHouse para fins de pesquisa.
- Requisições distribuídas pouco frequentes feitas manualmente.
host, port, user, password, compression e secure, são obtidas da seção de configuração <remote_servers>. Veja mais detalhes em Distributed engine.