H2数据库有多大?

时间:2015-01-24 02:35:44

标签: database clojure jvm h2

H2数据库有多大?我一直在使用H2数据库和我在Clojure中编写的Web应用程序大约半年,数据库变得非常大:.h2.db文件的当前大小为143GB,一个表包含超过330000个图像。该应用程序相当稳定,偶尔会因JVM垃圾收集器和数据库错误(例如"缺少高架条目)而导致暂停。"当前的内存占用大约为6GB,这是可以接受的,到目前为止,我能够通过重建数据库从这些数据库错误中恢复。但是,我确实想知道,在迁移到多线程数据库引擎(如PostgreSQL和MySQL)之前,我可以实际保留这个设置多久,我很想听听那些有大型H2数据库工作经验的人。

2 个答案:

答案 0 :(得分:3)

我想报告,为了将来参考,我最终遇到了H2的主要性能和稳定性问题,并转而使用HyperSQL(http://hsqldb.org/)。对于我的Web应用程序,HyperSQL更稳定,实际上比H2更快。 HyperSQL对多线程的支持尤其重要,而且我没有像使用H2那样使用HyperSQL来破坏数据库。我还使我的应用程序与数据库无关并与MySQL和PostgreSQL兼容,这两者对我的应用程序而言似乎比H2更稳定和响应。我知道H2并不是为我这样庞大的数据库而设计的,但我想我应该让其他读者了解运行庞大H2数据库的一些后果。

答案 1 :(得分:0)

从技术上讲,这些是限制: http://h2database.com/html/advanced.html#limits_limitations

但是,现实世界的限制将取决于您的应用程序。例如,如果您只能容忍5毫秒的延迟,那么没有索引的4TB数据库可能不会被削减。