QPS моего запроса меньше 100, и мне было интересно, какова максимально возможная пропускная способность для запроса.
Индекс имеет 16 осколков (1 первичная + 1 реплика). Кластер имеет 11 узлов. Каждый узел имеет 32 процессора, память 70G, SSD-накопитель 900G. Один запрос занимает 5-10 мс, если я запускаю его через кибану. Если мы выполняем запрос последовательно, QPS похож на 100.
Профилировщик показывает, что каждый запрос проходит через 16 сегментов, поэтому каждому узлу может потребоваться запросить 2 фрагмента.
Каждый узел имеет 32 ЦП. По умолчанию размер пула потоков поиска равен 3/2 * 32 = 48. Таким образом, 48/2 = 24 такой запрос может выполняться параллельно на узле. Таким образом, QPS с параллельным запросом может быть 4800.
Я могу представить данные с учетом издержек параллелизма или, возможно, некоторая часть запроса не может быть параллельной. Таким образом, реальная QPS должна быть меньше 4800.
Однако мой QPS равен 100. Это похоже на то, что нет никакой параллели вообще ... Это ожидается?