基于Java磁盘的键值存储

时间:2011-12-14 18:19:33

标签: java storage key-value disk-based

是否存在基于文件系统的键值存储的高效Java实现,具有以下功能:

  1. 按唯一ID存储,覆盖和检索字节数组(可由存储分配)
  2. 无内存缓存(读取意味着从文件系统读取,写入意味着立即写入文件系统)
  3. 总数据量可达数TB
  4. 高达数亿的存储对象数
  5. 可管理的文件系统对象数(在文件系统级别移动/复制/删除整个存储)
  6. Berkeley DB JE会吗?

4 个答案:

答案 0 :(得分:3)

只需使用您选择的文件系统格式化专用分区?文件系统将满足要求1-4,并且可以通过移动/复制或删除该分区来满足要求5。

答案 1 :(得分:2)

我建议MapDB,MapDB提供由磁盘存储或堆外内存支持的并发映射,集和队列。轻巧而且可以破解。

答案 2 :(得分:0)

这可能有用。看起来像你的情况。假设,值得一看。

http://xtreemfs.blogspot.com/2008/11/babudb-efficient-key-value-store-for.html

这里还介绍了有关它的详细信息:

http://www.xtreemfs.org/slides/BabuDB-SNAPI.pdf

答案 3 :(得分:0)

也许是HBase,但是你需要运行整个Hadoop堆栈,这可能是过度的! http://hbase.apache.org/