HomeHomeTechniqueTechniqueAdministration ...Administration ...SQL SERVER 2008 : Durée de requête variable avec STATISTICS TIMESQL SERVER 2008 : Durée de requête variable avec STATISTICS TIME
Précédente
 
Suivante
Nouveau message
24/03/2010 14:26
 
Bonjour tout le monde !
Je suis sur un serveur local SQL SERVER 2008.
je constate que la durée d'exécution d'une même requête varie à chaque exécution.
Exemple :
1er essai --------
-----------------
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
DBCC FREESYSTEMCACHE ('ALL')

USE AdventureWorks;
GO SET STATISTICS TIME ON
GO
SELECT * FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS TIME OFF;
GO
-----------------------------------
--Resultat 1er essai
--------------------
Temps d'analyse et de compilation de SQL Server : ,
Temps UC = 0*ms, temps écoulé = 164*ms.
Temps d'analyse et de compilation de SQL Server : ,
Temps UC = 0*ms,
temps écoulé = 0*ms.
(269*ligne(s) affectée(s)) SQL Server \endash Temps d'exécution*:
, Temps UC = 0*ms, temps écoulé = 10*ms.
Temps d'analyse et de compilation de SQL Server :
, Temps UC = 0*ms, temps écoulé = 0*ms.


--------------------
2eme essai
--------
DBCC DROPCLEANBUFFERS
DBCC FREEPROCCACHE
DBCC FREESYSTEMCACHE ('ALL')
USE AdventureWorks;
GO SET STATISTICS TIME ON
GO
SELECT *
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO SET STATISTICS TIME OFF;
GO

--------------------------------
-- Resultat 2eme essai
-----------------------
Temps d'analyse et de compilation de SQL Server :
, Temps UC = 0*ms, temps écoulé = 165*ms.
Temps d'analyse et de compilation de SQL Server :
, Temps UC = 0*ms, temps écoulé = 0*ms.
(269*ligne(s) affectée(s)) SQL Server \endash Temps d'exécution*:
, Temps UC = 0*ms, temps écoulé = 11*ms.
Temps d'analyse et de compilation de SQL Server :
, Temps UC = 0*ms, temps écoulé = 0*ms.


Ainsi de suite...et le temps d'exécution varie de façon aléatoire !

PRECISION : Je suis le seul utilisateur sur le serveur (l'instance est sur mon PC portable) et il n'y a pas d'autre opération sur la base de données entre les différentes exécutions !
Merci pour l'intérêt que vous portez à ce post.
Merci d'avance
 
Nouveau message
24/03/2010 20:41
 

Sur des temps très courts, cela ne me semble pas étonnant. Il y a plein de services sur la machine qui peuvent ralentir la requête d'une manière pseudo aléatoire, par des accès disques ou mémoire par exemple. En plus, dans les exemples, les écarts sont d'une milliseconde !

En général, les mesures deviennent pertinentes lorsque les requêtes sont plus importantes et que le serveur est dédié : priorité aux applications réseau, etc... Et en mesurant des écarts significatifs...


Arian (Modérateur) MCSE-MCT-MCDBA-MCITP
 
Précédente
 
Suivante
HomeHomeTechniqueTechniqueAdministration ...Administration ...SQL SERVER 2008 : Durée de requête variable avec STATISTICS TIMESQL SERVER 2008 : Durée de requête variable avec STATISTICS TIME