Разработчик выпустил KiviDB — открытую многопоточную альтернативу Redis и Valkey, написанную на Rust. Проект начался в феврале 2026 года как способ изучить Rust, а также для решения проблем с ростом потребления памяти после снимков и ошибками нехватки памяти в работающих подах, с которыми автор столкнулся при использовании Dragonfly. KiviDB поддерживает протоколы RESP2 и RESP3, поэтому существующие клиенты Redis работают без изменений. Его пространство ключей разделено на шарды между потоками, а лучшая производительность достигается в Linux благодаря io_uring через крейт tokio_uring; на других операционных системах используется запасной вариант на основе Tokio. Основной движок распространяется под лицензией AGPLv3, а автор отмечает, что поддерживается примерно 98–99% команд Redis 8.10.
Автор провёл тесты производительности на двух серверах c7gn.metal в одной группе размещения us-east1 с помощью memtier-benchmark: 10 миллионов ключей по 100 байт каждый на 32 ядрах. При конвейеризации глубиной 16 KiviDB достиг 21,2 миллиона операций GET в секунду, против 9,1 миллиона у Dragonfly 2.0, 2,4 миллиона у Redis 8.10 и 4,7 миллиона у кластера Redis Cluster из 32 шардов. Без конвейеризации Dragonfly был немного быстрее: 3,35 миллиона операций в секунду против 3,07 миллиона у KiviDB. Потребление памяти на ключ составило 177 байт у KiviDB, 134 байта у Dragonfly и 178 байт у Redis. Загрузка векторов в KiviDB была медленнее, чем у альтернатив, а векторные запросы были быстрее при низких значениях ef, но медленнее Dragonfly при высоких значениях ef.
Проект также включает встроенный полнотекстовый и векторный поиск, а автор разработал концепцию управляемого облачного сервиса для AWS, GCP и Azure. Известные пробелы в поддержке команд отслеживаются на GitHub, и разработчиков приглашают присоединиться к проекту. Попробовать его можно одной командой Docker, которая запускает сервер на порту 6380.
Источник: Hacker News · Сводку подготовил HeadlinesBriefing