Я ищу эффективный способ хранения множества пар ключ-> значение
на диске для сохранения, желательно с некоторым кэшированием.
Необходимые функции - либо добавить к значению (сцепить)
для данного ключа или чтобы позволить модели быть ключом -> список значений,
оба варианта в порядке. Значение-часть обычно является двоичным документом.
В этом сценарии я не буду слишком много использовать кластеризацию, избыточность и т. Д.
В отношении языка мы используем java, и у нас есть опыт работы с классическими базами данных (Oracle, MySQL и др.).
Я вижу пару очевидных сценариев и хотел бы получить совет о том, что
является самым быстрым с точки зрения магазинов (и поисков) в секунду:
1) Хранить данные в классических db-таблицах стандартными вставками.
2) Сделайте это самостоятельно, используя дерево файловой системы для распространения на множество файлов,
один или несколько на ключ.
3) Использовать хорошо известное хранилище кортежей. Некоторые очевидные кандидаты:
3a) Berkeley db java edition
3b) Современные NoSQL-решения, такие как cassandra и аналогичные
Лично мне нравится Berkely DB JE за мою задачу.
Подводя итог моим вопросам:
Похоже ли Berkely на разумный выбор, учитывая вышесказанное?
Какую скорость можно ожидать для некоторых операций, таких как
обновления (вставка, добавление нового значения для ключа) и
поиск заданного ключа?