Laquelle des bases de données suivantes convient le mieux à une grande application de bureau: Firebird, JavaDB, hsqldb? J'ai besoin de performances, de facilité d'utilisation et d'une licence totalement gratuite.
Si vous recherchez une base de données intégrable, ma recommandation serait H2 (signifie Hypersonic 2, (ré) écrit par l'auteur de HSQLDB). Voir le comparaison détaillée des caractéristiques et de performances .
L'utilisation d'une base de données 100% Java permettrait de l'exécuter dans le même processus et faciliterait grandement les choses, OMI.
Laissez-moi vous recommander sur Postgres ( http://www.postgresql.org/ ), qui est l’un des meilleurs DB gratuits que je connaisse.
J'ai eu une expérience avec cette base de données dans mon projet précédent, dans lequel nous avions une vingtaine de tables dans le schéma, la plus grande avait environ 100 000 lignes et la quantité de données totale n'était pas si grande.
Ce projet est en production depuis plus de 2 ans et n'a posé aucun problème particulier.
Shay
Ma recommandation est H2. J'ai récemment migré une base de données (à partir d'un serveur MS SQL) comprenant 2 tables plus grandes hébergeant plus de 2 millions de lignes. J'ai d'abord essayé Derby et eu des problèmes (pas seulement de performance) - puis je suis passé à H2 et j'ai tout migré avec succès.
Je pense que vous serez mieux avec une base de données intégrable pour cela. HSQLDB ou H2 fonctionneraient, de même que SQLite . SQLite est assez populaire en dehors du monde Java (il est utilisé par le projet Mozilla, par exemple). Je ne suis pas familier avec JavaDB, je ne peux donc pas parler de ses capacités.
SQLite est connu pour être assez rapide.
Firebird est une très bonne base de données spécialement pour les applications de bureau
Il y a un bon pilote Java.
Dépend des exigences et de la quantité de données. Mon dernier choix était MySQL et c'était très confortable (application swing)
Je voudrais un SGBD qui est not Java-spécifique. Vous souhaiterez peut-être partager vos données avec une application C++ ou .NET un jour. S'il n'est pas nécessaire que ce soit client/serveur, considérez SQLite ou H2. Si c'est le cas, considérez alors Postgres. Tous ont des pilotes ODBC et/ou des pilotes pour des langages spécifiques autres que Java.