Очереди запросов
В этом разделе описывается, как управлять очередями запросов в Selena.
Начиная с версии v1.5.2, Selena поддерживает очереди запросов. При включённых очередях запросов Selena автоматически ставит входящие запросы в очередь, когда достигнут порог параллелизма или лимит ресурсов, тем самым предотвращая ухудшение перегрузки. Ожидающие запросы ждут в очереди, пока не станет доступно достаточно вычислительных ресурсов для начала выполнения. Начиная с версии v1.5.2, Selena поддерживает настройку очередей запросов на уровне группы ресурсов.
Вы можете установить пороги использования CPU, использования памяти и параллелизма запросов для активации очередей запросов.
Дорожная карта:
| Версия | Глобальная очередь запросов | Очередь на уровне группы ресурсов | Коллективное управление параллелизмом | Динамическая корректировка параллелизма |
|---|---|---|---|---|
| v1.5.2 | ✅ | ❌ | ❌ | ❌ |
| v1.5.2 | ✅ | ✅ | ✅ | ✅ |
Включение очередей запросов
Очереди запросов отключены по умолчанию. Вы можете включить глобальные очереди или очереди на уровне группы ресурсов для загрузки INSERT, SELECT-запросов и запросов статистики, установив соответствующие глобальные переменные сессии.
Включение глобальных очередей запросов
- Включить очереди запросов для задач загрузки:
SET GLOBAL enable_query_queue_load = true;
- Включить очереди запросов для SELECT-запросов:
SET GLOBAL enable_query_queue_select = true;
- Включить очереди запросов для запросов статистики:
SET GLOBAL enable_query_queue_statistic = true;
Включение очередей запросов на уровне группы ресурсов
Начиная с версии v1.5.2, Selena поддерживает настройку очередей запросов на уровне группы ресурсов.
Чтобы включить очереди запросов на уровне группы ресурсов, вам также нужно установить enable_group_level_query_queue в дополнение к глобальным переменным сессии, упомянутым выше.
SET GLOBAL enable_group_level_query_queue = true;