תפוקה ראש בראש
בבדיקה ש-HotKV Ltd ערכה ל-HotKV, ל-Redis, ל-Valkey ול-Dragonfly על מופע ענן אחד, ל-HotKV הייתה התפוקה החציונית הגבוהה ביותר ב-11 מתוך 12 פקודות. ב-PING נמדד ל-Dragonfly ערך גבוה ב-0.6%, שנמצא בתוך מגבלת מחוללי העומס, ולכן אנו סופרים זאת כתיקו. התוצאות חלות על הגרסאות וההגדרות שנבדקו. ראו את המתודולוגיה להלן.
- אותה מכונהכל שרת רץ על אותו מופע, אחד בכל פעם.
- מחוללי עומס נפרדיםמכונות לקוח ייעודיות יוצרות את העומס, אף פעם לא השרת עצמו.
- אותן הגדרותכל שרת מקבל את אותו מספר תהליכונים וללא כיוונון אחר.
- חציון של 3 הרצותכל פקודה רצה שלוש פעמים. מוצג החציון.
- מגבלות מסומנותתוצאות שנקבעו על ידי הרשת או על ידי מחוללי העומס מסומנות.
- השיטה במלואהכל הגדרה, מגבלה והסתייגות כתובות מתחת לתוצאות.
- מעבד:
- AMD EPYC 9V45 (Turin)
- vCPU:
- 160
- ארכיטקטורה:
- x86_64
- זיכרון RAM:
- 314.8 GB
- רשת:
- 78 Gbps החוצה, 132+ Gbps פנימה
- תהליכונים:
- 160 לכל שרת (Redis 128, המקסימום שלו)
- נמדד:
- 9 באוקטובר 2026
פעולות בשנייה, חציון של 3 הרצות. כל עמודה מותאמת לשרת המהיר ביותר בפקודה הזו.
- התוצאה הגבוהה ביותר בפקודה הזו.
- מוגבל על ידי הרשת: רשת המופע קבעה את התוצאה הזו, ולכן המגבלה של השרת עצמו גבוהה יותר.
- מוגבל על ידי מחולל העומס: מכונות מחוללי העומס רצו מעל 85% CPU, ולכן זו התקרה שלהן ולא של השרת.
- Azure מגבילה תעבורה יוצאת: iperf3 מדד 78 Gbps החוצה ולפחות 132 Gbps פנימה עם שלוש מכונות לקוח. GET ו-MGET שולחים ערכים החוצה. ה-GET של HotKV ניצל 88% מתקרת התעבורה היוצאת, ולכן זהו רף תחתון שנקבע על ידי המופע ולא מגבלת שרת, וה-MGET שלו, ב-83%, קרוב אחריו. הקריאות של Dragonfly ניצלו לכל היותר 44% מהתקרה.
- כתיבות מגיעות פנימה, ולכן תוצאות הכתיבה הן מספרי שרת. הכבדה ביותר, SETNX בכ-106 Gbps, ניצלה כ-80% מהתקרה הנכנסת, ולכן יש להתייחס למספרי הכתיבה של HotKV כאל רף תחתון מתון.
- ב-PING מחוללי העומס הגיעו ל-86% CPU עם 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 בבדיקה שלנו
טענו את אותם embeddings של OpenAI ל-HotKV ול-Redis 8 והרצנו את אותן 1,000 שאילתות על כל אחד, עם 1 עד 100 חיבורי לקוח במקביל, על מכונה אחת. שניהם החזיקו וקטורים בדיוק מלא, עם אותן הגדרות אינדקס.
שאילתות בשנייה באותו ריקול
שני המנועים אחסנו וקטורי float32 בדיוק מלא. לאחר טעינת 999,000 וקטורים תהליך HotKV החזיק 6.77 GB ו-Redis 7.01 GB.
לא נמדדו: מצב הקוונטיזציה ב-8 ביט שהוא ברירת המחדל של Redis, מנוע השאילתות של Redis, מערכי נתונים אחרים וחומרה אחרת. גרסת 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 אחרים, עם אותו קוד לקוח לשניהם.
מערך נתונים: embeddings של dbpedia-entities-openai-1M (OpenAI text-embedding-ada-002, 1,536 ממדים) מאת Kumar Shivendu and Nirant Kasliwal, ברישיון MIT, וכן 1,000 שאילתות שהוחזקו בצד. השיטה המלאה, הסקריפטים והתוצאות הגולמיות. נמדד ב-14 באוקטובר 2026.