一尘不染

具有Java客户端的键值数据库

redis

我基本上想将哈希表存储在磁盘上,以便以后查询。我的程序是用Java编写的。哈希表从字符串映射到列表。

有很多键值存储,但是经过大量研究/阅读后,不清楚哪个键值存储最适合我的目的。这对我很重要。

  1. 简单的键值存储,使您可以使用单个键检索值。
  2. 良好的Java客户端,有据可查。
  3. 数据集很小,不需要高级功能。同样,我希望它很简单。

我研究了Redis和MongoDB。两者看起来都很有希望,但对我而言并不理想。任何信息,将不胜感激。


阅读 197

收藏
2020-06-20

共1个答案

一尘不染

在提供任何答案之前,我会先问自己为什么我需要将此哈希表存储在磁盘上,因为根据您的描述数据集很小,因此我认为它可以放入内存。如果只是为了能够在重新启动应用程序后重用此结构,则可以使用任何一种格式来保留它。

其次,您没有提供任何原因使Redis或MongoDB不够理想。根据您(简短)的3个要求,我会说Redis可能是您最好的选择:

  • 好的Java客户
  • 不仅能够存储列表,而且还支持对列表值进行操作(因此数据不是不透明的)

我可能想消除Redis的唯一原因是,您正在寻找严格的ACID特性。如果这是您想要的,那么您可以看看BerkleyDB
JE。它已经存在了一段时间,并且文档很好。

2020-06-20