本地存储的数据库

时间:2012-01-11 00:31:35

标签: java database clojure local

我正在寻找一个可以用来存储多年来某些股票数据的数据库。可能会有几千条记录。我正在用Java和Clojure编写一个应用程序,当需要显示数据时,它将从本地数据库中提取数据。

我想知道是否有人知道有一个好的数据库可以用于此目的吗?我只有在服务器端运行MySQL的经验。

哪个数据库最容易在Clojure和Java中用于本地存储?

谢谢,

亚当

4 个答案:

答案 0 :(得分:13)

JDK 6及更高版本与Java DB捆绑在一起,足以满足您的使用需求。

答案 1 :(得分:4)

对于这种小规模的应用程序,如果你选择其中一个好的embedded Java databases,几乎肯定是最简单的。

我个人的首选可能是:

  • H2 - 可能是整体性能最好的纯Java数据库,如果你相信他们的benchmarks,那么它比MySQL和大多数其他数据库在单一机器环境中运行时快得多。
  • Apache Derby - 良好的全方位,成熟和良好的支持(Oracle在最近的JDK中包含了一个品牌为Java DB的版本)

之后,你应该可以使用标准的JDBC工具集轻松地使用它们,所以与MySQL没什么不同。

如果您正在使用Clojure与一个非常好的DSL连接SQL数据库,那么你一定要看看Korma

答案 2 :(得分:3)

我已经将Apache Derby用于类似的应用程序(尽管主要用Java编写)。他们已经运行了近四年,并且使用它进行了超过60,000次交易而没有出现重大问题。只有偶尔出现的错误。

Derby与JavaDB是同一个数据库,但是Derby更容易跟上版本,因为你可以把它作为一个依赖项,而不是等待下一个JDK rev出现的时候。

此外,IIRC,JavaDB仅包含在JDK中,而不包含在JRE中。

答案 3 :(得分:2)

根据数据和应用程序的性质以及您使用新数据库模式的意愿和/或限制,您可能还需要考虑面向文档的数据库之一MongoDB或CouchDB。如果您的数据和应用程序是面向SQL的,请使用建议的其中一个数据库。