POWER BI RAPORUM NEDEN YAVAŞ?

Power BI, verileri çesitli grafikler ve görsellerle görüntülememize olanak sağlayan hızlı bir araçtır. Bu araç, büyük veritabanlarından veriyi çekme ve işleme yeteneğine de sahiptir, ancak buna rağmen bazen kendimizi görsellerin yüklenmesi için dakikalarca beklerken bulabiliriz. İşlemleri ve dolayısıyla grafiklerin yüklenmesini hızlandıracak şekilde makinenin yapması gereken işi hafifletmeye yardımcı olan bazı detaylar vardır.
Bir Power BI raporunda performans düşüşüne neden olabilecek birçok sebep olabilir. Bunlar, çok fazla grafik kullanmak, miktarca fazla veri kullanmak, sertifikalı olmayan özel grafikler kullanmak veya varsayılan seçenekleri kullanmamak olabilir. Bu da Power BI’ın raporumuzu yüklemek için fazladan çaba harcamasına ve dolayısıyla makinenin ihtiyaç duyduğu süreyi artırmasına yol açabilecek bazı durumlardandır.

Maddeler halinde yavaşlığa sebebiyet veren durumları anlatmaya çalışalım;

Grafik Kullanımını sınırlamalıyız: Microsoft, sayfa başına grafik sayısının sınırlandırılmasını öneriyor. Bunun nedeni, her grafiğin etkileşimli filtre başına en az bir sorgu yayımlamasıdır. Bu nedenle çok sayıda grafik rapor performansını yavaşlatabilir.

Bilgileri görüntülemek için gereken minimum veriyi kullanmalıyız: Bir grafiğin ne kadar çok veri göstermesi gerekiyorsa, yüklemesi de o kadar uzun sürebilir. Çoğu zaman, kullanıcının mesajı anlaması için grafiğin sonsuz sayıda veri içermesi gerekmez. Yükleme hızını artırmak için verileri gereken minimum düzeye indirmek tercih edilebilir. Performans iyileştirmesinin kullanıcı deneyimi üzerinde olumsuz bir etkisi olabileceğinden endişe ediyorsanız, kullanıcının ihtiyaç duyacağından daha fazla miktarda veri tutmayı seçebilirsiniz, veri kümelerini sınırlandırmak daha yerinde olacaktır.

İyi performansa sahip özel Power BI görsellerini kullandığımızdan emin olmalıyız: Power BI, Microsoft sertifikalı özel Power BI görsellerinden oluşan bir kataloga sahiptir. Microsoft’un bu görsellerin en iyi performansı gösterdiğinden emin olmak için titiz ve kapsamlı testler yaptığını da unutmamak gerekir. Düşük performans gösteren görsellerin kullanılması, tüm raporun performansını etkileyebilir. İyileştirilmiş performansa ek olarak, Microsoft tarafından yayımlanan özel görseller, örneğin Power Point’e dışa aktarma yeteneği gibi, sertifikalı olmayanlara göre daha fazla seçeneğe sahiptir.

Kullandığımız özel görsellerin yeterli performansa sahip olup olmadığını kontrol etmeliyiz: Microsoft tarafından onaylanmayan özel görseller aynı performansa sahip değildir. Ancak Microsoft özel grafiklerin daha düşük kaliteli grafikler olmadığını da açıklar . Microsoft’un sertifikasyon gereksinimlerini karşılamayan görseller olabilirler. Özel grafikler kullanacaksak, beklenen performansa sahip olduklarını doğrulamak için testler yapmalı veya bunları daha iyi özellikler sunan grafiklerle değiştirmeliyiz.

Grafikler arasındaki etkileşim sayısını azaltmalıyız: Grafikler, birbirleriyle etkileşime girebilirler. Etkileşim sayısını gereken minimum düzeye indirmek, rapor performansını iyileştirecektir.

Slicer’ların kullanımını sınırlamalıyız: Slicerlar, verilerin hangi durumda filtrelendiğini bilmek kullanılacak olan raporlar için yararlıdır. Ancak, performansları sınırlıdır ve bu da raporun genel işleyişini etkileyebilir.

Yavaş bir Power BI raporu yalnızca son kullanıcı için külfetli olmakla kalmaz, aynı zamanda yükleme süresinin tamamlanmadığı ve raporun görüntülenemediği anlamına da gelebilir. Bir Power BI raporuyla ilgili bu tür sorunları belirlemek için, son kullanıcılara raporla ilgili deneyimlerinin ve raporla çalışırken alışkanlıklarının neler olduğunu sormak bir fikir oluşturabilir. Bu şekilde, raporlar tam ihtiyaçlarına göre daha iyi uyarlanabilir. Gerçekten de raporumuzun hız sorunları olduğunu tespit edersek, makine tarafından yapılması gereken işleri, süreçleri ve dolayısıyla grafiklerin yüklenmesini hızlandıracak şekilde hafifletmeye yardımcı olan uygulamaları da kullanabiliriz. Bunun için Power BI rapor performansını izleyerek işe başlayabiliriz;

“Power BI Performance Analyzer” kullanarak rapor performansını inceleyebiliriz. İnceleme, performans sorunlarının nerede olduğunu ve rapor performansını nasıl geliştirebileceğimi öğrenmemize yardımcı olur.

Performansın incelenmesi yararlı olan durumlar şunlardır;

  • Import edilen veri modelimiz yavaş yenileniyorsa,
  • DirectQuery veya Live Connect raporlarımız yavaş çalışıyorsa,
  • Model hesaplamalarımız yavaş çalışıyorsa.

Yavaş sorgular veya rapor görselleri, devam eden iyileştirme çalışmalarının odak noktası olmalıdır.

Sorgu Tanımlamalarını Kullanma;
Sorguları preview etmek veya uygularken Power Query’nin neler yaptığını belirlemek için Power BI Desktop’ta Sorgu Tanımlamalarını kullanmalıyız. Ayrıca her sorgu adımında ayrıntılı değerlendirme bilgilerinin kaydını almak için “Describing” adımını kullanmalıyız. Sonuçlar Power Query’de kullanıma sunulur ve sorgu yürütmesini daha iyi anlamak için conversions uygulayabilirim. (Sorgu Tanılamaları şu anda bir preview özelliğidir ve bu nedenle özelliği Seçenekler ve Ayarlar’da etkinleştirmek gerekir. Etkinleştirildikten sonra komutları Power Query Düzenleyicisi penceresindeki “Araçlar” şerit sekmesinde kullanılabilir.)

Performans Analizi’ni Kullanma;
Görsel öğelerimden her birinin, örneğin görsellerin ve DAX formüllerinin nasıl performans gösterdiğini anlamak için Power BI Desktop’ta Performans Analizini kullanmalıyız. Özellikle performans sorunlarına sorgunun mu yoksa görseli işleme işleminin mi yol açtığını belirleme açısından yararlı olacaktır.

SQL Server Profiller’ı kullanma;
Yavaş çalışan sorguları belirlemek için SQL Server Profiller’ı da kullanabilirim.(SQL Server Profiler, SQL Server Management Studio’nun bir parçası olarak sağlanır.)

Veri kaynağım aşağıdakilerden biri olduğunda SQL Server Profiler’ı kullanmalıyım;

  • SQL Server
  • SQL Server Analysis Services
  • Azure Analysis Services

Power BI’da rapor performansıyla ilgili sorunları giderme;
Power BI raporları ve ayrıca Power BI sayfalandırılmış raporları için geçerlidir. Yavaş raporlar, slicerlar veya diğer özelliklerle etkileşim kurarken yüklenmesi veya güncellenmesi yavaş olan raporlarla karşılaşan rapor kullanıcıları tarafından tanımlanabilir. Raporlar bir Premium ortamında barındırıldığında, “Power BI Premium Metrics” uygulaması izlenerek yavaş raporlar da belirlenebilir . Bu uygulama, Power BI Premium aboneliğimizin durumunu ve kapasitesini incelemeye yardımcı olur. Yavaş performansın nedenini anlamaya ve hangi işlemin gerçekleştirileceğini belirlemeye yardımcı olması için aşağıdaki akış şemasını kullanabiliriz.

Resim 1

İlk düşünülmesi gereken, yavaş raporun bir Premium kapasitede barındırılıp barındırılmadığını anlamaktır.

Premium Kapasite
Rapor bir Premium kapasitede barındırıldığında, rapor barındırma kapasitesinin sık sık kapasite kaynaklarını aşıp aşmadığını belirlemek için “Power BI Premium Metrics” uygulamasını kullanmalıyız. Sıklıkla CPU için %80’i aştığında durum böyledir. Bellek için, bellek kullanım durumu 50’yi aştığında gerçekleşir. Kaynaklar kullanım durumu yoğun olduğunda, kapasiteyi yönetmenin veya ölçeklendirmenin zamanı gelebilir (Resim 1- 1 nolu kutucuk). Yeterli kaynaklar olduğunda, tipik rapor kullanımı sırasında kapasite etkinliğini araştırmalıyız (Resim1- 2 nolu kutucuk).

Paylaşılan Kapasite
Rapor paylaşılan kapasitede barındırıldığında, kapasite durumunu izlemek mümkün değildir. Farklı bir yaklaşımla izlemek gerekecektir.

İlk olarak, günün veya ayın belirli saatlerinde yavaş performansın oluşup oluşmadığını belirlemeliyiz. Açılıyorsa ve çoğu kullanıcı bu saatlerde raporu açıyorsa, iki seçeneği göz önünde bulundurabiliriz;

  • Veri kümesini Azure Analysis Services’e veya bir Premium kapasiteye (Resim1- 4 nolu kutucuk) geçirerek sorgu verimini artırabiliriz.
  • Görseller ve DAX formülleri gibi rapor öğelerimizin her birinin nasıl çalıştığını öğrenmek için Power BI Desktop Performance Analyzer’ı kullanmalıyız. Performans sorunlarına katkıda bulunanın sorgu mu yoksa görsel işlem mi olduğunu belirlemek özellikle yararlıdır (Resim1- 5 nolu kutucuk).

Periyodik bir zaman diliminde çalışmadığını gözlemlersek, yavaş performansın belirli bir coğrafyaya veya bölgeye izole edilip edilmediğini düşünmeliyiz. Öyleyse, veri kaynağının uzak olması ve network’ün yavaş olması muhtemeldir. Bu durumda şunları göz önünde bulundurabiliriz;

  • Azure Analysis Services (Resim1- 3 nolu kutucuk) kullanarak mimariyi değiştirme .
  • On-premises data gateway performance’ı optimize etme (Resim1- 3 nolu kutucuk).

Son olarak, zaman düzeni olmadığını ve tüm bölgelerde yavaş performans meydana geldiğini belirlersek, belirli cihazlarda, clientlerde veya web tarayıcılarında yavaş performansın oluşup oluşmadığını araştırabiliriz. Olmazsa, raporu veya modeli optimize etmek için (Resim1- 5 nolu kutucuk) daha önce açıklandığı gibi Power BI Desktop Performance Analyzer’ı kullanmalıyız.

Kaynakça;
https://learn.microsoft.com/en-us/power-bi/guidance/monitor-report-performance
https://learn.microsoft.com/en-us/power-bi/guidance/power-bi-optimization
https://learn.microsoft.com/en-us/power-bi/guidance/report-performance-troubleshoot
https://blog.bismart.com/en/why-is-my-power-bi-report-so-slow
https://towardsdatascience.com/how-i-speed-up-my-power-bi-report-5x-b9de603e8df

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir