Очереди запросов
В этой теме описывается, как управлять очередями запросов в Selena.
Начиная с версии 1.5.0, Selena поддерживает очереди запросов. При включенных очередях запросов Selena автоматически ставит входящие запросы в очередь, когда достигается пороговое значение параллелизма или лимит ресурсов, тем самым избегая ухудшения производительности из-за перегрузки. Ожидающие запросы находятся в очереди до тех пор, пока не станет доступно достаточно вычислительных ресурсов для начала выполнения. Начиная с версии 1.5.0, 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;
Включение очередей запросов на уровне группы ресурсов
Начиная с версии 1.5.0, Selena поддерживает настройку очередей запросов на уровне группы ресурсов.
Чтобы включить очереди запросов на уровне групп ы ресурсов, вам также необходимо установить enable_group_level_query_queue в дополнение к упомянутым выше глобальным переменным сессии.
SET GLOBAL enable_group_level_query_queue = true;