tutorial manager hsql java database comparison hsqldb h2

java - manager - ¿Cuál es mejor H2 o HSQLDB?



hsqldb tutorial (2)

HSQLDB 2.0 pronto será lanzado. Me pregunto si superará al H2 ya que, por lo que sé, la mayoría de los usuarios prefieren H2 que HSQLDB. Estoy interesado en el soporte MVCC de HSQLDB 2.0. Aprendí que MVCC en H2 todavía es experimental. Con respecto al soporte / documentación, concurrencia, rendimiento, ¿cuál es mejor entre los dos?


Tanto HyperSQL como la H2 Database son bastante transparentes, por lo que las pruebas pueden ser el mejor enfoque para determinar cuál es más adecuado para un uso particular. Las comparaciones que involucran a HyperSQL y el other están disponibles. Comparten un heritage común, y ambos son de source open .


Soy el desarrollador de una biblioteca de abstracción de base de datos ( jOOQ ), que admite ambas bases de datos. Mis más de 130 pruebas de integración cubren muchas funciones, incluida la llamada de procedimientos y funciones almacenados, matrices, selecciones anidadas, etc. Experimento que HSQLDB 2.1 es ligeramente más rápido que H2 1.3 para bases de datos pequeñas en lo que respecta a DML.

Sin embargo, HSQLDB supera ampliamente a H2 en las operaciones DDL, así como al iniciar / cerrar la instancia, incluso para una pequeña base de datos (¡debido a que H2 compila las funciones almacenadas de nuevo con javac en cada inicio de la base de datos!) . Esto depende de la forma en que almacene las funciones almacenadas. Aparentemente, ese es un "problema" bastante específico de jOOQ, ver también el comentario de Thomas Mueller.

Por otro lado, estoy de acuerdo con el usuario trashgod, debe probar el rendimiento contra un esquema razonable y un caso de uso para usted.