Для нескольких проектов, над которыми я работаю, мне нужно постоянное хранилище значений ключей (что-то вроде memcache). В идеале он будет работать как сервер; это должно быть действительно эффективно. Я знаю, что memcachedb существует, но я бы хотел сам написать его, так как будет много пользовательских функций, которые мне нужно будет включить позже. Я, вероятно, напишу это на C ++ (или, возможно, на C или Java, если для этого есть веские основания).
Должен ли я смотреть на реализацию базы данных (B-деревья, индексы и т. Д.) Или это не нужно для такой работы? Что может быть хорошим способом хранения большей части содержимого на диске, но при этом иметь быстрый доступ к нему, используя память для кэширования?
Спасибо.