Skip to content

mambaru/prefixdbd

Repository files navigation

PrefixDB - Префиксное key-value хранилище на базе RocksDB с JSON-RPC интерфейсом

PrefixDB управляет несколькими key-value хранилищами которые определяются префиксами. По сути префикс - это имя каталога файловой системы, где располагаются файлы хранилища для этого префикса. Префикс указывается в каждом запросе. Хранилища префикса создаются автоматически при любом запросе на запись. Настройки для всех префиксов едины и задаются в конфигурации. При необходимости индивидуальных настроек для префикса его можно вынести в другой PrefixDB с нужными настройками. Т.к. каждый префикс располагается в отдельном подкаталоге, то это позволяет легко его переместить на другой сервер при необходимости.

RocksDB - это активно развивающийся проект facebook, изначально форк проекта LevelDB от google, с существенными дополнениями и представляет собой С++ библиотеку. PrefixDB это демон, который предоставляет JSON-RPC интерфейс по TCP/UDP протоколам. Кроме того предоставляет инструменты для управления потоком запросов, настройки очередей и потоков для адаптации к различным профилям нагрузок, а также может обеспечивать репликацию и создание резервных копий.