Bonjour à tous,
Pour mon application, j'analyse des trames réseaux que je décortique puis je stocke les données dans une table. De temps en temps il y a des "évènements" qui sont stockés dans une autre table.
La première table compte environ 4 millions de lignes et la secondes 100 000. Il y a une purge automatique qui permet de ne garder les données que sur 20 jours mais la base fait quand même 2Go avec seulement ces 2 tables !
Lorsque je fais des requêtes sur la base c'est très long. Certaines requêtes mettent plus de 5 min à s'éxecuter (il y a parfois des jointures entre les deux tables aussi...).
J'ai tenté d'optimiser un peu les choses en mettant des index mais ça na pas changer fondamentalement les temps d'exécution (surement qu'il y a mieux à faire mais ma question n'est pas là).
En fait j'aimerai vous demander si pour ce genre d'application il n'y a pas mieux pour stocker les données qu'une base de données. Les requêtes sont simples et je me demande s'il n'y a pas une manière plus efficace de stocker les donner.
J'utilise une base SQL Server Express 2005. Je tiens à vous préciser que ce n'est pas moi qui ai fais les choix de conception, de SGBD, etc. Et les gens qui l'on fait, non pas calculé ni testé l'application avec une base pleine.... et donc maintenant que c'est en production on a des timeout partout parce que les requêtes sont super longues...
Merci d'avance
Matthieu
Partager