嵌入式Java键值存储

时间:2013-03-04 09:30:32

标签: java nosql key-value-store

我正在寻找在我的应用程序中使用的持久键值存储。具体做法是:

  1. 必须嵌入到Java应用程序中。纯Java解决方案将是最好的。
  2. 数据必须保留在磁盘上,不能在内存中存储。内存占用量大小很重要,键值映射的总体大小可能非常大。理想情况下,我希望在存储上实现某种LRU缓存。
  3. 两个键&值是字符串(不需要支持Java对象序列化等)。
  4. 并发读/写非常重要。
  5. 在这种情况下,最好的选择是什么?

4 个答案:

答案 0 :(得分:5)

OrientDBSO info page)似乎符合要求。

文档偶尔有点缺乏,但我相信它符合您列出的标准。

答案 1 :(得分:3)

我不知道这是不是最好,但Hazelcast有这些选择。您可以使用磁盘上的备份将数据存储在内存中。在淡褐色中有一个example

答案 2 :(得分:3)

当我们必须在必须支持大数据时替换普通的HashMap时,我使用了Voldemort。表现真的很棒。

  

value = store.get(key)

     

store.put(键,值)

     

store.delete(键)

在下一个尝试一个键值存储的机会中,我很可能会尝试Redis

答案 3 :(得分:2)

我会使用SQLite(SQLite)。它是一个像文件存储这样的关系数据库,它允许您存储键值和您可能需要的任何其他内容。它的占地面积非常小而且非常快。

由于所有这些原因,它在Android应用程序中非常常用。