【问题标题】:which database for java to store data in memory? [closed]java用哪个数据库在内存中存储数据? [关闭]
【发布时间】:2013-06-15 01:40:36
【问题描述】:

我正在寻找一个可以让我将大部分对象存储在内存中的数据库。基本上我想将除了一些很少使用的数据(更改历史等)之外的所有内容都存储在内存中。

我正在寻找:

  • Java 的简单 API,最好是非 ORM
  • ACID 不是必需的(嗯,D 是)
  • 对查询的一些支持,但没有什么花哨的

这个想法是对内存中的模型进行操作,将任何改变模型的“命令”存储在数据库中,定期将模型同步到数据库(就像 prevayler 一样)

哪个数据库符合我的需求? (如果没有更简单的方法,我将使用 postgres 或 H2)。

【问题讨论】:

  • hsqldb 是一个常规的 sql 数据库,不会比 H2/pgsql 提供更多/更简单
  • Sqlite?你试过了吗?
  • 这是另一个 SQL 数据库 - 我需要使用一些 ORM 或编写大量 SQL 查询。我不想那样。我想说:这里是数据库,这些是我的对象,请确保它们已存储,如果我重新启动应用程序,我可以在将来再次加载它们。是的,我使用了 sqlite、hsqldb、oracle、postgres 等。我更喜欢不同的东西
  • mongoDB ? cassandra ?

标签: java sql database orm nosql


【解决方案1】:
【解决方案2】:

您应该使用Terracotta。它通常用于缓存,但它正是您所要求的,除了它的“查询”能力是稀疏的。

更新: 之前的链接是他们的“企业”版,但他们有适合您需求的开源项目Ehcache,他们的企业产品是基于此的。

【讨论】:

  • 它不适用于深层对象层次结构。看起来不太可行,但我会考虑一下
  • 我不确定您在寻找什么,但其他“替代品”可以是 Neo4j,尽管它可能需要太多时间投资和范式改变。
猜你喜欢
  • 1970-01-01
  • 2019-02-09
  • 1970-01-01
  • 2021-02-18
  • 2018-09-14
  • 1970-01-01
  • 1970-01-01
  • 2012-11-26
  • 1970-01-01
相关资源
最近更新 更多