db4o 和/或 Eloquera 数据库的真实体验

发布于 2024-09-03 20:01:58 字数 348 浏览 11 评论 0 原文

我正在评估两个对象数据库,db4o (http://www.db4o.com) 和 Eloquera Database (< a href="http://eloquera.com" rel="nofollow noreferrer">http://eloquera.com) 用于即将到来的项目。我必须选择一个。我的基本要求是 RAD 的可扩展性、多用户支持和简单的类型演变。

  1. 请分享您的现实世界经验。

  2. 如果两者都有,你能比较一下这两个吗?您更喜欢哪一个?

I am evaluating two object databases, db4o (http://www.db4o.com) and Eloquera Database (http://eloquera.com) for a coming project. I have to choose one. My basic requirement is scalability, multi user support and easy type evolution for RAD.

  1. Please share your real world experience.

  2. If you have both, can you compare these two? Which do you prefer?

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

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

发布评论

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

评论(4

策马西风 2024-09-10 20:01:58

在过去的两年里,我一直在使用 DB4O,现在我正在切换到 Eloquera。
我的理由按顺序为:

  1. 我正在构建一个商业产品,并且 DB4O 上基于版税的许可太高了; DB4O 说我们可以“讨论一下”,但我是一家非常小的开发商店,当有一个非常好的替代方案时,放弃我所做的每笔销售的很大一部分是没有任何意义的。

  2. 我正在使用 Db4oTool.exe 在构建后步骤中修改我的组件,它确实减慢了构建过程。 Eloquera 不需要修改我的程序集。

  3. 我在 DB4O 代码中发现了一个错误,花了好几个月的时间才将其集成到他们的代码库中。我在 Eloquera 中发现了错误,他们在一两天内修复了它们

  4. DB4O 尚未出现在 .NET 4 上(尽管他们最终有了早期测试版)。 DB4O 是唯一阻碍我使用 VS2010(和 .NET 4)的因素。我尝试迁移到 VS2010,但 VS2010 自动将所有单元测试转换为 .NET 4,因此我所有与持久性相关的单元测试立即失败。

  5. DB4O 并不是真正设计为线程安全的。

  6. DB4O 的功能和许多 API 功能显然是从 Java 移植的。

罗伯特

For the last 2 years I've been using DB4O, and I'm now switching to Eloquera.
My reasons, in order:

  1. I'm building a commercial product, and the royalty based licensing on DB4O is WAY to high; DB4O said we could "talk about it", but I'm a very small development shop and giving away a huge chunk of each sale I make just doesn't make any sense when there's a perfectly good alternative.

  2. I'm using the Db4oTool.exe to modify my assmeblies in a post-build step, and it really slows down the build process. Eloquera doesn't need to modify my assemblies.

  3. I found a bug in the DB4O code, and it took many many months before it was integrated into their codebase. I have found bugs in Eloquera and they fixed them in a day or two

  4. DB4O is not yet on .NET 4 (although they finally have an early beta). DB4O is the ONLY thing holding me back from using VS2010 (and .NET 4). I tried migrating to VS2010 but VS2010 automatically converts all unit tests to .NET 4, so all of my persistence related unit tests immediately failed.

  5. DB4O is not really designed to be thread-safe.

  6. DB4O has features and many API features that are obviously ported from Java.

Robert

-小熊_ 2024-09-10 20:01:58

Eloquera ( www.eloquera.com ) 最初是为在 Web 环境中使用而设计和开发的,它被设计为原生 .NET C# 中的应用程序。

Eloquera 不像许多其他数据库那样从 Java 移植。

Eloquera 本身作为架构的一部分支持:

  • 用户同时访问
  • 安全设置
  • 具有真正的 C/S 架构,具有可用的桌面模式。
  • 最大数据库大小1TB+,在大数据规模下Eloquera保持快速的查询响应;它拥有正在申请专利的技术,包括虚拟文件系统、索引和自适应缓存。 Eloquera 具有用 MSIL 编写的最先进的反射,使 Eloquera 的性能优于许多使用 Microsoft 标准反射的数据库。
  • 支持内存数据库以实现快速数据处理
  • 由于 Web 中的大多数用户都来自关系数据库世界,因此 Eloquera 支持 SQL 是很自然的,并且 LINQ
  • EF 支持将于下个月到期
  • 与某些数据库不同,Eloquera 不会盲目地将对象放入内存中数据库,如果您更改 int;int; 中的字段很长;它不会继续查询错误的结果,因为它仍然看到两个 int;int; - 它将通知用户更新定义
  • Eloquera 为属性和字段提供本机索引。大多数数据库不提供属性索引。

我可能会与 Carl 争论 DB4O 是市场上最简单的数据库,因为 Eloquera 可以从 API 角度做同样的事情。

Eloquera 比 Versant 更年轻,并且仍然有一些企业功能即将推出。

上个月,Eloquera 研发部门与 Eloquera Parallel Server 合作,提供水平扩展,这可能比 Versant 的 VOD 便宜得多。

Eloquera 的一些特点

  • 是免费用于商业用途。您无需支付任何版税。上述所有功能都是免费的。
  • Eloquera 提供商业支持。
  • Eloquera 专为具有现代建筑的现代世界而设计。它没有不时适应市场需求。它是 Eloquera 建筑的自然组成部分。

Eloquera ( www.eloquera.com ) originally designed and developed for use in the Web environment and it’s designed as native .NET application in C#.

Eloquera wasn’t ported from Java as many other databases.

Eloquera natively as part of architecture supports:

  • Simultaneous user access
  • Security settings
  • Has genuine C/S architecture, has desktop mode available.
  • Max database size 1TB+, in a large data scale Eloquera maintains the fast query response; it has patents pending technologies including virtual file system, indexing, and adaptive cache. Eloquera has state of the art reflection written in MSIL that allows Eloquera to outperform many databases that use Microsoft’s standard reflection.
  • Supports in-memory database for the fast data processing
  • Since most of the users in the Web come from relational database world it was natural for Eloquera to support SQL and LINQ
  • EF support is due next month
  • Unlike some databases Eloquera does not put blindly objects in the database, if you change fields from int;int; to long; it will not keep querying with a wrong results because it still sees two int;int; - it will notify the user to update the definition
  • Eloquera provides a native indexing for properties and fields. Most of the databases do not provide properties indexing.

I might argue with Carl regarding DB4O the easiest database on the market, since Eloquera can do the same things from API perspective.

Eloquera is younger than Versant and still has some enterprise features coming.

Last month Eloquera R&D department got engaged with Eloquera Parallel Server to provide horizontal scaling that arguably will be magnitude cheaper than Versant’s VOD.

Some of the distinguished points

  • Eloquera is FREE for commercial use. You are not required to pay any royalties. All features above you have for FREE.
  • Eloquera has a commercial support available.
  • Eloquera is designed for the modern world with modern architecture. It was not adapting from time to time to market needs. It is natural part of Eloquera’s architecture.
短暂陪伴 2024-09-10 20:01:58

如果您有兴趣了解 db4o 的用户体验,我建议您也询问 我们的 db4o 用户论坛

虽然 db4o 最初是为资源有限的应用程序中的嵌入式使用而开发的(现在在 Android、CompactFramework 和 Silverlight 等受限平台上运行得很好),但我知道我们确实有很多用户很乐意将 db4o 用于 Web 应用程序。

事实上,leatrop 的 db4o-bashing-post 确实有一定的正确性:db4o 服务器核心当前只允许一个线程进入特定数据库中的存储和查询任务。

然而,有几种方法可以使 db4o 应用程序很好地扩展:
由于 db4o 数据库的设置成本非常低(一次 API 调用),因此可以使用多个数据库。您可以使用 db4o 复制系统 (dRS) 在多个数据库之间分发对象。还可以在 db4o 数据库运行时创建它们的备份,并将这些备份复制到多台计算机。使用多个数据库(用于数据时间片或应用程序中的不同用例)的方法对于备份和调试目的非常有用。如果您只想测试实时应用程序的某些方面,则无需复制整个数据库。

如果您仍然发现 db4o 对于并发用户或数据库大小的扩展性不够好,您可以稍后切换到我们的高端对象数据库 Versant VOD。它是为在云中运行而构建的,并且拥有良好的记录,可以为数千个具有多 TB 数据库的并发用户工作。 VOD for .NET 还附带了 LINQ 提供程序,因此 db4o 和 VOD 的接口是兼容的。

我的建议:从 db4o 开始。它是最容易入门和开发的对象数据库。只需用一行代码即可存储任何对象,无需设置架构或映射文件。使用 LINQ 进行查询(或者本机查询,如果您使用 Java)。

db4o 是开源的并且它是免费的(遵循 GPL)。

If you are interested to hear user experiences with db4o, I suggest you also ask in our db4o user forums.

While db4o was originally developed for embedded use in applications with limited resources (and now runs very well on constrained platforms like Android, CompactFramework and Silverlight) I know that we do have many users that are happily using db4o for web applications.

Indeed there is some correctness to the db4o-bashing-post by leatrop: The db4o server core currently only allows one thread to enter for storing and querying tasks in a particular database.

However there are a couple of ways to make db4o applications scale very well:
Since the setup costs for db4o databases is very low (one single API call) it is possible to work with multiple databases. You can use the db4o replication system (dRS) to distribute objects between multiple databases. It is also possible to create backups of db4o databases while they are running and to replicate these backups to multiple machines. The approach of using multiple databases (for timeslices of data or for different usecases in your application) can be very nice for backup and debugging purposes. You don't need to copy the entire database if you want to test only some aspects of your live app.

If you still find that db4o does not scale good enough for concurrent users or database sizes, you can later switch to our high-end object database Versant VOD. It was built to run in the cloud and it has a proven track record to work for thousands of concurrent users with multi-terabyte databases. VOD for .NET also comes with a LINQ provider, so the interfaces of db4o and VOD are compatible.

My recommendation: Start with db4o. It is the easiest object database to get started with and to develop with. Just store any object with one line of code, without setting up schemas or mapping files. Use LINQ to query (or native queries, if you work with Java).

db4o is open source and it's free (under the GPL).

皓月长歌 2024-09-10 20:01:58

我正在创建一个完全基于 Javafx 和 Db4o 的第二代社交媒体平台。我们能够使用 db4o 完成任何其他数据库无法完成的事情。语义 OWL 本体论以及与对象的复杂关系以及我们的用户可定义画布使 Db4o 非常适合我们。我们也不担心扩展问题,并且已经找到了几种解决方案。卡尔是软件界最聪明的人之一。当您了解他的产品时,这一事实是显而易见的。

迈克·塔伦特
首席执行官
对象轮

I'm creating a 2nd generation Social Media Platform completely based on Javafx and Db4o. We are able to do things with db4o that would be impossible with any other database. Semantic OWL Ontologies and Complex relationships with Objects and Our User Definable Canvas make Db4o an amazing fit for us. We have no worries about scaling either and have found several solutions. Carl is one of the most intelligent people in software. This fact is obvious when you learn about his product.

Mike Tallent
CEO
Objectwheel

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