答案 1
我们使用 H2 作为基于 RCP/Eclipse 的超大型设计工具的存储引擎。该工具本身已经在一些数据密集型项目中使用了2年多,因此我们已经非常彻底地强调了H2。
我们对其他Java嵌入式数据库引擎进行了相当深入的分析,并选择了H2。总的来说,我认为我们对此非常满意。我们遇到的稳定性问题很少,但是,正如zvikico所说,开发团队的响应非常迅速。
虽然性能很好,但有时您需要手动进行一些优化。如果您习惯于使用为您执行大量此类优化的企业级数据库,则可能会发生一些变化。我建议您在遇到慢速查询以查看其正在执行的操作时使用 EXPLAIN 命令。通常,您可以切换 JOIN 语句以强制它更有效地使用索引。
所以,简而言之,竖起大拇指!
答案 2
我用它作为nWire的基础,nWire是一个用于Java代码探索的Eclipse插件。它在嵌入式模式下作为 Java 进程的一部分工作,而不是作为服务器。
总的来说,它非常稳定。我使用H2已经有很长一段时间了:我在早期遇到了一些错误,但现在有一段时间没有发生过。开发人员的反应也很好。
关于性能:非常好。您可以在网站上查看测试。我没有机会将其与其他工具进行比较,但我对它非常满意。在最新版本中,打开大型数据库确实需要更多的时间,但这个问题似乎也得到了解决。
其他一些优点:
- 非常简单的分布:只有一个 JAR。
- 嵌入式 Web 控制台对于快速访问数据库非常有用。它被证明是一个有价值的开发工具。
- 响应式社区支持,尤其是来自开发团队的支持。
推荐
-
-
版本控制数据库的正确策略 我正在阅读此,我对所写的5篇文章有疑问。据我所知,您在包含所有SQL DDL语句的大型基线脚本上创建。完成此操作后,您可以在单独的脚本中跟踪每个更改。 但是,我不明白脚本文件的名称如
-
BoneCP 中分区计数的更好解释 来自 BoneCP 官方文档: 分区计数为了减少锁争用,从而提高性能,每个传入的连接请求都会从具有线程相关性的池(即 pool[threadId % partition_count])中选取一个连接。此数字越高,对于具有大量
-
JPA/休眠 DDL 生成;查尔 vs. 瓦尔查尔 我有一个JPA / Hibernate数据模型,我正在使用Hibernate hbm2ddl工具来生成数据库DDL。我有一些字符串应该是CHAR,有些可能是数据库中的VARCHAR。我想尽量减少对DDL的手动编辑(我意识到有些必须发生)
-
将 JAXB 映射到数据库表的最佳方法 我有一个入站xml,我使用xjc工具将其映射到JAXB对象(构建pojos) 我想知道将这些对象映射到各种表的最佳方法是什么。 一个对象/ Xml可以映射到多个表,我认为规则休眠。作为一个基本的解决
标签