HSQLDB 2.0即将发布。我想知道它是否会超越H2,因为据我所知,大多数用户比HSQLDB更喜欢H2。我对HSQLDB 2.0的MVCC支持感兴趣。我已经知道H2上的MVCC仍然是试验性的。关于支持/文档,并发性和性能,哪一个更好?哪个更好H2或HSQLDB?
回答
HyperSQL
和H2 Database
都相当透明,因此测试可能是确定哪种更适合特定用途的最佳方法。涉及one和other的比较是可用的。他们共享一个共同的heritage,并且都是opensource。
“垃圾桶是一个重要的设计工具” - [_ loc。 (http://stackoverflow.com/a/22259102/230513) – trashgod 2014-09-21 22:00:08
感谢您的“遗产”链接。他们对历史进行了非常精彩的总结。首先是HSQLDB(Hypersonic SQL)然后是H2,但HSQLDB和H2不共享任何相同的代码,并且是截至今日的独立项目。 – specialk1st 2016-03-18 10:16:47
@ specialk1st:对,在这种情况下_heritage_是一个普通的作者,而不是普通的代码。 – trashgod 2016-03-18 17:15:21
我是一个数据库抽象库(jOOQ)的开发者,它支持两个数据库。我的130多个集成测试涵盖了很多功能,包括调用存储过程和函数,数组,嵌套选择等。就DML而言,我经历HSQLDB 2.1
比小型数据库的H2 1.3
略快。
然而,HSQLDB高度在DDL操作优于H2以及启动时/关闭的情况下,即使是一个小的数据库(在每个数据库的启动用javac由于H2的编译存储功能重新!)。这取决于你存储存储功能的方式。显然,这是一个相当特别的“问题”,另请参阅Thomas Mueller的评论。另一方面,我同意用户trashgod,你应该针对自己的合理模式和用例测试性能。
存储的函数只有在被存储为“源代码”时才被重新编译,这是HSQLDB中不可用的功能(据我所知)。如果你使用预编译的存储函数,那么没有这种开销。 – 2011-10-20 09:01:08
@ThomasMueller:谢谢,我不知道。这将大大加快我的集成测试。我会相应地调整我的答案。 HSQLDB具有类似PL/SQL的过程语言,这是更强大的IMO。但我不确定,如果该语言是预编译或解释的...... – 2011-10-20 09:19:26
- 1. min或gzip,哪个更好?
- 2. 哪个更好? OpenCyc或ConceptNet?
- 3. 哪个更好,Nagios或Sensu?
- 4. jqGrid或dataTable,哪个更好?
- 5. PHP:ParseCSV或PHPExcel哪个更好?
- 6. DataTable或IList?哪个更好?
- 7. 哪个更好? city.state.id或city.state_id
- 8. PigServer或PigRunner?哪个更好?
- 9. 哪个更好:PooledConnectionFactory或CachingConnectionFactory?
- 10. 哪个更好Paperclip或CarrierWave?
- 11. 哪个更好Math.random()或UIDUtil.createUID()
- 12. 哪个更好BOOST_MPL_ASSERT或BOOST_STATIC_ASSERT?
- 13. Magento或Prestashop,哪个更好?
- 14. Gzip或ob_flush()?哪个更好?
- 15. Japid或Scala哪个更好?
- 16. 哪个更好c89或c99
- 17. Coredata或Sqlite哪个更好
- 18. 哪个更好... GATE或RapidMiner
- 19. 哪个更好 - PyInstaller或cx_Freeze?
- 20. 哪个更好:Parcelable或Context?
- 21. RTC或AccuRev哪个更好?
- 22. Vector.contains()或Hashtable.get()哪个更好
- 23. Android:ViewFlipper或ViewPager - 哪个更好?
- 24. 哪个更好,setEnabled或setUserInteractionEnabled?
- 25. 哪个更好或者Viewgroup或者Layout
- 26. SocketChannel:单个或多个,哪个更好?
- 27. 哪个更好
- 28. 哪个更好?
- 29. 哪个更好?
- 30. 哪个更快/更好:哪里更新或合并?
你的用例是什么?您会针对您的数据执行哪些查询?你的数据有多大?您的应用程序是读取还是写入较重? – Matt 2011-04-20 15:06:05
另一个完美的问题关闭。 – rtcarlson 2014-04-02 00:18:10
尽管问题只是提到它作为其中一个方面,但我觉得注意力集中在答案上似乎是表现。我会对support/doc,可用性(易用性,直观性,功能集),可靠性等方面的其他方面更感兴趣。 – StaxMan 2015-05-13 18:17:36