Repolode
OpenAtomFoundation

OpenAtomFoundation/pikiwidb

Хранилище «ключ—значение» с поддержкой протокола Redis и хранением данных в RocksDB для наборов данных, превышающих объём памяти.

Open source альтернатива:Redis

Звёзды
6,136
Форки
1,170
Открытые issues
89
Последний коммит
23 дня назад

Что это?

PikiwiDB (Pika) — система хранения данных «ключ—значение», которая поддерживает протокол Redis и распространённые типы данных Redis: string, hash, list, zset, set, geo, hyperloglog, pubsub, bitmap и stream. Вместо того чтобы хранить все данные в памяти, она сохраняет их в RocksDB и кэширует часто используемые данные, поэтому объём хранилища ограничен размером диска, а не RAM.

Система задумана как прямая замена Redis для нагрузок, при которых затраты на память или ограничения однопоточной обработки становятся проблемой. Развёртывание можно настроить с одним master и репликами с помощью команды slaveof: она поддерживает полную и инкрементальную синхронизацию. Также доступен кластер Codis, который масштабируется добавлением и удалением групп. В репозитории есть инструменты для миграции данных из Redis.

Проект собирается из исходного кода на CentOS, Ubuntu и macOS с использованием C++17; также доступны официальные Docker-образы. Метрики для мониторинга предоставляет сопутствующий exporter.

Ключевые возможности

  • 01Поддерживает протокол Redis и распространённые структуры данных Redis
  • 02Сохраняет данные в RocksDB и кэширует часто используемые данные
  • 03Поддерживает репликацию master-slave с полной и инкрементальной синхронизацией
  • 04Масштабируется в кластере Codis за счёт добавления и удаления групп
  • 05Предоставляет Docker-образы и скрипты сборки для Linux и macOS

Сценарии использования

  • Хранение наборов данных, которые слишком велики, чтобы поместиться в памяти Redis
  • Снижение затрат на оборудование с большим объёмом памяти для крупных нагрузок с данными «ключ—значение»
  • Миграция существующего развёртывания Redis на хранилище с данными на диске без изменения кода приложения

Быстрый старт

  1. 1

    Клонируйте исходный код

    git clone https://github.com/OpenAtomFoundation/pikiwidb.git
  2. 2

    Скомпилируйте с помощью скрипта сборки

    ./build.sh
  3. 3

    Запустите PikiwiDB с примером конфигурации

    ./output/pika -c ./conf/pika.conf

Что важно знать

  • Для сборки из исходного кода требуется gcc/g++ версии 9 или новее с поддержкой C++17, а также cmake версии 3.18 или новее.
  • В README в качестве поддерживаемых платформ указаны только CentOS, Ubuntu и macOS.

Темы

#redis#key-value-store#rocksdb#nosql#database-cluster#persistent-storage#nosql-data-storage#nosql-databases#pikiwidb#redis-interfaces

Частые вопросы

Что такое pikiwidb?
Хранилище «ключ—значение» с поддержкой протокола Redis и хранением данных в RocksDB для наборов данных, превышающих объём памяти. PikiwiDB (Pika) — система хранения данных «ключ—значение», которая поддерживает протокол Redis и распространённые типы данных Redis: string, hash, list, zset, set, geo, hyperloglog, pubsub, bitmap и stream. Вместо того чтобы хранить все данные в памяти, она сохраняет их в RocksDB и кэширует часто используемые данные, поэтому объём хранилища ограничен размером диска, а не RAM.
pikiwidb можно использовать бесплатно? Какая у него лицензия?
pikiwidb распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
pikiwidb всё ещё поддерживается?
Активно поддерживается. Последний коммит в pikiwidb — 16 окт. 2026 г..
Для чего можно использовать pikiwidb?
Хранение наборов данных, которые слишком велики, чтобы поместиться в памяти Redis Снижение затрат на оборудование с большим объёмом памяти для крупных нагрузок с данными «ключ—значение» Миграция существующего развёртывания Redis на хранилище с данными на диске без изменения кода приложения
Как установить pikiwidb?
Клонируйте исходный код: git clone https://github.com/OpenAtomFoundation/pikiwidb.git Скомпилируйте с помощью скрипта сборки: ./build.sh Запустите PikiwiDB с примером конфигурации: ./output/pika -c ./conf/pika.conf
Где скачать pikiwidb?
Исходный код и инструкции по установке — на GitHub: https://github.com/OpenAtomFoundation/pikiwidb

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты