Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mit Datenflüssen können Sie große Datenmengen in Power BI oder den bereitgestellten Speicher Ihrer Organisation übertragen. In einigen Fällen ist es jedoch nicht praktisch, eine vollständige Kopie der Quelldaten in jeder Aktualisierung zu aktualisieren. Eine gute Alternative ist die inkrementelle Aktualisierung, die die folgenden Vorteile für Datenflüsse bietet:
- Die Aktualisierung erfolgt schneller: Nur geänderte Daten müssen aktualisiert werden. Aktualisieren Sie beispielsweise nur die letzten fünf Tage eines 10-Jahres-Datenflusses.
- Die Aktualisierung ist zuverlässiger: Beispielsweise ist es nicht notwendig, lange laufende Verbindungen mit volatilen Quellsystemen aufrechtzuerhalten.
- Der Ressourcenverbrauch wird reduziert: Weniger Daten zur Aktualisierung reduzieren den Gesamtverbrauch des Arbeitsspeichers und anderer Ressourcen.
Die inkrementelle Aktualisierung ist in Datenflüssen verfügbar, die sowohl in Power BI als auch in Power Apps erstellt wurden. In diesem Artikel werden Bildschirme aus Power BI gezeigt, diese Anweisungen gelten jedoch für Datenflüsse, die in Power BI oder in Power Apps erstellt wurden.
Hinweis
Wenn sich das Schema für eine Tabelle in einem analytischen Datenfluss ändert, erfolgt eine vollständige Aktualisierung, um sicherzustellen, dass alle resultierenden Daten mit dem neuen Schema übereinstimmen. Daher werden alle Daten, die inkrementell gespeichert sind, aktualisiert und in einigen Fällen, wenn das Quellsystem keine historischen Daten speichert, gehen diese verloren.
Für die Verwendung der inkrementellen Aktualisierung in Datenflüssen, die in Power BI erstellt wurden, muss sich der Datenfluss in einem Arbeitsbereich in Premium-Kapazität befinden. Eine inkrementelle Aktualisierung in Power Apps erfordert Power Apps pro App oder benutzerspezifische Pläne und ist nur für Datenflüsse mit Azure Data Lake Storage als Ziel verfügbar.
In Power BI oder Power Apps erfordert die Inkrementelle Aktualisierung, dass beim Datenfluss aufgenommene Quelldaten über ein DateTime-Feld verfügen, nach dem die inkrementelle Aktualisierung gefiltert werden kann.
Konfigurieren der inkrementellen Aktualisierung für Datenflüsse
Ein Datenfluss kann viele Tabellen enthalten. Die inkrementelle Aktualisierung wird auf Tabellenebene eingerichtet, sodass ein Datenfluss sowohl vollständig aktualisierte Tabellen als auch inkrementelle Aktualisierungstabellen enthalten kann.
Um eine inkrementell aktualisierte Tabelle einzurichten, konfigurieren Sie zunächst Ihre Tabelle wie bei jeder anderen Tabelle.
Nachdem der Datenfluss erstellt und gespeichert wurde, wählen Sie in der Tabellenansicht die Option "Inkrementelle Aktualisierung
" aus, wie in der folgenden Abbildung dargestellt.
Wenn Sie das Symbol auswählen, wird das Fenster " Inkrementelle Aktualisierungseinstellungen " angezeigt. Aktivieren Sie die inkrementelle Aktualisierung.
In der folgenden Liste werden die Einstellungen im Fenster " Inkrementelle Aktualisierungseinstellungen " erläutert.
Inkrementelle Aktualisierung ein/aus: Aktiviert oder deaktiviert die inkrementelle Aktualisierungsrichtlinie für die Tabelle.
Dropdownmenü "Filterfeld": Wählt das Abfragefeld aus, nach dem die Tabelle nach Schritten gefiltert werden soll. Dieses Feld enthält nur DateTime-Felder. Sie können die inkrementelle Aktualisierung nicht verwenden, wenn Ihre Tabelle kein DateTime-Feld enthält.
Von Bedeutung
Wählen Sie ein nicht geändertes Datumsfeld für den inkrementellen Aktualisierungsfilter aus. Wenn sich der Feldwert ändert (z. B. mit einem Geändert-Datum-Feld), kann diese Änderung zu Aktualisierungsfehlern aufgrund doppelter Werte in den Daten führen.
Speichern/Aktualisieren von Zeilen aus der Vergangenheit: Das Beispiel in der vorherigen Abbildung veranschaulicht die folgenden Einstellungen.
In diesem Beispiel definieren wir eine Aktualisierungsrichtlinie, um fünf Jahre Daten insgesamt zu speichern und 10 Tage Daten inkrementell zu aktualisieren. Wenn die Tabelle täglich aktualisiert wird, werden die folgenden Aktionen für jeden Aktualisierungsvorgang ausgeführt:
Fügen Sie einen neuen Tag mit Daten hinzu.
Anzeige der letzten 10 Tage bis zum aktuellen Datum.
Entfernen Sie Kalenderjahre, die älter als fünf Jahre vor dem aktuellen Datum sind. Wenn das aktuelle Datum beispielsweise den 1. Januar 2019 ist, wird das Jahr 2013 entfernt.
Die erste Datenflussaktualisierung kann eine Weile dauern, um die Daten der letzten fünf Jahre zu importieren, jedoch werden die nachfolgenden Aktualisierungen wahrscheinlich viel schneller abgeschlossen.
Erkennen von Datenänderungen: Eine inkrementelle Aktualisierung von 10 Tagen ist viel effizienter als eine vollständige Aktualisierung von fünf Jahren, aber Sie können möglicherweise noch besser vorgehen. Wenn Sie das Kontrollkästchen "Datenänderungen erkennen " aktivieren, können Sie eine Datums-/Uhrzeitspalte auswählen, um nur die Tage zu identifizieren und zu aktualisieren, an denen sich die Daten geändert haben. Dabei wird davon ausgegangen, dass eine solche Spalte im Quellsystem vorhanden ist, was in der Regel zu Überwachungszwecken dient. Der Maximalwert dieser Spalte wird für jeden der Zeiträume im Inkrementbereich ausgewertet. Wenn sich diese Daten seit der letzten Aktualisierung nicht geändert haben, müssen Sie den Zeitraum nicht aktualisieren. In diesem Beispiel könnte dies die Anzahl der Tage, die schrittweise aktualisiert wurden, von 10 auf vielleicht 2 verringern.
Tipp
Der aktuelle Entwurf erfordert, dass die Spalte, die verwendet wird, um Datenänderungen zu erkennen, beibehalten und im Arbeitsspeicher zwischengespeichert werden. Möglicherweise sollten Sie eine der folgenden Techniken in Betracht ziehen, um die Kardinalität und den Arbeitsspeicherverbrauch zu verringern:
- Behalten Sie zum Zeitpunkt der Aktualisierung nur den Maximalwert dieser Spalte bei, z. B. mithilfe einer Power Query-Funktion.
- Verringern Sie die Genauigkeit auf eine Ebene, die aufgrund ihrer Aktualisierungshäufigkeitsanforderungen akzeptabel ist.
Nur vollständige Aktualisierungszeiträume: Stellen Sie sich vor, dass Ihre Aktualisierung täglich um 04:00 Uhr ausgeführt werden soll. Wenn Daten während der ersten vier Stunden dieses Tages im Quellsystem angezeigt werden, sollten Sie dies möglicherweise nicht berücksichtigen. Einige Geschäftskennzahlen, wie z. B. Barrels pro Tag in der Öl- und Gasindustrie, sind nicht praktisch oder sinnvoll, um sie auf Basis von Teil-Tagen zu berechnen.
Ein weiteres Beispiel, bei dem nur die Aktualisierung vollständiger Zeiträume geeignet ist, ist das Aktualisieren von Daten aus einem Finanzsystem. Stellen Sie sich ein Finanzsystem vor, in dem Daten für den vorherigen Monat am 12. Kalendertag des Monats genehmigt werden. Sie können den inkrementellen Bereich auf einen Monat festlegen und die Aktualisierung für den 12. Tag des Monats planen. Wenn diese Option ausgewählt ist, aktualisiert das System die Januardaten (den letzten vollständigen monatlichen Zeitraum) am 12. Februar.
Hinweis
Die inkrementelle Aktualisierung des Datenflusses bestimmt Datumsangaben gemäß der folgenden Logik: Wenn eine Aktualisierung geplant ist, verwendet die in der Aktualisierungsrichtlinie definierte inkrementelle Aktualisierung für Datenflüsse die in der Aktualisierungsrichtlinie definierte Zeitzone. Wenn kein Zeitplan für die Aktualisierung vorhanden ist, verwendet die inkrementelle Aktualisierung die Zeit vom Computer, auf dem die Aktualisierung ausgeführt wird.
Nachdem die inkrementelle Aktualisierung konfiguriert wurde, ändert der Datenfluss Ihre Abfrage automatisch so, dass sie nach Datum gefiltert wird. Wenn der Datenfluss in Power BI erstellt wurde, können Sie die automatisch generierte Abfrage auch mithilfe des erweiterten Editors in Power Query bearbeiten, um Ihre Aktualisierung zu optimieren oder anzupassen. Weitere Informationen zur inkrementellen Aktualisierung und zur Funktionsweise finden Sie in den folgenden Abschnitten.
Hinweis
Wenn Sie den Datenfluss bearbeiten, stellt der Power Query-Editor eine direkte Verbindung zur Datenquelle her und zeigt im Datenfluss die zwischengespeicherten oder gefilterten Daten nach der Verarbeitung der inkrementellen Aktualisierungsrichtlinie nicht an. Um die im Datenfluss zwischengespeicherten Daten zu überprüfen, stellen Sie nach der Konfiguration der inkrementellen Aktualisierungsrichtlinie eine Verbindung zwischen Power BI Desktop und dem Datenfluss her.
Inkrementeller Aktualisierungsvorgang und verknüpfte Tabellen gegenüber berechneten Tabellen
Bei verknüpften Tabellen aktualisiert die inkrementelle Aktualisierung die Quelltabelle. Da verknüpfte Tabellen einfach ein Zeiger auf die ursprüngliche Tabelle sind, hat die inkrementelle Aktualisierung keine Auswirkungen auf die verknüpfte Tabelle. Wenn die Quelltabelle gemäß ihrer definierten Aktualisierungsrichtlinie aktualisiert wird, sollte jede verknüpfte Tabelle davon ausgehen, dass die Daten in der Quelle aktualisiert werden.
Berechnete Tabellen basieren auf Abfragen, die über einen Datenspeicher ausgeführt werden, was ein anderer Datenfluss sein kann. Als solche verhalten sich berechnete Tabellen auf die gleiche Weise wie verknüpfte Tabellen.
Da sich berechnete Tabellen und verknüpfte Tabellen ähnlich verhalten, sind die Anforderungen und Konfigurationsschritte für beide identisch. Ein Unterschied besteht darin, dass bei berechneten Tabellen in bestimmten Konfigurationen die inkrementelle Aktualisierung aufgrund der Art und Weise, wie Partitionen erstellt werden, nicht optimiert ausgeführt werden kann.
Wechseln zwischen inkrementeller und vollständiger Aktualisierung
Datenflüsse unterstützen das Ändern der Aktualisierungsrichtlinie zwischen inkrementeller und vollständiger Aktualisierung. Wenn eine Änderung in beide Richtungen erfolgt (vollständig bis inkrementell oder inkrementell bis vollständig), wirkt sich die Änderung auf den Datenfluss nach der nächsten Aktualisierung aus.
Wenn Sie einen Datenfluss von einer vollständigen auf eine inkrementelle Aktualisierung umstellen, aktualisiert die neue Aktualisierungslogik den Datenfluss, indem sie dem Aktualisierungsfenster und dem Inkrement entspricht, wie das in den inkrementellen Aktualisierungseinstellungen definiert ist.
Wenn Sie einen Datenfluss von der inkrementellen in die vollständige Aktualisierung verschieben, überschreibt alle daten, die in der inkrementellen Aktualisierung gesammelt wurden, die in der vollständigen Aktualisierung definierte Richtlinie. Sie müssen diese Aktion genehmigen.
Unterstützung der Zeitzone bei der inkrementellen Aktualisierung
Die inkrementelle Aktualisierung des Datenflusses hängt von der Zeit ab, zu der sie ausgeführt wird. Die Filterung der Abfrage hängt von dem Tag ab, an dem sie ausgeführt wird.
Um diese Abhängigkeiten zu berücksichtigen und die Datenkonsistenz sicherzustellen, implementiert die inkrementelle Aktualisierung für Dataflows die folgende Heuristik für refresh now-Szenarien:
Wenn eine geplante Aktualisierung im System definiert ist, verwendet die inkrementelle Aktualisierung die Zeitzoneneinstellungen aus dem Abschnitt "Geplante Aktualisierung". Durch diesen Prozess wird sichergestellt, dass die Zeitzone, in der der Datenfluss aktualisiert wird, immer mit der Definition des Systems konsistent ist.
Wenn keine geplante Aktualisierung definiert ist, verwenden Datenflüsse die Zeitzone vom Computer des Benutzers, der die Aktualisierung durchführt.
Die inkrementelle Aktualisierung kann auch mithilfe von APIs aufgerufen werden. In diesem Fall kann der API-Aufruf eine Zeitzoneneinstellung enthalten, die in der Aktualisierung verwendet wird. Die Verwendung von APIs kann für Test- und Validierungszwecke hilfreich sein.
Details zur Implementierung inkrementeller Aktualisierungen
Datenflüsse verwenden Partitionierung für die inkrementelle Aktualisierung. Die inkrementelle Aktualisierung in Datenflüssen behält die Mindestanzahl von Partitionen bei, um die Aktualisierungsrichtlinienanforderungen zu erfüllen. Alte Partitionen, die außerhalb des Bereichs liegen, werden gelöscht, wodurch ein gleitendes Fenster beibehalten wird. Partitionen werden opportunistisch zusammengeführt, wodurch die Gesamtanzahl der erforderlichen Partitionen reduziert wird. Diese Mindestanzahl von Partitionen verbessert die Komprimierung und kann in einigen Fällen die Abfrageleistung verbessern.
Die Beispiele in diesem Abschnitt teilen die folgende Aktualisierungsrichtlinie:
- Speichern von Zeilen im letzten 1 Quartal
- Aktualisierung der Zeilen in den letzten 10 Tagen
- Datenänderungen erkennen = False
- Nur vollständige Tage aktualisieren = True
Verbinden von Partitionen
In diesem Beispiel werden Tagespartitionen automatisch mit der Monatsebene zusammengeführt, nachdem sie sich außerhalb des inkrementellen Bereichs befinden. Partitionen im inkrementellen Bereich müssen auf täglicher Basis gepflegt werden, damit nur diese Tage aktualisiert werden können. Der Aktualisierungsvorgang mit dem Ausführungsdatum 12.11.2016 führt die Tage im November zusammen, da sie außerhalb des inkrementellen Bereichs liegen.
Alte Partitionen entfernen
Alte Partitionen, die außerhalb des Gesamtbereichs liegen, werden entfernt. Der Aktualisierungsvorgang mit Ausführungsdatum 1/2/2017 entfernt die Partition des 3. Quartals 2016, da sie außerhalb des gesamten Bereichs liegt.
Wiederherstellung von längerem Ausfall
In diesem Beispiel wird simuliert, wie das System einwandfrei von einem ausgedehnten Ausfall wiederhergestellt wird. Angenommen, die Aktualisierung wird nicht erfolgreich ausgeführt, da die Anmeldeinformationen der Datenquelle abgelaufen sind, und die Behebung des Problems dauert 13 Tage. Der inkrementelle Bereich beträgt nur 10 Tage.
Der nächste erfolgreiche Aktualisierungsvorgang mit dem Ausführungsdatum 1.15.2017 muss die fehlenden 13 Tage zurückfüllen und aktualisieren. Sie muss auch die vorherigen neun Tage aktualisieren, da sie nicht im normalen Zeitplan aktualisiert wurden. Mit anderen Worten, der inkrementelle Bereich wird von 10 auf 22 Tage erhöht.
Der nächste Aktualisierungsvorgang mit dem Ausführungsdatum 16.16.2017 bietet die Möglichkeit, die Tage im Dezember und die Monate in Q4 von 2016 zusammenzuführen.
Datenfluss inkrementelle Aktualisierung und Datensätze
Die inkrementelle Aktualisierung des Datenflusses und die inkrementelle Aktualisierung des Datensatzes sind dafür konzipiert, nahtlos zusammenzuarbeiten. Es ist akzeptabel und wird unterstützt, eine inkrementell aktualisierte Tabelle in einem Datenfluss vollständig in einen Datensatz zu laden, oder eine vollständig geladene Tabelle in einem Datenfluss inkrementell in einen Datensatz zu laden.
Beide Ansätze funktionieren gemäß Ihren angegebenen Definitionen in den Aktualisierungseinstellungen. Weitere Informationen: Inkrementelle Aktualisierung in Power BI Premium
Verwandte Inhalte
In diesem Artikel wurde die inkrementelle Aktualisierung für Datenflüsse beschrieben. Hier sind einige weitere Artikel, die nützlich sein können:
- Self-Service-Datenaufbereitung in Power BI
- Erstellen berechneter Tabellen in Datenflüssen
- Verbindung zu Datenquellen für Dataflows
- Verknüpfen von Tabellen zwischen Datenflüssen
- Erstellen und Verwenden von Datenflüssen in Power BI
- Verwenden von Datenflüssen mit lokalen Datenquellen
- Entwicklerressourcen für Power BI-Datenflüsse
Weitere Informationen zu Power Query und geplanter Aktualisierung finden Sie in den folgenden Artikeln:
Weitere Informationen zum allgemeinen Datenmodell finden Sie im Übersichtsartikel: