Power BI Desktop'ta depolama modunu yönetme
Microsoft Power BI Desktop'ta bir tablonun depolama modunu belirtebilirsiniz. Depolama modu, Power BI Desktop'ın raporlar için tablo verilerini bellek içinde önbelleğe alıp almadığını denetlemenize olanak tanır. Önbelleğe Alma, verileri geçici olarak bellekte depolama anlamına gelir.
Depolama modunu ayarlamak birçok avantaj sağlar. Modelinizdeki her tablo için ayrı ayrı depolama modunu ayarlayabilirsiniz. Bu eylem, aşağıdaki avantajları sağlayan tek bir anlam modeli sağlar:
Sorgu performansı: Kullanıcılar Power BI raporlarındaki görsellerle etkileşim kurarken, Veri Çözümleme İfadeleri (DAX) sorguları anlam modeline gönderilir. Depolama modunu düzgün ayarlayarak verileri belleğe Önbelleğe Alma, raporlarınızın sorgu performansını ve etkileşimini artırabilir.
Büyük anlam modelleri: Önbelleğe alınmamış tablolar önbelleğe alma amacıyla bellek kullanmaz. Bellekte tamamen önbelleğe alınamayacak kadar büyük veya pahalı olan büyük semantik modeller üzerinde etkileşimli analizi etkinleştirebilirsiniz. Hangi tabloların önbelleğe almaya değeceğini ve hangilerinin önbelleğe almaya değeceğini seçebilirsiniz.
Veri yenileme iyileştirmesi: Önbelleğe alınmamış tabloları yenilemeniz gerekmez. Yalnızca hizmet düzeyi sözleşmelerinizi ve iş gereksinimlerinizi karşılamak için gereken verileri önbelleğe alarak yenileme sürelerini azaltabilirsiniz.
Neredeyse gerçek zamanlı gereksinimler: Neredeyse gerçek zamanlı gereksinimleri olan tablolar, veri gecikme süresini azaltmak için önbelleğe alınmama avantajından yararlanabilir.
Geri yazma: Geri yazma, işletme kullanıcılarının hücre değerlerini değiştirerek durum senaryolarını keşfetmesini sağlar. Özel uygulamalar veri kaynağına değişiklik uygulayabilir. Önbelleğe alınmayan tablolar değişiklikleri hemen görüntüleyebilir ve bu da efektlerin anında analiz edilmesini sağlar.
Power BI Desktop'taki depolama modu ayarı, ilgili üç özellik arasında yer alıyor:
Bileşik modeller: Bir raporun herhangi bir birleşimde DirectQuery bağlantıları veya İçeri Aktarma dahil olmak üzere iki veya daha fazla veri bağlantısına sahip olmasını sağlar. Daha fazla bilgi için bkz . Power BI Desktop'ta bileşik modelleri kullanma.
Çoka çok ilişkiler: Bileşik modellerle tablolar arasında çoka çok ilişkiler kurabilirsiniz. Çoka çok ilişkisinde, tablolardaki benzersiz değerler için gereksinimler kaldırılır. Ayrıca, yalnızca ilişki kurmak için yeni tablolar ekleme gibi önceki geçici çözümleri de kaldırır. Daha fazla bilgi için bkz . Power BI Desktop'ta çoka çok ilişkiler.
Depolama modu: Depolama modu ile artık arka uç veri kaynaklarına sorgu gerektiren görselleri belirtebilirsiniz. Sorgu gerektirmeyen görseller DirectQuery'ye dayalı olsalar bile içeri aktarılır. Bu özellik performansı artırmaya ve arka uç yükünü azaltmaya yardımcı olur. Daha önce, dilimleyiciler gibi basit görseller bile arka uç kaynaklarına gönderilen sorgular başlatıyordu.
Depolama modu özelliğini kullanma
Depolama modu özelliği, modelinizdeki her tabloda ayarlayabileceğiniz ve Power BI'ın tablo verilerini nasıl önbelleğe alabileceğini denetleyebileceğiniz bir özelliktir.
Depolama modu özelliğini ayarlamak veya geçerli ayarını görüntülemek için:
Model görünümünde, özelliklerini görüntülemek veya ayarlamak istediğiniz tabloyu seçin.
Özellikler bölmesinde Gelişmiş bölümünü genişletin ve Depolama modu açılan listesini genişletin.
Depolama modu özelliğini şu üç değerden birine ayarlarsınız:
İçeri aktarma: Bu ayara sahip içeri aktarılan tablolar önbelleğe alınır. İçeri Aktarma tablolarından veri döndüren Power BI anlam modeline gönderilen sorgular yalnızca önbelleğe alınmış verilerden gerçekleştirilebilir.
DirectQuery: Bu ayara sahip tablolar önbelleğe alınmaz. Power BI anlam modeline gönderdiğiniz sorgular (örneğin, DAX sorguları) ve DirectQuery tablolarından veri döndüren sorgular yalnızca veri kaynağında isteğe bağlı sorgular yürütülerek gerçekleştirilebilir. Veri kaynağına gönderdiğiniz sorgular, bu veri kaynağı için sorgu dilini (örneğin, SQL) kullanır.
İkili: Bu ayara sahip tablolar, Power BI anlam modeline gönderilen sorgunun bağlamına bağlı olarak önbelleğe alınmış veya önbelleğe alınmamış gibi davranabilir. Bazı durumlarda, önbelleğe alınan verilerden gelen sorguları yerine getirebilirsiniz. Diğer durumlarda, veri kaynağında isteğe bağlı bir sorgu yürüterek sorguları yerine getirirsiniz.
Tablonun Depolama modunu İçeri Aktar olarak değiştirmek geri alınamaz bir işlemdir. Bu özellik ayarlandıktan sonra DirectQuery veya Dual olarak değiştirilemez.
Not
Hem Power BI Desktop'ta hem de Power BI hizmeti çift depolama modunu kullanabilirsiniz.
DirectQuery ve İkili tablolardaki kısıtlamalar
İkili tablolar, DirectQuery tablolarıyla aynı işlevsel kısıtlamalara sahiptir. Bu kısıtlamalar, hesaplanmış sütunlarda sınırlı M dönüşümlerini ve kısıtlanmış DAX işlevlerini içerir. Daha fazla bilgi için bkz . DirectQuery sınırlamaları.
İkili ayarın yayılması
Tüm tabloların İçeri Aktarma ve DirectQuery'yi destekleyen tek bir kaynaktan geldiği aşağıdaki modeli göz önünde bulundurun.
Bu modeldeki tüm tabloların başlangıçta DirectQuery olarak ayarlandığını düşünelim. SurveyResponse tablosunun Depolama modunu İçeri Aktar olarak değiştirirseniz aşağıdaki uyarı penceresi görüntülenir:
Anlam modelindeki sınırlı ilişki sayısını azaltmak ve performansı artırmak için boyut tablolarını (Müşteri, Coğrafya ve Tarih) İkili olarak ayarlayabilirsiniz. Sınırlı ilişkiler normalde en az bir DirectQuery tablosu içerir ve burada birleştirme mantığı kaynak sistemlere gönderilemez. İkili tablolar DirectQuery veya İçeri Aktarma tabloları gibi davranabildiğinden bu durum önlenir.
Yayma mantığı, birçok tablo içeren modellere yardımcı olmak için tasarlanmıştır. 50 tablo içeren bir modeliniz olduğunu ve yalnızca belirli olgu (işlem) tablolarının önbelleğe alınması gerektiğini varsayalım. Power BI Desktop'taki mantık, İkili olarak ayarlanması gereken en düşük boyut tablosu kümesini hesaplar, böylece bunu yapmak zorunda değilsiniz.
Yayma mantığı yalnızca bire çok ilişkilerin tek tarafına geçer.
Depolama modu kullanım örneği
Aşağıdaki depolama modu özellik ayarlarını uyguladığınızı düşünün:
Tablo | Depolama modu |
---|---|
Satışlar | DirectQuery |
SurveyResponse | Import |
Tarih | Çift |
Customer | Çift |
Coğrafi Bölge | Çift |
Bu depolama modu özelliklerinin ayarlanması, Sales tablosunun önemli veri hacmine sahip olduğu varsayılarak aşağıdaki davranışlara neden olur:
Power BI Desktop boyut tablolarını, Tarih, Müşteri ve Coğrafya'yı önbelleğe aldığından, görüntülenecek dilimleyici değerlerini aldıklarında ilk raporların yükleme süreleri hızlı olur.
Power BI Desktop Sales tablosunu önbelleğe almaz. Power BI Desktop, bu tabloyu önbelleğe almayarak aşağıdaki sonuçları sağlar:
- Veri yenileme süreleri iyileştirilir ve bellek tüketimi azalır.
- Sales tablosunu temel alan rapor sorguları DirectQuery modunda çalıştırılır. Önbelleğe alma gecikme süresi uygulanmadığından bu sorgular daha uzun sürebilir ancak gerçek zamanlıya daha yakındır.
SurveyResponse tablosunu temel alan rapor sorguları bellek içi önbellekten döndürülür ve bu nedenle nispeten hızlıdır.
Önbelleğe isabet eden veya önbelleği kaçıran sorgular
SQL Profiler'ı Power BI Desktop için tanılama bağlantı noktasına bağlarsanız, aşağıdaki olayları temel alan bir izleme gerçekleştirerek hangi sorguların bellek içi önbelleğe isabet ettiğini veya kaçırdığını görebilirsiniz:
- Sorgu Olayları\Sorgu Başlangıcı
- Sorgu İşleme\Vertipaq SE Sorgu Başlangıcı
- Sorgu İşleme\DirectQuery Başlangıcı
Her Sorgu Başlangıcı olayı için aynı ActivityID'ye sahip diğer olayları denetleyin. Örneğin, DirectQuery Begin olayı yoksa ancak Vertipaq SE Query Begin olayı varsa sorgu önbellekten yanıtlanır.
İkili tablolara başvuran sorgular mümkünse önbellekten veri döndürür; aksi takdirde DirectQuery'ye geri dönerler.
Aşağıdaki sorgu önceki tablodan devam eder. Yalnızca İkili modda olan Tarih tablosundaki bir sütuna başvurur. Bu nedenle, sorgu önbelleğe isabet etmelidir:
Aşağıdaki sorgu yalnızca DirectQuery modundaki Sales tablosundaki bir sütuna başvurur. Bu nedenle, önbelleğe isabet etmemelidir :
Her iki sütunu da birleştirdiğinden aşağıdaki sorgu ilginçtir. Bu sorgu önbelleğe isabet etmez. Başlangıçta önbellekten CalendarYear değerlerini ve kaynaktan SalesAmount değerlerini almasını ve ardından sonuçları birleştirmesini bekleyebilirsiniz, ancak bu yaklaşım TOPLA/GROUP BY işlemini kaynak sisteme göndermekten daha az verimlidir. İşlem kaynağa gönderilirse, döndürülen satır sayısı büyük olasılıkla çok daha az olacaktır:
Not
Bu davranış, önbelleğe alınmış ve önbelleğe alınmamış tablolar birleştirildiğinde Power BI Desktop'taki çoka çok ilişkilerinden farklıdır.
Önbellekler eşitlenmiş durumda tutulmalıdır
Önceki bölümde görüntülenen sorgular, İkili tabloların bazen önbelleğe isabet ettiğini ve bazen isabet etmediğini gösterir. Sonuç olarak, önbellek güncel değilse farklı değerler döndürülebilir. Sorgu yürütme, directQuery sonuçlarını önbelleğe alınmış değerlerle eşleşecek şekilde filtreleyerek veri sorunlarını maskeleme girişiminde bulunur. Veri akışlarınızı bilmek sizin sorumluluğunuzdadır ve buna göre tasarlamanız gerekir. Gerekirse, bu tür durumları kaynakta işlemek için belirlenmiş teknikler vardır.
İkili depolama modu bir performans iyileştirmesidir. Yalnızca iş gereksinimlerini karşılama becerisini tehlikeye atmayan şekillerde kullanılmalıdır. Alternatif davranış için Power BI Desktop'taki Çoka çok ilişkilerinde açıklanan teknikleri kullanmayı göz önünde bulundurun.
Veri görünümü
Anlam modelindeki en az bir tablonun depolama modu İçeri Aktar veya İkili olarak ayarlandıysa, Veri görünümü sekmesi görüntülenebilir.
Veri görünümünde İkili ve İçeri Aktar tablolarını seçtiğinizde bunlar önbelleğe alınmış verileri gösterir. DirectQuery tablolarında veri gösterilmez ve DirectQuery tablolarının gösterilemeyeceklerini belirten bir ileti görüntülenir.
Dikkat edilecekler ve sınırlamalar
Depolama modunun geçerli sürümü ve bileşik modellerle bağıntısıyla ilgili birkaç sınırlama vardır.
Aşağıdaki canlı bağlantı (çok boyutlu) kaynaklar bileşik modellerle kullanılamaz:
- SAP HANA
- SAP Business Warehouse
DirectQuery kullanarak bu çok boyutlu kaynaklara bağlandığınızda, başka bir DirectQuery kaynağına bağlanamaz veya içeri aktarılan verilerle birleştiremezsiniz.
Bileşik modelleri kullandığınızda DirectQuery kullanımıyla ilgili mevcut sınırlamalar geçerli olmaya devam eder. Bu sınırlamaların çoğu artık tablonun depolama moduna bağlı olarak tablo başınadır. Örneğin, içeri aktarılan bir tablodaki hesaplanmış sütun diğer tablolara başvurabilir, ancak DirectQuery tablosundaki hesaplanmış sütun yine de yalnızca aynı tablodaki sütunlara başvurmak için kısıtlanmıştır. Model içindeki tablolardan herhangi biri DirectQuery ise, diğer sınırlamalar modelin tamamı için geçerlidir.
İlgili içerik
Bileşik modeller ve DirectQuery hakkında daha fazla bilgi için aşağıdaki makalelere bakın: