键 - >带二进制附件的值存储

时间:2009-11-10 22:16:40

标签: java key-value datastore

额外要求是附件可以存储为流,因为可能存在必须保存的非常大的二进制文件。视频等。

我看过伏地魔和其他关键值存储,但他们似乎都期待字节数组,这是完全不可能的。

最好使用Java编写,并且可以嵌入。

用例是: 我编写了一个HTTP缓存库,它有多个后端。

我有一个基于内存的(使用hashmap和Byte数组),Derby数据库,带文件附件的持久性hashmap,带文件附件的EHCache。

我希望那里有一些没有使用文件系统的东西,或者如果有的话,它在API中是透明的。

我在数据存储区中存储了包含更多元信息的Headers。但我还需要存储HTTP响应的有效负载。

HTTP响应有效负载可能非常大,这就是我需要使用流式传输的原因。

1 个答案:

答案 0 :(得分:0)

为什么byte[]值无法解决?任何对象图都可以序列化到字节数组中!

你看过sleepycat's Berkeley DB(它是免费的)吗?

编辑 - 看过 jhedding 的评论后,您似乎需要存储太大而无法一次性放入单个JVM的数据。你有没有:

  1. 检查它是否会进入64位JVM?
  2. 尝试使用网络文件系统? (NAS或其他)
相关问题