Bonjour.
Je suis en train d'effectuer un benchmark comparatif entre une BD Objet existante et une BD SQL Server.
Pour cela je simule un cas d'utilisation des deux côtés en faisant :
- côté objet des accès de lecture, modification, ecriture dans la base depuis un client Java.
- côté SQL Server 2005 des requêtes SELECT, UPDATE, INSERT dans la base depuis un client C#.Net.
La différence de technologie employée s'explique par le fait que ma boîte va :
- Soit rester avec son environnement actuel (JAVA / BDObjet)
- Soit passer sur le couple (SQL Server / C#.Net)
Voilà pour ce qui est des explications.
Maintenant sur un plan technique je démarre ma machine, une fois que tout est bien lancé, je lance mon programme C# et je chronomètre les temps en Millisecondes de trois fois la même requête SELECT sur la base SQL Server 2005 (qui est ouverte avant le chronométrage et qui est fermée après la fin des trois tests).
Au niveau des temps obtenus la première requête est beaucoup plus longue que les deux autres. Je pense que c'est parce que SQL Server optimise ses scénarios d'accès aux données dès la première requête effectuée.
Ma question : Est-ce que cette différence ne vient QUE de l'optimisation ou bien se peut-il qu'au premier lancement de ma requête certains procédés (genre initialisation de l'accès à la base, etc ...) ralentisse également mon premier accès ?
Merci d'avance !
Partager