by Nurgün Özgür
19. March 2010 16:12
İstatistiklerin güncel olmaması sorunu genelde bir tabloda çok kısa sürede çok fazla data değişirse meydana gelir. 'Data migration'da , import veya çok fazla insert yapıldığında istatistikler "bozulabilir". Sunucu belirli bir "bozulma" orandan sonra 'auto update' yapabilir fakata canlı ortamlarda bu pek fazla istenilen bir durum değildir. Güncel olmayan istatistikler yanlış index kullanıma neden olur ve performansı etkiler.
Örnek:
Customer tabloda 'FirstName' alanada 'A' ile başlayan isimler %56 'b' başlayan isimler %14 . Import işleminden sonra 'A' %11 olur 'B' %78 yükselir. Bu değişiklik istatistiklere yansımaz ise index kullanımı çok verimli olmaz.
İstatistikleri elle güncellemek için :
Oracle
DBMS_STATS.GATHER_TABLE_STATS('SHCEMA1','TEST_TABLE');
MSSQL
update statistics TEST_TABLE
Daha fazla bilgi:
http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/stats.htm
http://technet.microsoft.com/tr-tr/library/ms187348.aspx