Пропускна здатність віч-на-віч
У тесті HotKV Ltd з HotKV, Redis, Valkey і Dragonfly на одному хмарному екземплярі HotKV показав найвищу медіанну пропускну здатність за 11 із 12 команд. На PING Dragonfly виміряв на 0,6% більше, що лежить у межах можливостей генераторів навантаження, тому ми вважаємо це нічиєю. Ці результати стосуються протестованих збірок і налаштувань. Дивіться методологію нижче.
- Та сама машинаКожен сервер працює на тому самому екземплярі, по одному за раз.
- Окремі генератори навантаженняНавантаження створюють виділені клієнтські машини, ніколи не сам сервер.
- Однакові налаштуванняКожен сервер отримує однакову кількість потоків і жодного іншого налаштування.
- Медіана з 3 запусківКожна команда виконується тричі. Показано медіану.
- Межі позначеноРезультати, обмежені мережею чи генераторами навантаження, позначено.
- Метод повністюКожне налаштування, межа й застереження виписані під результатами.
- ЦП:
- AMD EPYC 9V45 (Turin)
- vCPU:
- 160
- Архітектура:
- x86_64
- ОЗП:
- 314,8 GB
- Мережа:
- 78 Гбіт/с назовні, 132+ Гбіт/с досередини
- Потоки:
- 160 на сервер (Redis 128, його максимум)
- Виміряно:
- 9 жовтня 2026 р.
Операцій за секунду, медіана з 3 запусків. Кожну смугу масштабовано до найшвидшого сервера за цією командою.
- Найвищий результат за цією командою.
- Обмежено мережею: результат визначила мережа екземпляра, тож власна межа сервера вища.
- Обмежено генератором навантаження: машини-генератори навантаження працювали вище 85% ЦП, тож це їхня межа, а не сервера.
- Azure обмежує вихідний трафік: iperf3 виміряв 78 Гбіт/с назовні та щонайменше 132 Гбіт/с досередини з трьома клієнтськими машинами. GET і MGET надсилають значення назовні. GET у HotKV використав 88% вихідного обмеження, тож це нижня межа, задана екземпляром, а не межа сервера, а його MGET, з 83%, лише трохи позаду. Читання Dragonfly використали щонайбільше 44% обмеження.
- Записи надходять досередини, тому результати записів є числами сервера. Найважчий, SETNX приблизно зі 106 Гбіт/с, використав близько 80% вхідної межі, тож сприймайте показники записів HotKV як помірні нижні межі.
- На PING генератори навантаження досягли 86% ЦП з HotKV і 82% з Dragonfly. Різниця в 0,6% між ними лежить у цій межі, тож PING є нічиєю.
Точні числа для Azure D160alds_v7
| Команда | HotKV | Redis | Valkey | Dragonfly | HotKV проти Redis | HotKV проти Valkey | HotKV проти Dragonfly |
|---|---|---|---|---|---|---|---|
| SET | Найвищий: 50,480,621 | 3,409,794 | 2,882,486 | 15,042,258 | 14.80x | 17.51x | 3.36x |
| GET | Найвищий: 36,643,656(Обмежено мережею) | 1,132,934 | 1,631,573 | 13,446,228 | 32.34x | 22.46x | 2.73x |
| MGET | Найвищий: 4,617,382 | 277,956 | 536,872 | 2,348,137 | 16.61x | 8.60x | 1.97x |
| SETNX | Найвищий: 55,333,360 | 1,397,967 | 1,860,919 | 14,442,422 | 39.58x | 29.73x | 3.83x |
| APPEND | Найвищий: 25,050,648 | 1,530,680 | 1,290,421 | 8,858,165 | 16.37x | 19.41x | 2.83x |
| INCR | Найвищий: 90,783,545 | 2,104,069 | 1,918,073 | 20,603,259 | 43.15x | 47.33x | 4.41x |
| LPUSH | Найвищий: 31,617,779 | 1,247,914 | 842,106 | 10,579,641 | 25.34x | 37.55x | 2.99x |
| RPUSH | Найвищий: 43,776,706 | 628,324 | 878,476 | 11,014,977 | 69.67x | 49.83x | 3.97x |
| SADD | Найвищий: 50,626,647 | 2,053,737 | 894,438 | 12,044,417 | 24.65x | 56.60x | 4.20x |
| HSET | Найвищий: 28,997,514 | 536,527 | 781,768 | 9,797,534 | 54.05x | 37.09x | 2.96x |
| MSET | Найвищий: 11,275,369 | 378,641 | 464,801 | 2,941,342 | 29.78x | 24.26x | 3.83x |
| PING | 125,232,520(Обмежено генератором навантаження) | 3,235,600 | 3,480,446 | Найвищий: 126,033,542 | 38.70x | 35.98x | 0.99x |
Швидше за векторні набори Redis 8 у нашому тесті
Ми завантажили однакові ембединги OpenAI в HotKV і Redis 8 і виконали ті самі 1 000 запитів до кожного, з 1-100 одночасними клієнтськими з'єднаннями, на одній машині. Обидва зберігали вектори повної точності з однаковими налаштуваннями індексу.
Запитів за секунду за однакової повноти
Обидва рушії зберігали вектори float32 повної точності. Після завантаження 999 000 векторів процес HotKV займав 6,77 ГБ, а Redis 7,01 ГБ.
Не вимірювано: типовий 8-бітний квантований режим Redis, Redis Query Engine, інші набори даних та інше обладнання. Збірка HotKV є збіркою розробки, яку не було випущено. Redis завантажували, закріпивши за чотирма vCPU, а шукали по перезавантаженому індексу (див. статтю).
Повні числа: 999 000 векторів, 50 клієнтів
| ef | Повнота HotKV | Повнота Redis | Запитів/с HotKV | Запитів/с Redis | Співвідношення |
|---|---|---|---|---|---|
| 40 | 0,940 | 0,923 | 63 897 | 8 061 | 7,9x |
| 80 | 0,970 | 0,962 | 37 508 | 6 825 | 5,5x |
| 150 | 0,987 | 0,980 | 21 912 | 5 241 | 4,2x |
| 300 | 0,993 | 0,990 | 12 393 | 3 454 | 3,6x |
| 500 | 0,997 | 0,994 | 7 688 | 2 483 | 3,1x |
Збірка HotKV c8dafd37 і Redis 8.10.2, подібність косинусна, HNSW з M=16 і ef_construction=200 в обох, float32 в обох (Redis NOQUANT). Повнота є recall@10 відносно точних результатів повного перебору. Медіана з 3 запусків на Azure Standard_D160alds_v7, AMD EPYC 9V45, 160 vCPUs. Сервери ділили 128 vCPU, а генератори навантаження працювали на 32 інших, з тим самим клієнтським кодом для обох.
Набір даних: ембединги dbpedia-entities-openai-1M (OpenAI text-embedding-ada-002, 1 536 вимірів) від Kumar Shivendu and Nirant Kasliwal, ліцензія MIT, плюс 1 000 відкладених запитів. Повний метод, скрипти й сирі результати. Виміряно 14 жовтня 2026 р..
Готові взяти HotKV в роботу?
Отримайте ранній доступ і випробуйте HotKV на своєму навантаженні.
Отримати ранній доступ