64 Bit işletim sistemlerinin yaygınlaşmaya başlamasıyla beraber, veritabanı sistemleri daha verimli çalışma fırsatı buldu.
Ancak optimizasyon testlerini yaptığınız projelerin local değerlerini baz alarak, remote bağlanıcıların erişim sürelerini hesaplamak ve bu iki farklı kullanım şeklinin arasındaki ilişkiye bakarak bağlantı hızı/performans grafiği çizmek doğru sonuçlar vermeyebilir. Yakın bir geçmişte başıma geldiği gibi
SQL Server 2005 64Bit versiyonu üzerinde bulunan veritabanımızın içinde bir tablo düşünün. Çok kullanıcılı bir uygulama için küçük sayılabilecek (318.000 civarı) miktarda veri saklıyor. Application testleri yapılırken veri çeken client’ların response zamanlarını hesaplamak istedik. Bunu da Sql server üzerinde çalıştıracağımız (yani makine üzerinde) bir sorgu ile karşılaştırmak istedik.
Ama gelin görün ki ;
1) 64 Bit makinede RDP ile yapılan sorgu
22 saniye
2) Aynı database 32 bit HP Laptop üzerinde yapılan sorgu
13 saniye
Peki neden bu gariplik ?
Uzun süren hata araştırmalarının ardından şöyle bir gerçek ile yüzleştik
“Behaviour By Design”
SQL Server 64 Bit işletim sistemi ile beraber gelen Management Studio, Configuration Manager ve Database Tuning Advisor tool’ları 64 bit değil, 32 bit. Bu nedenle Microsoft diyor ki : You may experience slow performance when you run 32-bit SQL Server tools on 64-bit operating systems
Sorunun çözümü ise şu. Doğru değerleri elde etmek istiyorsanız, aynı network üzerine dahil ettiğiniz bir başka 32 Bitlik makineden 642Bit SQL Server instance’ını register edip sorgularınızı çalıştırın.
Detaylar için Microsoft’ta yayınlanan şu makaleyi de okuyabilirsiniz :
http://support.microsoft.com/kb/906892