Bunun sebebi Analysis Services'in verdiği cevapları önbelleğe (cache) almasıdır. Size önbellekten değil de sorguyu tekrar çalıştırarak cevap vermesini nasıl sağlarsınız? Bunun için şu XMLA kodunu kullanabilirsiniz:
Database ve Cube'ün ismini değil ID'sini kullanmanız gerekiyor. Bunun için SSMS'te bu nesnelerin property sayfalarına erişerek bilgiyi alabilirsiniz.
Benzer bir etki veritabanı performansı ölçümü yaparken SQL Server Database Engine'de de sözkonusudur. Orada da (tabii ki bir test ortamında) DBCC FREEPROCCACHE komutunu kullanmayı düşünebilirsiniz. Ayrıca sayfalar da buffer'dan mı geliyor diye (procedure cache'i ve buffer cache'in her ikisi de boşalmış mı diye kontrol etmek için) merak ederseniz, set statistics io on ifadesini sorgudan önce kullanarak sorgu sonucuyla birlikte dönen mesajlarda io'ların diskten mi (physical ve read ahead) yoksa memory'den mi (logical) yapıldığını anlayabilirsiniz.

3 yorum:
Merhaba; raporlarda 30 dk'lık bir cache ayarladığımızı varsayalım. O arada küpü tekrar process edersek, tekrar raporu çalıştırdığımızda güncel bilgileri verecekmidir?
Eğer analysis services'in cache'inden bahsediyorsak küp process olunca zaten devre dışı kalıp yenilenir.
Ama mesela reporting services raporunun cache'iyse ve süre bağlamında yapılmışsa, cache süresi dolana kadar rapor eski datayı gösterir.
raporun cache'sinden bahsediyordum teşekkür ederim. Küpün process olma sıklıgından daha az bir cache süresi atamak ozaman problem yaratmayacaktır.
Yorum Gönder