Под капотом

Многопоточная архитектура

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

  • 300 основных команд
  • 170+ команд для ИИ и корпоративных задач
  • RESP2 / RESP3
  • C++20
  • Linux x86_64 · ARM64
Все ядра

Настоящий параллелизм

Каждый рабочий поток выполняет команды своих соединений одновременно с остальными. Нет единственного командного потока, который можно перегрузить, поэтому пропускная способность растёт с числом ядер.

По ключам

Тонкая конкурентность

Пространство ключей разделено так, что команды с разными ключами выполняются одновременно и редко ждут друг друга.

Без GC

Предсказуемая задержка

Нативный движок на C++ без сборщика мусора и пауз «остановки мира». Снимки записываются в фоновом потоке, а не в разветвлённом процессе, поэтому сохранение не удваивает память.

Горячий путь

Жизнь команды

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

01

Разбор

Читает запрос, включая частичное чтение. HotKV понимает RESP2, RESP3 и встроенные команды, а переключение протокола выполняется через HELLO.

02

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

Находит команду и проверяет её арность, флаги и позиции ключей до начала выполнения.

03

Выполнение

Выполняет команду над её ключами. Истёкшие ключи удаляются при обращении к ним и фоновой очисткой.

04

Ответ

Отправляет ответ в версии протокола, согласованной с клиентом.

Встроено в движок

Больше, чем кеш

Тот же параллельный движок предоставляет 300 основных команд, восемь политик вытеснения и перечисленные ниже подсистемы, а на лицензируемых тарифах ещё более 170 команд для ИИ и корпоративных задач. Никаких модулей, которые нужно подключать отдельно.

Сохранение

Снимки + 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+ команд для ИИ и корпоративных задачRESP2 / RESP3C++20Linux x86_64 · ARM64