Ayhan ARDA

MsSql Server Performans Testi Sorgusu

Aşağıdaki query yi management studio ile çalıştırarak sql sunucunuzun sorgulara cevap verme süresini ölçebilirsiniz.

DECLARE @Loops INT SET @Loops = 1
DECLARE @CPU INT SET @CPU = @@CPU_BUSY
DECLARE @StartDate DATETIME SET @StartDate = GETDATE()
 
WHILE @Loops <= 1000000
BEGIN
    IF COALESCE('123', '456') = '456' 
            PRINT 1
    SET @Loops = @Loops + 1  
END
 
PRINT 'COALESCE, both non-NULL'
PRINT 'Total CPU time: ' + CONVERT(varchar, @@CPU_BUSY - @CPU) 
PRINT 'Total milliseconds: ' + CONVERT(varchar, DATEDIFF(ms, @StartDate, GETDATE()))
PRINT ''  
GO
 
--==================================================
 
DECLARE @Loops INT SET @Loops = 1
DECLARE @CPU INT SET @CPU = @@CPU_BUSY
DECLARE @StartDate DATETIME SET @StartDate = GETDATE()
 
WHILE @Loops <= 1000000
BEGIN  
    IF ISNULL('123', '456') = '456'
            PRINT 1  
    SET @Loops = @Loops + 1
END
 
PRINT 'ISNULL, both non-NULL'  
PRINT 'Total CPU time: ' + CONVERT(varchar, @@CPU_BUSY - @CPU)
PRINT 'Total milliseconds: ' + CONVERT(varchar, DATEDIFF(ms, @StartDate, GETDATE()))  
PRINT ''
GO

İşlem sonucunda aşağıdaki gibi bir değer almalısınız.

COALESCE, both non-NULL
Total CPU time: 30
Total milliseconds: 1110

ISNULL, both non-NULL
Total CPU time: 33
Total milliseconds: 1246

Ayhan ARDA

Exit mobile version