Всем привет!
Подскажите крутое
key/value хранилище.
Самое главное для моей задачи - скорость при
рандомном чтении, на втором месте скорость при
рандомной записи. Также, ключи разной длины.
Хранилище будет основным, поэтому хранить данные в
RAM нельзя.
Желательно наличие поддержки java.
Из самых подходящих нашел:
1) Leveldb (по 300М записей поиск 1000 записей за 7 сек, долговато в 1 потоке)
2) Bangdb (Ehash)
3) Kyoto (HashDB)
Те, которые с хэшем, у них хэш-таблицы хранятся в файле и затем загружаются в RAM и там постоянно находятся, но размер у них во много раз меньше чем размер данных.
Benchmarks:
leveldb -
https://leveldb.googlecode.com/svn/trunk/doc/bench...
bangdb - 300ГБ и 4ККК еще работает =)
bangdb.com/bangdb_embedded_one_billion.php
kyoto -
fallabs.com/kyotocabinet/kyotoproducts.pdf
Это три лучших, судя по charts. Кто работал с ними, как вам?