Base de donnée locale. Que choisir ?

Base de donnée locale. Que choisir ? - SQL/NoSQL - Programmation

Marsh Posté le 26-04-2006 à 20:23:51    

Bonjour à tous,
 
voilà, je code un logiciel, et j'ai besoin d'une base de donnée.
 
Voici ce que je voudrai :
- Une base de donnée permettant des recherches rapides (ainsi que des filtrages rapides).
- Un affichage rapide de toute les données.
 
Pour l'instant, j'ai codé "une base de donnée" en utilisant le XML, c'est bien mais dès que je dépasse les 1000 entrées, le temps de chargement du fichier XML commencent à devenir long. (708 Ko fait la base actuellement et le temps de chargement est long je trouve (1-2 secondes)), et puis il n'y a pas d'index, j'ai crée un système d'index assez primaire mais il est très long quand il se crée. (10 secondes pour 1000 fichiers).
Par contre une fois le fichier XML chargé et l'index crée, celà est très rapide. (Presque instantanée, sauf pour l'affichage dans une liste de toute la base de donnée.)
 
Mon logiciel a besoin d'une base de donnée pouvant se charger très rapidement, pouvant ajout/supprimer des entrées sans ralentissement, et qu'elle soit séparé du logiciel. (Car quand je fait de grosse opération avec le XML, celà me bloque le logiciel). Aussi, quand je doit récupérer une information de la base de donnée, celà doit être instantané. (Car pour créer une liste affichant le contenue entier de la base de donnée avec toutes les informations associés de l'entrée (il y a une trentaine d'information associés a chaque entrée...)).
 
Aussi, la base de donnée doit être locale et distante, car chaque utilisateur de l'ordinateur aura sa base de donnée. (et distante pour des fonctions futur).
 
Donc ma question, quelle est la base de donnée la plus adapté a mes besoins ?
 
Et aussi un petit coups de main voir des liens vers des sites web pour comprendre comment créer et exploiter efficacement une base de donnée serait sympa.
 
Note: Le logiciel sera Open-Source.
 
Je vous remercie.
 
Willits

Reply

Marsh Posté le 26-04-2006 à 20:23:51   

Reply

Marsh Posté le 26-04-2006 à 20:45:20    

plusieurs possibilité: Microsoft Access (très facile), PostGre SQL, MySQL, etc... tu as le choix, tout dépend de tes besoins exacts. A ta place si chaque poste aura sa bd, autant prendre une bd access, tant que celle ci ne doit pas etre distribuée entre plusieurs poste aucun soucie.

Reply

Marsh Posté le 26-04-2006 à 22:01:33    

J'avais pensé à une base de donnée MS Access, mais le "problème" est que je n'ai qu'une api me permettant à me connecter a ces bases de données : (et MS Access n'en fait pas partie).
- Oracle (Vus le prix de la licence, on oublie)
- MySQL
- PostGreSQL
- Valentina
- ODBC
- SQLite
- Et le XML.
 
Mais je peux aussi coder ma propre api (mais celà n'est pas simple). (je dit celà car je code en haut-niveau et que certaine fonction ne sont pas fournis donc il faut le faire en C/C++).
 
Et le problème aussi est que mon logiciel doit être portable sur toute les plateforme. (Et je ne sais pas si MSAcess fonctionne sous FreeBSD.)
 
Mais je pense à SQLite, vous en pensez quoi ?

Reply

Marsh Posté le 27-04-2006 à 01:46:20    

En plus des SGBD cités, il y à aussi FirebirdSQL (ex interbase) qui est très bien et open source.
 
Un peu de lecture, le comparatif SGBD
http://fadace.developpez.com/sgbdcmp/

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed