什么是最有价值的 Java 对象数据库?

发布于 2024-10-09 21:58:29 字数 1539 浏览 2 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

千纸鹤 2024-10-16 21:58:29

我只能回答db4o。我对您提到的其他数据库没有足够的经验。

db4o 的另一个优势是拥有一个可以提供帮助和共享知识的社区。

您对数据库有特定的用例场景吗?我认为您应该选择最适合您的应用程序的数据库。

I can only answer for db4o. I don't have enough experience with the other databases you've named.

  • Ease of use: I think that db4o is very easy to use in many scenarios. You add the db4o jar to your project, open the database and start storing and querying objects.
  • Efficient memory usage: Yes, db4o can do that. It supports transparent activation. In that mode db4o loads only objects which you are actually using.
  • Automatically change objects when manipulated: Is also supported.
  • Native querying: Yes db4o supports that. Native queries are great and powerful. However in practice complex native queries often cannot be optimized and run slow. In such cases you have to fall back to less elegant SODA queries.
  • It's free under a GPL licence.

Another advantage of db4o that has a community which can help and share knowledge.

Do you have a particular use case scenario for the database? I think that you should pick the database which fits you're application the best.

﹉夏雨初晴づ 2024-10-16 21:58:29

我最近使用了HyperGraphDB,它可以满足您的所有要求。它给我留下了深刻的印象:“HyperGraphDB 是一种通用的开源数据存储机制,基于强大的知识管理形式主义(称为有向超图)。虽然持久内存模型主要为知识管理、人工智能和语义 Web 项目设计,但它也可以用作各种规模的 Java 项目的嵌入式面向对象数据库或图形数据库或(非 SQL)关系数据库。”

I have recently used HyperGraphDB, which satisfies all your requirements. I am pretty impressed with it: "HyperGraphDB is a general purpose, open-source data storage mechanism based on a powerful knowledge management formalism known as directed hypergraphs. While a persistent memory model designed mostly for knowledge management, AI and semantic web projects, it can also be used as an embedded object-oriented database for Java projects of all sizes. Or a graph database. Or a (non-SQL) relational database."

余生一个溪 2024-10-16 21:58:29

看看 Redis:

http://redis.io/clients

它有 Java 客户端,从个人经验来看,Java对象映射到基于键值的数据库比关系数据库更好,但YMMV取决于您的使用模式和数据类型。

注意:它可能无法满足您的上述所有要求,但您可能可以相当轻松地自己添加此类功能。

更新: https://github.com/xetorthio/johm

Take a look at Redis:

http://redis.io/clients

It has Java clients and from personal experience, Java objects map better to Key-Value based databases than Relational DBs but YMMV depending on your usage patterns and types of data.

Note: It may not cover all of your requirements above, but you could probably add such functionality yourself fairly easily.

Update: https://github.com/xetorthio/johm

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文