Автоматическая балансировка данных

Автоматическая балансировка данных#

Для обеспечения максимальной производительности ввода-вывода сервисов фрагментов данных в кластере хранилища данных выполняется автоматическая балансировка нагрузки на эти сервисы: каждые 60 секунд горячие фрагменты данных перемещаются с горячих сервисов фрагментов данных на более холодные.

Сервис фрагментов данных считается горячим, если средняя длина его очереди запросов превышает среднюю длину очереди запросов во всем кластере на 40 % или больше. Фрагмент данных считается горячим, если к нему часто обращаются.

Насколько сервис фрагментов данных является горячим, можно оценить с помощью команд vstorage top и vstorage stat. Например:

...
 IO QDEPTH: 0.1 aver, 1.0 max; 1 out of 1 hot CS balanced     46 sec ago
...
 CSID STATUS     SPACE  AVAIL  REPLICAS   UNIQUE IOWAIT IOLAT(ms) QDEPTH HOST      BUILD_VERSION
 1025 active     1007.3 156.8G     7142        0    10%     1/117    0.3 10.31.240.167 6.0.11-10
 1026 active     1007.3 156.8G     7267        0    11%     0/225    0.1 10.31.240.167 6.0.11-10
 1027 active     1007.3 156.8G     7151        0     2%      0/10    0.1 10.31.240.167 6.0.11-10
 1028 active     1007.3 156.8G     7285        0    13%     1/141    1.0 10.31.240.167 6.0.11-10
...

В выводе этих команд колонка QDEPTH содержит среднюю длину очереди запросов для каждого сервиса фрагментов данных за последние 5 секунд, а строка IO QDEPTH содержит среднюю длину очереди запросов и максимальную длину очереди запросов во всем кластере за последние 60 секунд.