Rechtstreekse doorvoer-vergelijking
In de test van HotKV Ltd van HotKV, Redis, Valkey en Dragonfly op één cloudinstantie realiseerde HotKV de hoogste mediane doorvoer op 11 van de 12 commando's. Bij PING mat Dragonfly 0,6% hoger, wat binnen de limiet van de loadgenerators valt, dus we rekenen het als gelijkspel. Deze resultaten gelden voor de geteste builds en instellingen. Zie hieronder de methodologie.
- Dezelfde machineElke server draait op dezelfde instantie, één tegelijk.
- Aparte loadgeneratorsDedicated clientmachines genereren de belasting, nooit de server zelf.
- Dezelfde instellingenElke server krijgt hetzelfde aantal threads en verder geen tuning.
- Mediaan van 3 runsElk commando draait drie keer. De mediaan wordt getoond.
- Limieten gemarkeerdResultaten die door het netwerk of de loadgenerators zijn bepaald, worden gemarkeerd.
- Methode volledigElke instelling, limiet en kanttekening staat onder de resultaten uitgeschreven.
- CPU:
- AMD EPYC 9V45 (Turin)
- vCPU's:
- 160
- Arch:
- x86_64
- RAM:
- 314,8 GB
- Netwerk:
- 78 Gbps uitgaand, 132+ Gbps inkomend
- Threads:
- 160 per server (Redis 128, het maximum)
- Gemeten:
- 9 oktober 2026
Bewerkingen per seconde, mediaan van 3 runs. Elke balk is geschaald naar de snelste server op dat commando.
- Hoogste resultaat op dat commando.
- Netwerkbeperkt: het netwerk van de instantie bepaalde dit resultaat, dus de eigen limiet van de server ligt hoger.
- Beperkt door loadgenerator: de loadgeneratormachines draaiden boven 85% CPU, dus dit is hun plafond, niet dat van de server.
- Azure meet uitgaand verkeer af: iperf3 mat 78 Gbps uitgaand en minstens 132 Gbps inkomend met drie clientmachines. GET en MGET sturen waarden naar buiten. De GET van HotKV gebruikte 88% van de uitgaande limiet, dus dat is een ondergrens die door de instantie is bepaald, geen serverlimiet, en de MGET, met 83%, zit er dicht achter. De reads van Dragonfly gebruikten hooguit 44% van de limiet.
- Schrijfacties komen binnen, dus de schrijfresultaten zijn servercijfers. De zwaarste, SETNX met ongeveer 106 Gbps, gebruikte ongeveer 80% van het inkomende plafond, dus beschouw de schrijfcijfers van HotKV als milde ondergrenzen.
- Bij PING bereikten de loadgenerators 86% CPU met HotKV en 82% met Dragonfly. De 0,6% ertussen valt binnen die limiet, dus PING is een gelijkspel.
Exacte cijfers voor Azure D160alds_v7
| Commando | HotKV | Redis | Valkey | Dragonfly | HotKV vs Redis | HotKV vs Valkey | HotKV vs Dragonfly |
|---|---|---|---|---|---|---|---|
| SET | Hoogste: 50,480,621 | 3,409,794 | 2,882,486 | 15,042,258 | 14.80x | 17.51x | 3.36x |
| GET | Hoogste: 36,643,656(Netwerkbeperkt) | 1,132,934 | 1,631,573 | 13,446,228 | 32.34x | 22.46x | 2.73x |
| MGET | Hoogste: 4,617,382 | 277,956 | 536,872 | 2,348,137 | 16.61x | 8.60x | 1.97x |
| SETNX | Hoogste: 55,333,360 | 1,397,967 | 1,860,919 | 14,442,422 | 39.58x | 29.73x | 3.83x |
| APPEND | Hoogste: 25,050,648 | 1,530,680 | 1,290,421 | 8,858,165 | 16.37x | 19.41x | 2.83x |
| INCR | Hoogste: 90,783,545 | 2,104,069 | 1,918,073 | 20,603,259 | 43.15x | 47.33x | 4.41x |
| LPUSH | Hoogste: 31,617,779 | 1,247,914 | 842,106 | 10,579,641 | 25.34x | 37.55x | 2.99x |
| RPUSH | Hoogste: 43,776,706 | 628,324 | 878,476 | 11,014,977 | 69.67x | 49.83x | 3.97x |
| SADD | Hoogste: 50,626,647 | 2,053,737 | 894,438 | 12,044,417 | 24.65x | 56.60x | 4.20x |
| HSET | Hoogste: 28,997,514 | 536,527 | 781,768 | 9,797,534 | 54.05x | 37.09x | 2.96x |
| MSET | Hoogste: 11,275,369 | 378,641 | 464,801 | 2,941,342 | 29.78x | 24.26x | 3.83x |
| PING | 125,232,520(Beperkt door loadgenerator) | 3,235,600 | 3,480,446 | Hoogste: 126,033,542 | 38.70x | 35.98x | 0.99x |
Sneller dan Redis 8 vector sets in onze test
We laadden dezelfde OpenAI-embeddings in HotKV en Redis 8 en voerden dezelfde 1.000 queries tegen elk uit, met 1 tot 100 gelijktijdige clientverbindingen, op één machine. Beide hielden vectoren met volledige precisie vast, met dezelfde indexinstellingen.
Queries per seconde bij dezelfde recall
Beide engines sloegen float32-vectoren met volledige precisie op. Na het laden van 999.000 vectoren hield het HotKV-proces 6,77 GB vast en Redis 7,01 GB.
Niet gemeten: de standaard 8-bit gekwantiseerde modus van Redis, de Redis Query Engine, andere datasets en andere hardware. De HotKV-build is een ontwikkelbuild die niet is uitgebracht. Redis werd geladen vastgepind op vier vCPU's en doorzocht op een opnieuw geladen index (zie het artikel).
Alle cijfers: 999.000 vectoren, 50 clients
| ef | Recall HotKV | Recall Redis | Queries/s HotKV | Queries/s Redis | Verhouding |
|---|---|---|---|---|---|
| 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-build c8dafd37 en Redis 8.10.2, cosinus-gelijkenis, HNSW met M=16 en ef_construction=200 op beide, float32 op beide (Redis NOQUANT). Recall is recall@10 ten opzichte van exacte brute-force-resultaten. Mediaan van 3 runs op Azure Standard_D160alds_v7, AMD EPYC 9V45, 160 vCPUs. De servers deelden 128 vCPU's en de loadgenerators draaiden op 32 andere, met dezelfde clientcode voor beide.
Dataset: dbpedia-entities-openai-1M-embeddings (OpenAI text-embedding-ada-002, 1.536 dimensies) van Kumar Shivendu and Nirant Kasliwal, gelicentieerd onder MIT, plus 1.000 achtergehouden queries. Volledige methode, scripts en ruwe resultaten. Gemeten op 14 oktober 2026.
Klaar om HotKV aan het werk te zetten?
Krijg early access en ontdek HotKV voor jouw workload.
Early access krijgen