Настройки параметров ClickHouse®-кластера
-
Как создать пользователя для доступа из DataLens с правами только на чтение?
-
Как дать пользователю права на создание и удаление таблиц или БД?
-
Как повысить максимальный объем оперативной памяти для выполнения запроса?
-
Почему в кластере Managed Service for ClickHouse® должно быть три или пять хостов ZooKeeper?
Как создать пользователя для доступа из DataLens с правами только на чтение?
Воспользуйтесь инструкцией, чтобы создать пользователя с правами только на чтение. Если в настройках кластера включена опция Доступ из DataLens, сервис сможет подключаться к кластеру с помощью этого пользователя.
Как дать пользователю права на создание и удаление таблиц или БД?
Включите в настройках кластера опцию Управление пользователями через SQL и выдайте пользователю нужные права с помощью выраженияGRANT
.
Как узнать значение настройки internal_replication?
Информация о настройке internal_replication
недоступна ни в интерфейсах Yandex Cloud, ни в системных таблицах ClickHouse®. Значение настройки по умолчанию — true
.
Как повысить максимальный объем оперативной памяти для выполнения запроса?
Если для выполнения запроса не хватает объема оперативной памяти пользователя, возникает ошибка:
DB::Exception: Memory limit (total) exceeded:
would use 14.10 GiB (attempt to allocate chunk of 4219924 bytes), maximum: 14.10 GiB.
(MEMORY_LIMIT_EXCEEDED), Stack trace (when copying this message, always include the lines below)
Для увеличения максимального объема оперативной памяти используйте параметр Max memory usage.
Если в кластере включена опция Управление пользователями через SQL, параметр Max memory usage
можно задать:
-
Для сессии текущего пользователя с помощью запроса:
SET max_memory_usage = <значение_в_байтах>;
-
Для всех пользователей по умолчанию с помощью создания профиля настроек
.
Почему в кластере Managed Service for ClickHouse® должно быть три или пять хостов ZooKeeper?
ZooKeeper использует алгоритм консенсуса: сервис продолжает функционировать, пока большинство хостов ZooKeeper находятся в рабочем состоянии.
Например, если кластер имеет два хоста ZooKeeper, то при отключении одного из них оставшийся хост не составляет большинство, поэтому сервис становится недоступным. Таким образом, кластер с двумя хостами ZooKeeper не обладает отказоустойчивостью.
Кластер с тремя хостами ZooKeeper уже обладает отказоустойчивостью. При падении или обслуживании одного из них кластер сохраняет работоспособность. Таким образом, три — минимальное рекомендуемое число хостов ZooKeeper в кластере Managed Service for ClickHouse®.
Кластер с четырьмя хостами ZooKeeper не имеет преимуществ перед кластером с тремя хостами: он также способен функционировать при отключении только одного хоста. При отключении двух хостов консенсус не соблюдается и сервис становится недоступным.
Кластер с пятью хостами ZooKeeper уже способен выдерживать отключение двух хостов, так как три из пяти хостов составляют большинство. Поэтому обслуживать такой кластер удобнее, чем кластер с тремя хостами. Даже если один из пяти хостов находится на обслуживании или перезапускается, кластер остается отказоустойчивым, т. е. выдерживает отключение еще одного хоста.
Добавление в кластер более пяти хостов ZooKeeper обычно не оправдано. С ростом числа хостов ZooKeeper увеличиваются затраты времени на их взаимодействие, а скорость сервиса снижается.
Таким образом, в кластере Managed Service for ClickHouse® рекомендуется создавать три или пять хостов ZooKeeper.
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc