Під капотом

Багатопотокова архітектура

HotKV™ виконує і мережевий ввід-вивід, і команди на кожному ядрі, працюючи з єдиним спільним сховищем. Кожен робочий потік читає, розбирає та виконує команди власних з'єднань, тож один екземпляр використовує всю машину, а пропускна здатність зростає разом із кількістю ядер, які ви йому надаєте.

  • 300 базових команд
  • 170+ команд ШІ та enterprise
  • RESP2 / RESP3
  • C++20
  • Linux x86_64 · ARM64
Усі ядра

Справжній паралелізм

Кожен робочий потік виконує команди власних з'єднань одночасно з іншими. Немає єдиного командного потоку, який можна перевантажити, тож пропускна здатність зростає разом із кількістю ядер.

На рівні ключа

Дрібнозерниста паралельність

Простір ключів поділено так, що команди з різними ключами виконуються одночасно й рідко чекають одна на одну.

Без GC

Передбачувана затримка

Рідний рушій на C++ без збирача сміття й без пауз з повною зупинкою. Знімки записуються у фоновому потоці, а не в породженому процесі, тож збереження не подвоює використання пам'яті.

Гарячий шлях

Життя однієї команди

Кожен запит проходить через ті самі чотири етапи, на ядрі, що його отримало.

01

Розбір

Читає запит, зокрема часткове читання. HotKV розуміє RESP2, RESP3 та вбудовані (inline) команди, з перемиканням протоколу через HELLO.

02

Диспетчеризація

Знаходить команду та перевіряє її арність, прапорці й позиції ключів до початку виконання.

03

Виконання

Виконує команду над її ключами. Прострочені ключі видаляються, коли до них звертаються, і фоновим обходом.

04

Відповідь

Надсилає відповідь у версії протоколу, яку узгодив клієнт.

Вбудовано в рушій

Більше ніж кеш

Той самий паралельний рушій надає 300 базових команд, вісім політик витіснення та підсистеми нижче, а також понад 170 команд ШІ та enterprise на ліцензованих планах. Жодних модулів, які треба докручувати.

Збереження даних

Знімки + AOF

Бінарні знімки, що записуються атомарно, та файл лише для додавання з налаштовуваним fsync (always, everysec, no) і ущільненням BGREWRITEAOF.

Скриптинг

Lua 5.4 у пісочниці

EVAL і EVALSHA виконують скрипти атомарно в ізольованому середовищі Lua 5.4 через hotkv.call(), а redis.call() залишено як псевдонім для сумісності. Іменовані бібліотеки функцій постачаються через FUNCTION і FCALL.

Векторний пошук

Індекси HNSW

Команди VSIM виконують наближений пошук найближчих сусідів в індексах HNSW з косинусною відстанню, L2 та внутрішнім добутком, зокрема запити з фільтром за тегами.

Імовірнісні структури

Скетчі та обмеження частоти

HyperLogLog, фільтри Блума, Count-Min Sketch і відстеження Top-K частих елементів, а також серверне обмеження частоти GCRA з керуванням сплесками. Жодної математики на боці клієнта.

Спостережуваність

Нативний Prometheus

Вбудована HTTP-кінцева точка метрик (вимкнена, доки ви не задасте metrics-port) надає кількість викликів і затримку для кожної команди. LATENCY HISTOGRAM та INFO latencystats звітують p50, p99 і p99.9, а HOTKEYS ранжує найчастіше використовувані ключі.

Безпека

ACL + TLS

Контроль доступу для кожного користувача обмежує команди, ключі й канали, паролі зберігаються у вигляді хешів. TLS завершується в самому процесі, для клієнтських з'єднань і для кластерних та реплікаційних зв'язків. On-Premise додає ролі з єдиним входом через LDAP і OpenID Connect.

Задіяйте кожне ядро

Запустіть керований екземпляр у HotKV Cloud або розгорніть HotKV у власному дата-центрі за on-premise ліцензією. Той самий рушій, та сама архітектура, кожне ядро.

300 базових команд170+ команд ШІ та enterpriseRESP2 / RESP3C++20Linux x86_64 · ARM64