51 votes

Quel est le meilleur H2 ou HSQLDB?

HSQLDB 2.0 sera bientôt publié. Je me demande si cela surperformera H2 puisque, autant que je sache, la plupart des utilisateurs préfèrent H2 à HSQLDB. Je suis intéressé par le support MVCC de HSQLDB 2.0. J'ai appris que MVCC sur H2 est encore expérimental. En ce qui concerne le support / documentation, la simultanéité, les performances, quel est le meilleur entre les deux?

39voto

Lukas Eder Points 48046

Je suis le développeur d'une abstraction de base de données de la bibliothèque (jOOQ), qui prend en charge les bases de données. Mon 130+ tests d'intégration de couvrir beaucoup de fonctionnalités, y compris l'appel de procédures stockées et les fonctions, les tableaux imbriqués sélectionne, etc. J'ai de l'expérience HSQLDB 2.1 à être légèrement plus rapide qu' H2 1.3 pour les petites bases de données autant que DML.

Cependant, HSQLDB très surpasse H2 dans les opérations DDL ainsi que lors du démarrage/arrêt de l'instance, même pour une petite base de données (en raison de H2 est la compilation des fonctions stockées à nouveau avec javac à chaque démarrage de base de données!). Cela dépend de la façon dont vous stockez des fonctions stockées. Apparemment, c'est plutôt jOOQ spécifique à la "question", voir aussi Thomas Mueller, la commentaire.

En revanche, je suis d'accord avec l'utilisateur trashgod, vous devez tester la performance par rapport raisonnable de schéma et de cas d'utilisation pour vous-même.

28voto

trashgod Points 136305

Les deux HyperSQL et H2 Database sont assez transparents, de sorte que le test peut être la meilleure approche pour déterminer lequel est le plus adapté pour un usage particulier. Comparaisons impliquant l'un et l' autre sont disponibles. Elles partagent un patrimoine, et les deux sont open source.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: