hotkv>COMMAND LIST

Встроено в HotKV™

Встроено, а не пристроено.

HotKV понимает протокол Redis и добавляет собственные возможности. Выберите любую из них ниже и посмотрите анимированный пример её работы с настоящими командами.

протокол
RESP2 + RESP3
нативный код
C++20
серверы Linux
x86_64 + ARM64
модулей для установки
0
Лаборатория возможностей

Посмотрите, как работает каждая возможность

Выберите возможность. Демо вводит настоящие команды HotKV с примерами ответов и показывает, что каждая из них делает внутри движка.

Теги ключей

Помечайте ключи тегами и делайте по ним запросы: TAG.SET, TAG.GET, TAG.MEMBERS, TAG.INTER, TAG.COUNT, TAG.EXISTS, TAG.REM. Без вторичного индекса, без скрипта Lua, без внешнего сервиса.

Ключи получают метки, а одна команда находит все ключи с меткой или сразу с несколькими метками.

Пример сеанса
hotkv> MSET user:1 a user:2 b user:3 c user:4 d
OK
hotkv> TAG.SET user:1 premium eu
(integer) 2
hotkv> TAG.SET user:2 premium us
(integer) 2
hotkv> TAG.SET user:3 eu
(integer) 1
hotkv> TAG.INTER premium eu
1) "user:1"
hotkv> TAG.MEMBERS eu
1) "user:1"
2) "user:3"
hotkv> TAG.COUNT user:1
(integer) 2
Архитектура

Три способа использовать многоядерный сервер

Сервер может выполнять команды в одном главном потоке, разделять данные на шард для каждого потока или позволять всем потокам работать с одним общим хранилищем. HotKV с нуля построен вокруг третьего подхода, поэтому один экземпляр использует каждое ядро.

Один главный поток
ожиданиеT0T1T2T3одно общее хранилищевыполняет командысетевой ввод-вывод (потоки ввода-вывода, если включены)
Модель ввода-вывода
Цикл событий + потоки ввода-вывода для чтения и записи
Масштабирование
Убывающая отдача после насыщения ввода-вывода
Использование нескольких ядер
Команды выполняются в одном потоке; для большего числа ядер нужно несколько экземпляров или кластер
Шард на каждый поток
T0T1T2T3S0S1S2S3шард на каждый потоккоманда с несколькими ключами пересекает потоки
Модель ввода-вывода
io_uring / epoll на каждый поток
Масштабирование
Масштабируется по ядрам; команды с несколькими ключами координируются между потоками
Использование нескольких ядер
Внутреннее шардирование по потокам
HotKV · Общее хранилище, каждый поток
T0T1T2T3одно общее хранилищевыполняет команды
Модель ввода-вывода
Многопоточная, на каждом ядре
Масштабирование
Пропускная способность растёт с числом ядер
Использование нескольких ядер
Один экземпляр использует все ядра

Схема выполнения команд, а не бенчмарк. Измеренные результаты - на странице «Производительность». Производительность

Многопоточность с самого начала

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

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

Нативный движок без сборщика мусора, поэтому нет пауз «остановки мира».

Современный C++20

HotKV написан на C++20 и компилируется в нативный код.

Создан для серверов Linux

Пакеты для Linux на x86_64 и ARM64. Векторный поиск использует векторные инструкции процессора, когда они доступны.

Сравнение возможностей

Как HotKV™ соотносится с Redis, Valkey и Dragonfly по последнему релизу каждого проекта.

ВозможностьHotKVRedisValkeyDragonfly
РазвёртываниеHotKV Cloud или собственные серверыСамостоятельно или Redis CloudСамостоятельно или у облачных провайдеровСамостоятельно или Dragonfly Cloud
ЛицензияКоммерческаяRSALv2 / SSPLv1 / AGPLv3BSD-3-ClauseBSL 1.1
ЯзыкC++20CCC++
Выполнение командМногопоточноеОднопоточное (необязательные потоки ввода-вывода)Однопоточное (потоки ввода-вывода)Многопоточное
ПротоколRESP2 + RESP3RESP2 + RESP3RESP2 + RESP3RESP2 + RESP3
Серверные платформыLinux (x86_64, ARM64)Linux, macOS, BSDLinux, macOS, BSDLinux (x86_64, ARM64)
TLSДаДаДаДа
Сохранение данныхСнимки + AOFRDB + AOFRDB + AOFТолько снимки
Снимки без forkДаНетНетДа
Кеш промптов LLMДаОтдельный сервис (LangCache)НетНет
Семантический кеш ответов LLMДаОтдельный сервис (LangCache)НетНет
Память ИИ-агентовДаОтдельный сервис (Agent Memory)НетНет
Конвейер RAG (разбиение на фрагменты + гибридный поиск)ДаГибридный поиск, без разбиения на фрагментыМодуль, без разбиения на фрагментыВекторный поиск, без разбиения на фрагменты
Учёт токенов и стоимости LLMДаНетНетНет
Векторный поиск по сходствуДаДаМодуль (valkey-search)Да
Гистограммы задержек по командамДаДаДаЧастично (необязательные перцентили)
Обнаружение горячих ключейДаСерверная команда HOTKEYSТолько на стороне клиентаЧастично (выборка)
Встроенная конечная точка PrometheusДаНетНетДа
Сжатие значений в памятиПо выборуНетНетНет
Теги ключейДаНетНетНет
TTL в наносекундахДаНетНетНет

Сравнение с Redis 8.10.2, Valkey 9.1.2 и Dragonfly 2.0.0, последними релизами на сентябрь 2026 года. Redis 8 также включает JSON, временные ряды и вероятностные структуры данных, а Redis предлагает LangCache и Agent Memory как отдельные сервисы. Valkey 9.2, сейчас кандидат в релизы, добавляет отслеживание горячих ключей на стороне сервера и необязательные снимки без fork. В HotKV Cloud возможности для ИИ входят в тарифы Performance и Scale.

Работает с вашим стеком

HotKV™ понимает RESP2 и RESP3, поэтому клиентская библиотека Redis, которой вы уже пользуетесь, подключается к нему. Укажите в ней имя вашего хоста HotKV.

Совместимые инструменты

Стандартные инструменты Redis подключаются без изменений (команды, которые поддерживает HotKV, см. в справочнике команд)

redis-cli
Официальный Redis CLI подключается к HotKV напрямую
redis-benchmark
Стандартный инструмент для бенчмарков
memtier_benchmark
Тестирование задержки и пропускной способности; наши бенчмарки используют его
Prometheus
Встроенная конечная точка /metrics, экспортёр не нужен
Grafana
Дашборды на основе метрик Prometheus
HotKV SDKs
Официальные библиотеки со встроенными командами для ИИ