Aracılığıyla paylaş


Anlamsal modeller için artımlı yenileme ve gerçek zamanlı veriler

Power BI'daki anlam modelleri için artımlı yenileme ve gerçek zamanlı veriler, dinamik verileri işlemek ve model yenileme performansını geliştirmek için verimli yollar sağlar. Bölüm oluşturma ve yönetimi otomatikleştirildiğinde artımlı yenileme, yenilenmesi gereken veri miktarını azaltır ve gerçek zamanlı verilerin eklenmesine olanak tanır. Bu makalede, hızlı hareket eden verileri yakalamak ve performansı artırmak için Power BI'da artımlı yenileme özelliklerinin nasıl yapılandırılıp kullanılacağı açıklanmaktadır.

Artımlı yenileme, yeni ve güncelleştirilmiş verileri sık sık yükleyen anlam modeli tabloları için otomatik bölüm oluşturma ve yönetim sağlayarak zamanlanmış yenileme işlemlerini genişletir. Çoğu model için bir veya daha fazla tablo, ilişkisel veya yıldız veritabanı şemasındaki olgu tablosu gibi sık değişen ve katlanarak büyüyebilen işlem verileri içerir. Tabloyu bölümlemek, yalnızca en son içeri aktarma bölümlerini yenilemek ve isteğe bağlı olarak gerçek zamanlı veriler için başka bir DirectQuery bölümü kullanmak, yenilenmesi gereken veri miktarını önemli ölçüde azaltabilir. Aynı zamanda bu ilke, veri kaynağındaki en son değişikliklerin sorgu sonuçlarına eklenmesini sağlar.

Artımlı yenileme ve gerçek zamanlı verilerle:

  • Hızlı değişen veriler için daha az yenileme döngüsü gerekir. DirectQuery modu, yüksek yenileme temposu gerektirmeden sorgular işlenirken en son veri güncelleştirmelerini alır.
  • Yenilemeler daha hızlıdır. Yalnızca en son değiştirilen verilerin yenilenmesi gerekir.
  • Yenilemeler daha güvenilirdir. Geçici veri kaynaklarına uzun süre çalışan bağlantılar gerekli değildir. Kaynak verilere yönelik sorgular daha hızlı çalışır ve ağ sorunlarının engellenmesi olasılığını azaltır.
  • Kaynak tüketimi azalır. Yenilenmesi gereken verilerin daha az olması, hem Power BI hem de veri kaynağı sistemlerinde bellek ve diğer kaynakların genel tüketimini azaltır.
  • Büyük anlamsal modeller etkinleştirilir. Milyarlarca satıra sahip olabilecek anlamsal modeller, her yenileme işlemiyle modelin tamamını tamamen yenilemeye gerek kalmadan büyüyebilir.
  • Kurulum kolaydır. Artımlı yenileme ilkeleri Power BI Desktop'ta yalnızca birkaç görevle tanımlanır. Power BI Desktop raporu yayımladığında, hizmet bu ilkeleri her yenilemede otomatik olarak uygular.

Hizmete bir Power BI Desktop modeli yayımladığınızda, yeni modeldeki her tablonun tek bir bölümü vardır. Bu tek bölüm, o tablonun tüm satırlarını içerir. Tablo büyükse (örneğin, on milyonlarca veya daha fazla satır varsa) bu tablo için yenileme uzun sürebilir ve aşırı miktarda kaynak tüketebilir.

Artımlı yenileme ile hizmet, sık yenilenmesi gereken verileri dinamik olarak bölümlere ayırır ve daha az sık yenilenebilen verilerden ayırır. Tablo verileri ayrılmış, büyük/küçük harfe duyarlı adlarla RangeStart Power Query tarih/saat parametreleri kullanılarak filtrelenmiştir.RangeEnd Power BI Desktop'ta artımlı yenilemeyi yapılandırdığınızda, bu parametreler modele yüklenen verilerin yalnızca küçük bir dönemini filtrelemek için kullanılır. Power BI Desktop raporu Power BI hizmeti yayımladığında, ilk yenileme işlemiyle hizmet artımlı yenileme ve geçmiş bölümleri ve isteğe bağlı olarak artımlı yenileme ilkesi ayarlarına dayalı gerçek zamanlı bir DirectQuery bölümü oluşturur. Daha sonra hizmet, her satır için tarih/saat değerlerine göre her bölüm için verileri filtrelemek ve sorgulamak için parametre değerlerini geçersiz kılar.

Sonraki her yenilemede, sorgu filtreleri yalnızca parametreler tarafından dinamik olarak tanımlanan yenileme süresi içindeki satırları döndürür. Yenileme dönemi içinde tarih/saat içeren satırlar yenilenir. Tarih/saat değeri artık yenileme dönemi içinde olmayan satırlar, yenilenmeyen geçmiş dönemin bir parçası haline gelir. Artımlı yenileme ilkesine gerçek zamanlı bir DirectQuery bölümü dahil edilirse, filtresi de yenilenme döneminden sonra gerçekleşen değişiklikleri alacak şekilde güncelleştirilir. Hem yenileme hem de geçmiş dönemler ileriye alınır. Yeni artımlı yenileme bölümleri oluşturulduğunda yenileme bölümleri artık yenileme döneminde geçmiş bölümler haline gelmez. Zaman içinde geçmiş bölümler bir araya geldikçe daha az tanecik hale gelir. Geçmiş bölüm artık ilke tarafından tanımlanan geçmiş dönemde olmadığında, modelden tamamen kaldırılır. Bu davranış, sıralı pencere deseni olarak bilinir.

Sıralı pencere deseni temsil eden grafik.

Artımlı yenilemenin güzelliği, hizmetin tüm bunları sizin için tanımladığınız artımlı yenileme ilkelerine göre işlemesidir. Aslında, ondan oluşturulan işlem ve bölümler hizmette görünmez. Çoğu durumda, model yenileme performansını önemli ölçüde geliştirmek için gereken tek şey iyi tanımlanmış artımlı yenileme ilkesidir. Ancak gerçek zamanlı DirectQuery bölümü yalnızca Premium kapasitelerdeki modeller için desteklenir. Power BI Premium, Analiz için XML (XMLA) uç noktası aracılığıyla daha gelişmiş bölümleme ve yenileme senaryolarına da olanak tanır.

Gereksinimler

Sonraki bölümlerde desteklenen planlar ve veri kaynakları açıklanmaktadır.

Desteklenen planlar

Artımlı yenileme Power BI Premium, Kullanıcı başına Premium, Power BI Pro ve Power BI Embedded modellerinde desteklenir.

DirectQuery ile en son verileri gerçek zamanlı olarak almak yalnızca Power BI Premium, Kullanıcı başına Premium ve Power BI Embedded modellerinde desteklenir.

Desteklenen veri kaynakları

Artımlı yenileme ve gerçek zamanlı veriler, SQL Veritabanı ve Azure Synapse gibi yapılandırılmış, ilişkisel veri kaynakları için en iyi şekilde çalışır, ancak diğer veri kaynakları için de kullanılabilir. Her durumda, veri kaynağınız aşağıdakileri desteklemelidir:

Tarih filtreleme - Veri kaynağı, verilere tarihe göre filtre uygulamak için bazı mekanizmaları desteklemelidir. İlişkisel bir kaynak için bu genellikle hedef tablodaki tarih/saat veya tamsayı veri türünün tarih sütunudur. Tarih/saat veri türü olması gereken RangeStart ve RangeEnd parametreleri, tablo verilerini tarih sütununa göre filtreler. biçimindeki yyyymmddtamsayı vekil tuşlarının tarih sütunları için, RangeStart ve RangeEnd parametrelerindeki tarih/saat değerini tarih sütununun tamsayı vekil anahtarlarıyla eşleşecek şekilde dönüştüren bir işlev oluşturabilirsiniz. Daha fazla bilgi edinmek için bkz . Artımlı yenilemeyi ve gerçek zamanlı verileri yapılandırma - DateTime'ı tamsayıya dönüştürme.

Diğer veri kaynakları için RangeStart ve RangeEnd parametreleri, filtrelemeyi etkinleştirecek şekilde veri kaynağına geçirilmelidir. Dosya ve klasörlerin tarihe göre düzenlendiği dosya tabanlı veri kaynakları için RangeStart ve RangeEnd parametreleri, yüklenecek dosyaları seçmek üzere dosyaları ve klasörleri filtrelemek için kullanılabilir. Web tabanlı veri kaynakları için RangeStart ve RangeEnd parametreleri HTTP isteğiyle tümleştirilebilir. Örneğin, appInsights örneğinden izlemelerin artımlı olarak yenilenmesi için aşağıdaki sorgu kullanılabilir:

let 
    strRangeStart = DateTime.ToText(RangeStart,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    strRangeEnd = DateTime.ToText(RangeEnd,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    Source = Json.Document(Web.Contents("https://api.applicationinsights.io/v1/apps/<app-guid>/query", 
    [Query=[#"query"="traces 
    | where timestamp >= datetime(" & strRangeStart &") 
    | where timestamp < datetime("& strRangeEnd &")
    ",#"x-ms-app"="AAPBI",#"prefer"="ai.response-thinning=true"],Timeout=#duration(0,0,4,0)])),
    TypeMap = #table(
    { "AnalyticsTypes", "Type" }, 
    { 
    { "string",   Text.Type },
    { "int",      Int32.Type },
    { "long",     Int64.Type },
    { "real",     Double.Type },
    { "timespan", Duration.Type },
    { "datetime", DateTimeZone.Type },
    { "bool",     Logical.Type },
    { "guid",     Text.Type },
    { "dynamic",  Text.Type }
    }),
    DataTable = Source[tables]{0},
    Columns = Table.FromRecords(DataTable[columns]),
    ColumnsWithType = Table.Join(Columns, {"type"}, TypeMap , {"AnalyticsTypes"}),
    Rows = Table.FromRows(DataTable[rows], Columns[name]), 
    Table = Table.TransformColumnTypes(Rows, Table.ToList(ColumnsWithType, (c) => { c{0}, c{3}}))
in
Table

Artımlı yenileme yapılandırıldığında, RangeStart ve RangeEnd parametrelerini temel alan bir tarih/saat filtresi içeren bir Power Query ifadesi veri kaynağında yürütülür. İlk kaynak sorgudan sonra bir sorgu adımında filtre belirtilirse, sorguyu kaynağa döndürmenin ilk sorgu adımını RangeStart ve RangeEnd parametrelerine başvuran adımlarla birleştirmesi önemlidir. Örneğin, aşağıdaki sorgu ifadesinde, Table.SelectRows adımdan hemen sonra Sql.Database geldiği için katlanır ve SQL Server katlama işlemini destekler:

let
  Source = Sql.Database("dwdev02","AdventureWorksDW2017"),
  Data  = Source{[Schema="dbo",Item="FactInternetSales"]}[Data],
  #"Filtered Rows" = Table.SelectRows(Data, each [OrderDateKey] >= Int32.From(DateTime.ToText(RangeStart,[Format="yyyyMMdd"]))),
  #"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each [OrderDateKey] < Int32.From(DateTime.ToText(RangeEnd,[Format="yyyyMMdd"])))
  
in
  #"Filtered Rows1"

Katlama işlemini desteklemek için son sorguya gerek yoktur. Örneğin, aşağıdaki ifadede katlanmayan bir NativeQuery kullanırız ancak RangeStart ve RangeEnd parametrelerini doğrudan SQL ile tümleştiririz:

let
  Query = "select * from dbo.FactInternetSales where OrderDateKey >= '"& Text.From(Int32.From( DateTime.ToText(RangeStart,"yyyyMMdd") )) &"' and OrderDateKey < '"& Text.From(Int32.From( DateTime.ToText(RangeEnd,"yyyyMMdd") )) &"' ",
  Source = Sql.Database("dwdev02","AdventureWorksDW2017"),
  Data = Value.NativeQuery(Source, Query, null, [EnableFolding=false])
in
  Data

Ancak artımlı yenileme ilkesi DirectQuery ile gerçek zamanlı veri almayı içeriyorsa, katlanmayan dönüştürmeler kullanılamaz. Gerçek zamanlı veri içermeyen saf bir İçeri Aktarma modu ilkesiyse, sorgu karma altyapısı filtreyi telafi edebilir ve yerel olarak uygulayabilir ve bu da veri kaynağından tablonun tüm satırlarının alınmasını gerektirir. Bu, artımlı yenilemenin yavaş çalışmasına neden olabilir ve işlemin Power BI hizmeti veya şirket içi veri ağ geçidindeki kaynakları tükenerek artımlı yenilemenin amacını etkili bir şekilde yenebilir.

Farklı veri kaynağı türleri için sorgu katlama desteği farklı olduğundan, veri kaynağında çalıştırılan sorgulara filtre mantığının dahil edildiğinden emin olmak için doğrulama gerçekleştirilmelidir. Çoğu durumda Power BI Desktop, artımlı yenileme ilkesini tanımlarken sizin için bu doğrulamayı gerçekleştirmeye çalışır. SQL Veritabanı, Azure Synapse, Oracle ve Teradata gibi SQL tabanlı veri kaynakları için bu doğrulama güvenilirdir. Ancak, diğer veri kaynakları sorguları izlemeden doğrulayamıyor olabilir. Power BI Desktop sorguları doğrulayamıyorsa Artımlı yenileme ilkesi yapılandırma iletişim kutusunda bir uyarı gösterilir.

Sorguyu katlama uyarısının ekran görüntüsü

Bu uyarıyı görürseniz ve gerekli sorguyu kaynağa döndürmenin gerçekleştiğini doğrulamak istiyorsanız Power Query Tanılama özelliğini kullanın veya SQL Profiler gibi veri kaynağı tarafından desteklenen bir aracı kullanarak sorguları izleyin. Sorguyu kaynağa döndürme işlemi gerçekleşmiyorsa, filtre mantığının veri kaynağına geçirilen sorguya eklendiğini doğrulayın. Aksi takdirde, sorgunun katlanmasını engelleyen bir dönüştürme içermesi olasıdır.

Artımlı yenileme çözümünüzü yapılandırmadan önce Power BI Desktop ve Power Query sorguyu kaynağa döndürme ile ilgili Sorgu katlama kılavuzlarını iyice okuduğunuzdan ve anladığınızdan emin olun. Bu makaleler, veri kaynağınızın ve sorgularınızın sorguyu kaynağa döndürmeyi destekleyip desteklemediğini belirlemenize yardımcı olabilir.

Tek veri kaynağı

Power BI Desktop'ı kullanarak artımlı yenileme ve gerçek zamanlı verileri yapılandırdığınızda veya XMLA uç noktası üzerinden Tablosal Model Betik Dili (TMSL) veya Tablosal Nesne Modeli (TOM) kullanarak gelişmiş bir çözüm yapılandırdığınızda, içeri aktarma veya DirectQuery gibi tüm bölümlerin tek bir kaynaktan veri sorgulaması gerekir.

Diğer veri kaynağı türleri

Daha fazla özel sorgu işlevi ve sorgu mantığı kullanılarak, bir klasörde depolanan Excel çalışma kitabı dosyaları, SharePoint'teki dosyalar ve RangeEnd RSS akışları gibi tek bir sorguda RangeStart filtre uygulanıp geçirilebiliyorsa, artımlı yenileme diğer veri kaynağı türleriyle kullanılabilir. Bunların, burada açıklananların ötesinde daha fazla özelleştirme ve test gerektiren gelişmiş senaryolar olduğunu unutmayın. Benzersiz senaryolar için artımlı yenileme kullanma hakkında nasıl daha fazla bilgi bulabileceğinize ilişkin öneriler için bu makalenin devamında Yer alan Topluluk bölümünü gözden geçirin.

Zaman sınırları

Artımlı yenilemeden bağımsız olarak Power BI Pro modellerinin yenileme süresi sınırı iki saattir ve DirectQuery ile gerçek zamanlı veri almayı desteklemez. Premium kapasitedeki modeller için süre sınırı beş saattir. Yenileme işlemleri işlem ve bellek açısından yoğun bir işlemdir. Tam yenileme işlemi yalnızca modelin gerektirdiği bellek miktarının iki katı kadar kullanabilir çünkü hizmet yenileme işlemi tamamlanana kadar modelin anlık görüntüsünü bellekte tutar. Yenileme işlemleri yoğun işlem gücüyle de kullanılabilir CPU kaynaklarının önemli bir kısmını tüketebilir. Yenileme işlemleri ayrıca veri kaynaklarına yönelik geçici bağlantıları ve bu veri kaynağı sistemlerinin sorgu çıkışını hızlı bir şekilde döndürebilmesini sağlamalıdır. Zaman sınırı, kullanılabilir kaynaklarınızın aşırı tüketimini sınırlamaya yönelik bir güvenlik önlemidir.

Not

Premium kapasitelerde, XMLA uç noktası üzerinden gerçekleştirilen yenileme işlemlerinin zaman sınırı yoktur. Daha fazla bilgi edinmek için bkz . XMLA uç noktasıyla gelişmiş artımlı yenileme.

Artımlı yenileme, yenileme işlemlerini modeldeki bölüm düzeyinde iyileştirdiğinden kaynak tüketimi önemli ölçüde azaltılabilir. Aynı zamanda, XMLA uç noktasından geçilmediği sürece artımlı yenilemede bile yenileme işlemleri aynı iki saat ve beş saatlik sınırlara bağlıdır. Etkin bir artımlı yenileme ilkesi, yalnızca yenileme işlemiyle işlenen veri miktarını azaltmakla kalmaz, aynı zamanda modelinizde depolanan gereksiz geçmiş veri miktarını da azaltır.

Sorgular, veri kaynağı için varsayılan süre sınırıyla da sınırlandırılabilir. İlişkisel veri kaynaklarının çoğu Power Query M ifadesindeki zaman sınırlarının geçersiz kılınmasına izin verir. Örneğin, aşağıdaki ifade CommandTimeout değerini iki saate ayarlamak için SQL Server veri erişimi işlevini kullanır. İlke aralıkları tarafından tanımlanan her dönem, komut zaman aşımı ayarını gözlemleyen bir sorgu gönderir:

let
    Source = Sql.Database("myserver.database.windows.net", "AdventureWorks", [CommandTimeout=#duration(0, 2, 0, 0)]),
    dbo_Fact = Source{[Schema="dbo",Item="FactInternetSales"]}[Data],
    #"Filtered Rows" = Table.SelectRows(dbo_Fact, each [OrderDate] >= RangeStart and [OrderDate] < RangeEnd)
in
    #"Filtered Rows"

Büyük olasılıkla milyarlarca satır içeren Premium kapasitelerdeki çok büyük modeller için ilk yenileme işlemi önyüklenebilir. Bootstrapping, hizmetin model için tablo ve bölüm nesneleri oluşturmasına izin verir, ancak bölümlerin hiçbirine veri yükleyip işlemez. SQL Server Management Studio'yu kullanarak, tek bir sorguda döndürülen veri miktarını azaltmak ve ayrıca beş saatlik zaman sınırını atlamak için bölümleri ayrı ayrı, sırayla veya paralel olarak işlenecek şekilde ayarlayabilirsiniz. Daha fazla bilgi edinmek için bkz . Gelişmiş artımlı yenileme - İlk tam yenilemede zaman aşımlarını önleme.

Geçerli tarih ve saat

Varsayılan olarak, geçerli tarih ve saat yenileme sırasında Eşgüdümlü Evrensel Saat (UTC) temelinde belirlenir. İsteğe bağlı ve zamanlanmış yenilemeler için, 'Yenile' altında geçerli tarih ve saat belirlenirken dikkate alınacak farklı bir saat dilimi yapılandırabilirsiniz. Örneğin, saat dilimi yapılandırılmış olarak Pasifik Saati (ABD ve Kanada) saat 20:00'de gerçekleşen yenileme, geçerli tarih ve saati UTC'ye göre değil, sonraki gün döndürecek Pasifik Saati'ne göre belirler.

Saat dilimi giriş alanını gösteren Zamanlanmış yenileme iletişim kutusunun ekran görüntüsü

XMLA TMSL yenileme komutu veya gelişmiş yenileme API'si gibi Power BI hizmeti aracılığıyla çağrılamayan yenileme işlemleri, yapılandırılmış zamanlanmış yenileme saat dilimini ve varsayılan olarak UTC olarak dikkate almayın.

Artımlı yenileme ve gerçek zamanlı verileri yapılandırma

Bu bölümde artımlı yenileme ve gerçek zamanlı verileri yapılandırmayla ilgili önemli kavramlar açıklanmaktadır. Daha ayrıntılı adım adım yönergeler için hazır olduğunuzda bkz . Artımlı yenilemeyi ve gerçek zamanlı verileri yapılandırma.

Artımlı yenilemeyi yapılandırma işlemi Power BI Desktop'ta yapılır. Çoğu model için yalnızca birkaç görev gereklidir. Ancak şu noktaları dikkate almanız gerekir:

  • Power BI hizmeti yayımladıktan sonra aynı modeli Power BI Desktop'tan yeniden yayımlayamazsınız. Yeniden yayımlama, modelde zaten var olan tüm bölümleri ve verileri kaldırır. Premium kapasitede yayımlıyorsanız, sonraki meta veri şeması değişiklikleri açık kaynak ALM Araç Seti gibi araçlarla veya TMSL kullanılarak yapılabilir. Daha fazla bilgi edinmek için bkz . Gelişmiş artımlı yenileme - Yalnızca meta veri dağıtımı.
  • Power BI hizmeti yayımladıktan sonra modeli Power BI Desktop'a .pbix olarak geri indiremezsiniz. Hizmetteki modeller çok büyük olabileceğinden, bunları tipik bir masaüstü bilgisayarda indirip açmak pratik değildir.
  • DirectQuery ile gerçek zamanlı veri alırken modeli Premium olmayan bir çalışma alanında yayımlayamazsınız. Gerçek zamanlı verilerle artımlı yenileme yalnızca Power BI Premium ile desteklenir.

Parametre oluşturma

Power BI Desktop'ta artımlı yenilemeyi yapılandırmak için önce ayrılmış, büyük/küçük harfe duyarlı adlar RangeStart ve RangeEndile iki Power Query tarih/saat parametresi oluşturursunuz. Power Query Düzenleyicisi'daki Parametreleri Yönet iletişim kutusunda tanımlanan bu parametreler başlangıçta Power BI Desktop model tablosuna yüklenen verileri yalnızca bu dönemde tarih/saat içeren satırları içerecek şekilde filtrelemek için kullanılır. RangeStart en eski veya en erken tarihi/saati ve RangeEnd en yeni veya en son tarihi/saati temsil eder. Model hizmete RangeStart yayımlandıktan ve RangeEnd artımlı yenileme ilkesi ayarlarında belirtilen yenileme dönemi tarafından tanımlanan verileri sorgulamak için hizmet tarafından otomatik olarak geçersiz kılındıktan sonra.

Örneğin FactInternetSales veri kaynağı tablosu günlük ortalama 10.000 yeni satırdır. Power BI Desktop'ta modele başlangıçta yüklenen satır sayısını sınırlamak için ile RangeEndarasında RangeStart iki günlük bir süre belirtin.

RangeStart ve RangeEnd parametrelerini gösteren Parametreleri Yönet iletişim kutusunun ekran görüntüsü.

Veri filtreleme

RangeStart ve RangeEnd parametreleri tanımlandığında, tablonuzun tarih sütununa özel tarih filtreleri uygularsınız. Uyguladığınız filtreler, Uygula'yı seçtiğinizde modele yüklenen verilerin bir alt kümesini seçer.

Özel Filtre'nin seçili olduğu sütun bağlam menüsünün ekran görüntüsü

FactInternetSales örneğimizle, parametrelere dayalı filtreler oluşturduktan ve adımları uyguladıktan sonra modele iki günlük veriler (kabaca 20.000 satır) yüklenir.

İlke tanımlama

Filtreler uygulandıktan ve modele bir veri alt kümesi yüklendikten sonra tablo için artımlı yenileme ilkesi tanımlarsınız. Model hizmette yayımlandıktan sonra, ilke hizmet tarafından tablo bölümlerini oluşturmak ve yönetmek ve yenileme işlemleri gerçekleştirmek için kullanılır. İlkeyi tanımlamak için, hem gerekli hem de isteğe bağlı ayarları belirtmek için Artımlı yenileme ve gerçek zamanlı veri iletişim kutusunu kullanırsınız.

Bu tabloyu artımlı olarak yenile seçeneğinin gösterildiği Artımlı yenileme ve gerçek zamanlı veri iletişim kutusunun ekran görüntüsü.

Tablo

Tablo seç liste kutusu varsayılan olarak Veri görünümünde seçtiğiniz tablodur. Kaydırıcı ile tablo için artımlı yenilemeyi etkinleştirin. Tablonun Power Query ifadesi ve RangeEnd parametrelerini temel alan RangeStart bir filtre içermiyorsa iki durumlu düğme kullanılamaz.

Gerekli ayarlar

Yenileme tarihinden önce başlayan Verileri arşivle ayarı, modelde tarih/saat içeren satırların, ayrıca geçerli eksik geçmiş dönemin satırlarının yanı sıra yenileme döneminde geçerli tarih ve saate kadar olan satırları belirler.

Örneğin, beş yıl belirtirseniz, tablo son beş yıllık geçmiş verileri yıl bölümlerinde depolar. Tablo ayrıca geçerli yılın üç aylık dönem, ay veya gün bölümlerine ait yenileme dönemine kadar olan satırları da içerir.

Premium kapasitelerdeki modeller için, yedeklenmiş geçmiş bölümler bu ayar tarafından belirlenen ayrıntı düzeyinde seçmeli olarak yenilenebilir. Daha fazla bilgi edinmek için bkz . Gelişmiş artımlı yenileme - Bölümler.

Yenileme tarihinden önce başlayan artımlı yenileme verileri ayarı, bu dönemde tarih/saat içeren tüm satırların yenileme bölümlerine eklendiği ve her yenileme işlemiyle yenilendiği artımlı yenileme dönemini belirler.

Örneğin, her yenileme işlemiyle üç günlük bir yenileme dönemi belirtirseniz, hizmet, başlangıç ve bitiş tarihi ve saati geçerli tarih ve saate bağlı olarak üç günlük bir süre içinde tarih/saat içeren satırlar için sorgu oluşturmak üzere ve RangeEnd parametrelerini geçersiz kılarRangeStart. Geçerli yenileme işlemi saatine kadar olan son üç gün içinde tarih/saat içeren satırlar yenilenir. Bu tür bir ilkeyle, hizmetteki FactInternetSales model tablomuzun günlük ortalama 10.000 yeni satır olmasını ve her yenileme işlemiyle kabaca 30.000 satırı yenilemesini bekleyebilirsiniz.

Doğru raporlamayı sağlamak için gereken en az satır sayısını içeren bir nokta belirtin. Birden fazla tablo için ilke tanımladığınızda, her tablo için farklı depo ve RangeEnd yenileme dönemleri tanımlansa bile aynı RangeStart ve parametrelerin kullanılması gerekir.

İsteğe bağlı ayarlar

DirectQuery ile en son verileri gerçek zamanlı olarak al (Yalnızca Premium) ayarı, DirectQuery kullanarak veri kaynağındaki seçili tablodan artımlı yenileme döneminin ötesinde en son değişiklikleri getirmenizi sağlar. Artımlı yenileme döneminden sonra tarih/saat içeren tüm satırlar bir DirectQuery bölümüne eklenir ve her model sorgusuyla veri kaynağından getirilir.

Örneğin, bu ayar etkinleştirilirse, her yenileme işlemiyle hizmet yine ve RangeEnd parametrelerini geçersiz kılarak yenileme döneminden RangeStart sonra tarih/saat içeren satırlar için sorgu oluşturur ve başlangıç geçerli tarih ve saate bağımlı olur. Geçerli yenileme işlemi saatinden sonra tarih/saat içeren satırlar da eklenir. Bu tür bir ilkeyle, hizmetteki FactInternetSales model tablosu en son veri güncelleştirmelerini içerir.

Yalnızca tamamlanan günleri yenile ayarı, tüm günün tüm satırlarının yenileme işlemine dahil edilmesini sağlar. DirectQuery ile en son verileri gerçek zamanlı olarak al (Yalnızca Premium) ayarını etkinleştirmediğiniz sürece bu ayar isteğe bağlıdır. Örneğin, yenilemenizin her sabah 04:00'te çalışacak şekilde zamanlanmış olduğunu söyleyebilirsiniz. Veri kaynağı tablosunda gece yarısı ile 04:00 arasındaki bu dört saat içinde yeni veri satırları görünüyorsa, bunları hesaba eklemek istemezsiniz. Petrol ve gaz sektöründe günlük variller gibi bazı iş ölçümleri kısmi günlerle bir anlam ifade etmiyor. Bir diğer örnek de, önceki aya ait verilerin ayın on ikinci takvim gününde onaylandığı bir finansal sistemdeki verileri yenilemektir. Yenileme süresini bir ay olarak ayarlayabilir ve yenilemeyi ayın on ikinci gününde çalışacak şekilde zamanlayabilirsiniz. Bu seçenek seçiliyken, örneğin 12 Şubat'ta Ocak verilerini yeniler.

Zamanlanmış yenileme UTC olmayan bir saat dilimi için yapılandırılmadığı sürece, hizmetteki yenileme işlemleri UTC saati altında çalıştırılır ve bu da geçerlilik tarihini ve tam dönemleri belirleyebilir.

Veri değişikliklerini algıla ayarı daha da seçmeli yenilemeyi etkinleştirir. Yalnızca verilerin değiştiği günleri tanımlamak ve yenilemek için kullanılan tarih/saat sütununu seçebilirsiniz. Bu ayar, genellikle denetim amacıyla veri kaynağında böyle bir sütun olduğunu varsayar. Bu sütun, ve RangeEnd parametreleriyle verileri bölümlemede kullanılan sütunla RangeStart aynı olmamalıdır. Bu sütunun maksimum değeri, artımlı aralıktaki dönemlerin her biri için değerlendirilir. Son yenilemeden bu yana değişmediyse, dönemi yenilemeye gerek yoktur ve bu da artımlı olarak yenilenen günleri üçten bire düşürebilir.

Geçerli tasarım, veri değişikliklerini algılamak için sütunun kalıcı olmasını ve bellekte önbelleğe alınmasını gerektirir. Kardinaliteyi ve bellek tüketimini azaltmak için aşağıdaki teknikler kullanılabilir:

  • Yenileme sırasında, bir Power Query işlevi kullanarak yalnızca sütunun en büyük değerini kalıcı hale ekleyin.
  • Yenileme sıklığı gereksinimleriniz dikkate alındığında duyarlığı kabul edilebilir bir düzeye düşürün.
  • XMLA uç noktasını kullanarak veri değişikliklerini algılamak için özel bir sorgu tanımlayın ve sütun değerinin kalıcı olmasına engel olun.

Bazı durumlarda Veri değişikliklerini algıla seçeneğinin etkinleştirilmesi daha da geliştirilebilir. Örneğin, bellek içi önbellekte son güncelleştirme sütununu kalıcı hale getirmekten kaçınmak veya yapılandırma/yönerge tablosunun yalnızca yenilenmesi gereken bölümleri işaretlemek için ayıklama-dönüştürme-yükleme (ETL) işlemleri tarafından hazırlandığı senaryoları etkinleştirmek isteyebilirsiniz. Bu gibi durumlarda Premium kapasiteler için TMSL ve/veya TOM kullanarak veri değişikliklerini algılama davranışını geçersiz kılın. Daha fazla bilgi edinmek için bkz . Gelişmiş artımlı yenileme - Veri değişikliklerini algılamak için özel sorgular.

Yayımlama

Artımlı yenileme ilkesini yapılandırdıktan sonra modeli hizmete yayımlarsınız. Yayımlama tamamlandığında, modelde ilk yenileme işlemini gerçekleştirebilirsiniz.

Not

DirectQuery ile en son verileri gerçek zamanlı olarak almak için artımlı yenileme ilkesine sahip anlam modelleri yalnızca Premium çalışma alanında yayımlanabilir.

Premium kapasitelere atanan çalışma alanlarına yayımlanan modeller için modelin 1 GB'ın ötesine geçeceğini düşünüyorsanız, hizmetteki ilk yenileme işlemini gerçekleştirmeden önce Büyük anlamsal model depolama biçimi ayarını etkinleştirerek yenileme işlemi performansını geliştirebilir ve modelin boyut sınırlarını aşmadığından emin olabilirsiniz. Daha fazla bilgi edinmek için bkz . Power BI Premium'da büyük modeller.

Önemli

Power BI Desktop modeli hizmette yayımladıktan sonra bu .pbix dosyasını geri indiremezsiniz.

Yenile

Hizmette yayımladıktan sonra modelde ilk yenileme işlemini gerçekleştirirsiniz. İlerleme durumunu izleyebilebilmeniz için bu yenileme tek bir (el ile) yenileme olmalıdır. İlk yenileme işleminin tamamlanması uzun sürebilir. Bölümler oluşturulmalı, geçmiş verileri yüklenmeli, ilişkiler ve hiyerarşiler gibi nesneler derlenmiş veya yeniden oluşturulmalıdır ve hesaplanan nesneler yeniden hesaplanmalıdır.

Tek tek veya zamanlanmış sonraki yenileme işlemleri çok daha hızlıdır çünkü yalnızca artımlı yenileme bölümleri yenilenir. Bölümleri birleştirme ve yeniden hesaplama gibi diğer işleme işlemleri yine de gerçekleşmelidir, ancak genellikle ilk yenilemeden çok daha az zaman alır.

Otomatik rapor yenileme

DirectQuery ile en son verileri gerçek zamanlı olarak almak için artımlı yenileme ilkesine sahip bir model kullanan raporlar için, raporların gecikme olmadan en son verileri içermesi için sabit bir aralıkta veya değişiklik algılamaya dayalı olarak otomatik sayfa yenilemeyi etkinleştirmek iyi bir fikirdir. Daha fazla bilgi edinmek için bkz . Power BI'da otomatik sayfa yenileme.

Gelişmiş artımlı yenileme

Modeliniz XMLA uç noktası etkinleştirilmiş bir Premium kapasitedeyse, gelişmiş senaryolar için artımlı yenileme daha da uzatılabilir. Örneğin, bölümleri görüntülemek ve yönetmek, ilk yenileme işlemini önyüklemek veya yedeklenmiş geçmiş bölümleri yenilemek için SQL Server Management Studio'yu kullanabilirsiniz. Daha fazla bilgi edinmek için bkz . XMLA uç noktasıyla gelişmiş artımlı yenileme.

Topluluk

Power BI, MVP'lerin, BI uzmanlarının ve iş ortaklarının tartışma grupları, videolar, bloglar ve daha fazlası konusunda uzmanlık paylaştığı canlı bir topluluğa sahiptir. Artımlı yenileme hakkında bilgi edinmek için şu kaynaklara bakın: