mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 08:40:50 +00:00
DOCAPI-6421: load_balancing. RU translation, EN review. (#5496)
This commit is contained in:
parent
3c158faf16
commit
23c5e1d7d5
@ -555,9 +555,9 @@ This method is appropriate when you know exactly which replica is preferable.
|
||||
load_balancing = first_or_random
|
||||
```
|
||||
|
||||
This algorithm chooses the first replica in order or a random replica if the first one is unavailable. It is effective in cross-replication topology setups, but it useless in other configurations.
|
||||
This algorithm chooses the first replica in the set or a random replica if the first is unavailable. It's effective in cross-replication topology setups, but useless in other configurations.
|
||||
|
||||
The `first or random` algorithm solves the problem of the `in order` algorithm. The problem is: if one replica goes down, the next one handles twice the usual load while remaining ones handle usual traffic. When using the `first or random` algorithm, the load on replicas is leveled.
|
||||
The `first_or_random` algorithm solves the problem of the `in_order` algorithm. With `in_order`, if one replica goes down, the next one gets a double load while the remaining replicas handle the usual amount of traffic. When using the `first_or_random` algorithm, load is evenly distributed among replicas that are still available.
|
||||
|
||||
## prefer_localhost_replica {#settings-prefer_localhost_replica}
|
||||
|
||||
@ -570,6 +570,9 @@ Possible values:
|
||||
|
||||
Default value: 1.
|
||||
|
||||
!!! warning "Warning"
|
||||
Disable this setting if you use [max_parallel_replicas](#settings-max_parallel_replicas).
|
||||
|
||||
## totals_mode
|
||||
|
||||
How to calculate TOTALS when HAVING is present, as well as when max_rows_to_group_by and group_by_overflow_mode = 'any' are present.
|
||||
@ -580,7 +583,7 @@ See the section "WITH TOTALS modifier".
|
||||
The threshold for `totals_mode = 'auto'`.
|
||||
See the section "WITH TOTALS modifier".
|
||||
|
||||
## max_parallel_replicas
|
||||
## max_parallel_replicas {#settings-max_parallel_replicas}
|
||||
|
||||
The maximum number of replicas for each shard when executing a query.
|
||||
For consistency (to get different parts of the same data split), this option only works when the sampling key is set.
|
||||
|
@ -497,16 +497,31 @@ ClickHouse использует этот параметр при чтении д
|
||||
|
||||
Чем меньше значение, тем чаще данные сбрасываются в таблицу. Установка слишком низкого значения приводит к снижению производительности.
|
||||
|
||||
## load_balancing
|
||||
## load_balancing {#settings-load_balancing}
|
||||
|
||||
На какие реплики (среди живых реплик) предпочитать отправлять запрос (при первой попытке) при распределённой обработке запроса.
|
||||
Задает алгоритм выбора реплик, используемый при обработке распределенных запросов.
|
||||
|
||||
### random (по умолчанию)
|
||||
ClickHouse поддерживает следующие алгоритмы выбора реплик:
|
||||
|
||||
- [Random](#load_balancing-random) (by default)
|
||||
- [Nearest hostname](#load_balancing-nearest_hostname)
|
||||
- [In order](#load_balancing-in_order)
|
||||
- [First or random](#load_balancing-first_or_random)
|
||||
|
||||
### Random (by default) {#load_balancing-random}
|
||||
|
||||
```
|
||||
load_balancing = random
|
||||
```
|
||||
|
||||
Для каждой реплики считается количество ошибок. Запрос отправляется на реплику с минимальным числом ошибок, а если таких несколько, то на случайную из них.
|
||||
Недостатки: не учитывается близость серверов; если на репликах оказались разные данные, то вы будете получать так же разные данные.
|
||||
|
||||
### nearest_hostname
|
||||
### Nearest Hostname {#load_balancing-nearest_hostname}
|
||||
|
||||
```
|
||||
load_balancing = nearest_hostname
|
||||
```
|
||||
|
||||
Для каждой реплики считается количество ошибок. Каждые 5 минут, число ошибок целочисленно делится на 2. Таким образом, обеспечивается расчёт числа ошибок за недавнее время с экспоненциальным сглаживанием. Если есть одна реплика с минимальным числом ошибок (то есть, на других репликах недавно были ошибки) - запрос отправляется на неё. Если есть несколько реплик с одинаковым минимальным числом ошибок, то запрос отправляется на реплику, имя хоста которой в конфигурационном файле минимально отличается от имени хоста сервера (по количеству отличающихся символов на одинаковых позициях, до минимальной длины обеих имён хостов).
|
||||
|
||||
@ -516,11 +531,39 @@ ClickHouse использует этот параметр при чтении д
|
||||
Таким образом, если есть равнозначные реплики, предпочитается ближайшая по имени.
|
||||
Также можно сделать предположение, что при отправке запроса на один и тот же сервер, в случае отсутствия сбоев, распределённый запрос будет идти тоже на одни и те же серверы. То есть, даже если на репликах расположены разные данные, запрос будет возвращать в основном одинаковые результаты.
|
||||
|
||||
### in_order
|
||||
### In Order {#load_balancing-in_order}
|
||||
|
||||
Реплики перебираются в таком порядке, в каком они указаны. Количество ошибок не имеет значения.
|
||||
```
|
||||
load_balancing = in_order
|
||||
```
|
||||
|
||||
Реплики с одинаковым количеством ошибок опрашиваются в порядке, определённом конфигурацией.
|
||||
Этот способ подходит для тех случаев, когда вы точно знаете, какая реплика предпочтительнее.
|
||||
|
||||
### First or Random {#load_balancing-first_or_random}
|
||||
|
||||
```
|
||||
load_balancing = first_or_random
|
||||
```
|
||||
|
||||
Алгоритм выбирает первую реплику или случайную реплику, если первая недоступна. Он эффективен в топологиях с перекрестной репликацей, но бесполезен в других конфигурациях.
|
||||
|
||||
Алгоритм `first or random` решает проблему алгоритма `in order`. При использовании `in order`, если одна реплика перестаёт ответчать, то следующая за ней принимает двойную нагрузку, в то время как все остальные обрабатываю свой обычный трафик. Алгоритм `first or random` равномерно распределяет нагрузку между репликами.
|
||||
|
||||
## prefer_localhost_replica {#settings-prefer_localhost_replica}
|
||||
|
||||
Включает или выключает предпочтительное использование localhost реплики при обработке распределенных запросов.
|
||||
|
||||
Возможные значения:
|
||||
|
||||
- 1 — ClickHouse всегда отправляет запрос на localhost реплику, если она существует.
|
||||
- 0 — ClickHouse использует балансировку, заданную настройкой [load_balancing](#settings-load_balancing).
|
||||
|
||||
Значение по умолчанию: 1.
|
||||
|
||||
!!! warning "Warning"
|
||||
Отключайте эту настройку при использовании [max_parallel_replicas](#settings-max_parallel_replicas).
|
||||
|
||||
## totals_mode
|
||||
|
||||
Каким образом вычислять TOTALS при наличии HAVING, а также при наличии max_rows_to_group_by и group_by_overflow_mode = 'any'.
|
||||
@ -531,7 +574,7 @@ ClickHouse использует этот параметр при чтении д
|
||||
Порог для `totals_mode = 'auto'`.
|
||||
Смотрите раздел "Модификатор WITH TOTALS".
|
||||
|
||||
## max_parallel_replicas
|
||||
## max_parallel_replicas {#settings-max_parallel_replicas}
|
||||
|
||||
Максимальное количество используемых реплик каждого шарда при выполнении запроса.
|
||||
Для консистентности (чтобы получить разные части одного и того же разбиения), эта опция работает только при заданном ключе сэмплирования.
|
||||
|
Loading…
Reference in New Issue
Block a user