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.
Automatische Aggregationen verwenden modernstes maschinelles Lernen (MACHINE Learning, ML), um directQuery-Semantikmodelle kontinuierlich für maximale Berichtsabfrageleistung zu optimieren. Automatische Aggregationen basieren auf der vorhandenen benutzerdefinierten Aggregationsinfrastruktur , die erstmals mit zusammengesetzten Modellen für Power BI eingeführt wurde. Im Gegensatz zu benutzerdefinierten Aggregationen erfordern automatische Aggregationen keine ™umfangreichen Datenmodellierungs- und Abfrageoptimierungsfähigkeiten, um sie zu konfigurieren und zu verwalten. Automatische Aggregationen sind sowohl selbstlernend als auch selbstoptimierend. Sie ermöglichen Modellbesitzern jeder Fähigkeitsstufe, die Abfrageleistung zu verbessern und schnellere Berichtsvisualisierungen für große Modelle bereitzustellen.
Mit automatischen Aggregationen:
- Berichtsvisualisierungen sind schneller – Ein optimaler Prozentsatz der Berichtsabfragen wird von einem automatisch verwalteten Cache für Speicheraggregationen anstelle von Back-End-Datenquellensystemen zurückgegeben. Ausreißerabfragen, die nicht vom Speichercache zurückgegeben werden, werden mithilfe von DirectQuery direkt an die Datenquelle übergeben.
- Ausgewogene Architektur – Im Vergleich zum reinen DirectQuery-Modus werden die meisten Abfrageergebnisse vom Power BI-Abfragemodul und im Arbeitsspeicheraggregationscache zurückgegeben. Die Auslastung der Abfrageverarbeitung auf Datenquellensystemen zu Spitzenberichtszeiten kann erheblich reduziert werden, was eine höhere Skalierbarkeit im Datenquellen-Back-End bedeutet.
- Einfache Einrichtung – Modellbesitzer können automatische Aggregationsschulungen aktivieren und eine oder mehrere Aktualisierungen für das Modell planen. Mit der ersten Schulung und Aktualisierung beginnen automatische Aggregationen mit der Erstellung eines Aggregationsframeworks und optimaler Aggregationen. Das System passt sich im Laufe der Zeit automatisch an.
- Feinabstimmung – Mit einer einfachen und intuitiven Benutzeroberfläche in den Modelleinstellungen können Sie die Leistungssteigerungen für einen anderen Prozentsatz der Abfragen, die aus dem In-Memory-Aggregations-Cache zurückgegeben werden, schätzen und Anpassungen für noch größere Gewinne vornehmen. Ein einzelnes Schieberegler-Steuerelement hilft Ihnen, Ihre Umgebung einfach zu optimieren.
Anforderungen
Unterstützte Pläne
Automatische Aggregationen werden für Power BI Premium pro Kapazität, Premium pro Benutzer und Power BI Embedded-Modelle unterstützt.
Unterstützte Datenquellen
Automatische Aggregationen werden für die folgenden Datenquellen unterstützt:
- Azure SQL-Datenbank
- Dedizierter SQL-Pool von Azure Synapse
- SQL Server 2019 oder höher
- Google BigQuery-Datenanalyseplattform
- Schneeflocke
- Databricks, eine Plattform für Datenanalyse
- Amazon Redshift
Unterstützte Modi
Automatische Aggregationen werden für DirectQuery-Modusmodelle unterstützt. Zusammengesetzte Modellmodelle mit Importtabellen und DirectQuery-Verbindungen werden unterstützt. Automatische Aggregationen werden nur für die DirectQuery-Verbindung unterstützt.
Erlaubnisse
Um automatische Aggregationen zu aktivieren und zu konfigurieren, müssen Sie der Modellbesitzer sein. Arbeitsbereichsadministratoren können als Besitzer übernehmen, um die Einstellungen für automatische Aggregationen zu konfigurieren.
Konfigurieren automatischer Aggregationen
Automatische Aggregationen werden in den Modelleinstellungen konfiguriert. Das Konfigurieren ist einfach – aktivieren Sie automatische Aggregationsschulungen und planen Sie eine oder mehrere Aktualisierungen. Bevor Sie automatische Aggregationen für Ihr Modell konfigurieren, lesen Sie diesen Artikel unbedingt vollständig. Es bietet ein gutes Verständnis dafür, wie automatische Aggregationen funktionieren und Ihnen helfen, zu entscheiden, ob automatische Aggregationen für Ihre Umgebung geeignet sind. Wenn Sie bereit sind für schrittweise Anleitungen zum Aktivieren der automatischen Aggregationen, zum Konfigurieren eines Aktualisierungszeitplans und zur Feinabstimmung für Ihre Umgebung, lesen Sie Konfigurieren automatischer Aggregationen.
Vorteile
Bei DirectQuery werden jedes Mal, wenn ein Modellbenutzer einen Bericht öffnet oder mit einer Berichtsvisualisierung interagiert, Datenanalyseausdrücke (DATA Analysis Expressions, DAX) an das Abfragemodul und dann als SQL-Abfragen an die Back-End-Datenquelle übergeben. Die Datenquelle muss ergebnisse für jede Abfrage berechnen und zurückgeben. Im Vergleich zu im Arbeitsspeicher gespeicherten Importmodusmodellen können DirectQuery-Datenquellen-Roundtrips sowohl zeit- als auch prozessintensiv sein, was häufig zu langsamen Abfrageantwortzeiten in Berichtsvisualisierungen führt.
Wenn diese Option für ein DirectQuery-Modell aktiviert ist, können automatische Aggregationen die Leistung von Berichtsabfragen steigern, indem Datenquellenabfrage-Roundtrips vermieden werden. Vorab aggregierte Abfrageergebnisse werden automatisch von einem Speicheraggregationscache zurückgegeben, anstatt an die Datenquelle gesendet und zurückgegeben zu werden. Die Menge der vorab aggregierten Daten im In-Memory-Aggregationscache ist ein kleiner Bruchteil der Datenmenge, die in den Fakten- und Detailtabellen der Datenquelle gespeichert werden. Das Ergebnis ist nicht nur eine bessere Berichtsabfrageleistung, sondern auch eine reduzierte Auslastung von Back-End-Datenquellensystemen. Bei automatischen Aggregationen werden nur ein kleiner Teil von Berichts- und Ad-hoc-Abfragen, die Aggregationen erfordern, die nicht im Speichercache enthalten sind, an die Back-End-Datenquelle übergeben, genau wie im reinen DirectQuery-Modus.
Automatische Verwaltung von Abfragen und Aggregationen
Während automatische Aggregationen die Notwendigkeit vermeiden, benutzerdefinierte Aggregationstabellen zu erstellen und die Implementierung einer vorab aggregierten Datenlösung erheblich zu vereinfachen, ist eine tiefere Vertrautheit mit den zugrunde liegenden Prozessen und Abhängigkeiten hilfreich, um zu verstehen, wie automatische Aggregationen funktionieren. Power BI basiert auf folgenden Komponenten, um automatische Aggregationen zu erstellen und zu verwalten.
Abfrageprotokoll
Power BI verfolgt Modell- und Benutzerberichtsabfragen in einem Abfrageprotokoll. Für jedes Modell verwaltet Power BI sieben Tage Abfrageprotokolldaten. Abfrageprotokolldaten werden jeden Tag vorwärts verschoben. Das Abfrageprotokoll ist sicher und für Benutzer oder über den XMLA-Endpunkt nicht sichtbar.
Schulungsvorgänge
Im Rahmen des ersten geplanten Modellaktualisierungsvorgangs für Die ausgewählte Häufigkeit (Tag oder Woche) initiiert Power BI zunächst einen Schulungsvorgang, der das Abfrageprotokoll auswertet, um sicherzustellen, dass Aggregationen im Cache im Arbeitsspeicher an sich ändernde Abfragemuster angepasst werden. In-Memory-Aggregationstabellen werden erstellt, aktualisiert oder verworfen, und spezielle Abfragen werden an die Datenquelle gesendet, um Aggregationen zu bestimmen, die im Cache enthalten sein sollen. Berechnete Aggregationsdaten werden jedoch während der Schulung nicht in den Speichercache geladen – sie wird während des nachfolgenden Aktualisierungsvorgangs geladen.
Wenn Sie beispielsweise eine Tageshäufigkeit auswählen und der Zeitplan um 04:00 Uhr, 09:00 Uhr, 17:00 Uhr und 17:00 Uhr aktualisiert wird, umfasst nur die Aktualisierung um 4:00 Uhr jeden Tag sowohl einen Schulungsvorgang als auch einen Aktualisierungsvorgang. Die nachfolgenden um 9:00 Uhr, 14:00 Uhr und 19:00 Uhr geplanten Aktualisierungen für diesen Tag sind ausschließlich Aktualisierungsvorgänge, die die vorhandenen Aggregationen im Cache aktualisieren.
Während Schulungsvorgänge vergangene Abfragen aus dem Abfrageprotokoll auswerten, sind die Ergebnisse ausreichend genau, um sicherzustellen, dass zukünftige Abfragen abgedeckt werden. Es gibt jedoch keine Garantie dafür, dass zukünftige Abfragen vom Speicheraggregationscache zurückgegeben werden, da diese neuen Abfragen anders sein könnten als diejenigen, die aus dem Abfrageprotokoll abgeleitet wurden. Diese Abfragen, die nicht vom Cache für speicherinterne Aggregationen zurückgegeben werden, werden mithilfe von DirectQuery an die Datenquelle übergeben. Je nach Häufigkeit und Rangfolge dieser neuen Abfragen können Aggregationen für diese im Cache für Speicheraggregationen mit dem nächsten Schulungsvorgang enthalten sein.
Der Schulungsvorgang hat eine Zeitbeschränkung von 60 Minuten. Wenn die Schulung das gesamte Abfrageprotokoll nicht innerhalb des Zeitlimits verarbeiten kann, wird eine Benachrichtigung im Aktualisierungsverlauf des Modells protokolliert und wird beim nächsten Start fortgesetzt. Der Schulungszyklus wird abgeschlossen und ersetzt die vorhandenen automatischen Aggregationen, wenn das gesamte Abfrageprotokoll verarbeitet wird.
Aktualisierungsvorgänge
Wie zuvor beschrieben, führt Power BI nach Abschluss des Schulungsvorgangs als Teil der ersten geplanten Aktualisierung für Ihre ausgewählte Häufigkeit einen Aktualisierungsvorgang aus, der Daten abfragt und neue und aktualisierte Aggregationen in den Cache der Speicheraggregationen lädt und alle Aggregationen entfernt, die nicht mehr hoch genug sind (wie durch den Schulungsalgorithmus bestimmt). Alle nachfolgenden Aktualisierungen für die ausgewählte Tages- oder Wochenhäufigkeit sind Nur-Aktualisierungsvorgänge, die die Datenquelle abfragen, um die vorhandenen Aggregationsdaten im Cache zu aktualisieren. Bei Verwendung des vorherigen Beispiels sind die geplanten Aktualisierungen für diesen Tag um 09:00 Uhr, 14:00 Uhr und 19:00 Uhr nur Aktualisierungsvorgänge.
Regelmäßige Aktualisierungen am Tag (oder der Woche) stellen sicher, dass Aggregationsdaten im Cache mit Daten in der Back-End-Datenquelle auf dem neuesten Stand sind. Mithilfe von Modelleinstellungen können Sie bis zu 48 Aktualisierungen pro Tag planen, um sicherzustellen, dass Berichtsabfragen, die vom Aggregationscache zurückgegeben werden, Ergebnisse basierend auf den neuesten aktualisierten Daten aus der Back-End-Datenquelle erhalten.
Vorsicht
Schulungs- und Aktualisierungsvorgänge sind prozess- und ressourcenintensiv sowohl für den Power BI-Dienst als auch für die Datenquellensysteme. Das Erhöhen des Prozentsatzes von Abfragen, die Aggregationen verwenden, bedeutet, dass während des Schulungs- und Aktualisierungsvorgangs mehr Aggregationen abgefragt und aus Datenquellen berechnet werden müssen, wodurch die Wahrscheinlichkeit erhöht wird, dass Systemressourcen übermäßig verwendet werden und möglicherweise Timeouts verursacht werden. Weitere Informationen finden Sie unter Feintuning.
Schulung bei Bedarf
Wie bereits erwähnt, kann ein Schulungszyklus nicht innerhalb der Zeitlimits eines einzelnen Datenaktualisierungszyklus abgeschlossen werden. Wenn Sie nicht bis zum nächsten geplanten Aktualisierungszyklus, der Schulungen umfasst, warten möchten, können Sie auch automatische Aggregationsschulungen bei Bedarf auslösen, indem Sie in den Modelleinstellungen "Jetzt trainieren und aktualisieren" auswählen. Durch die Verwendung von Train and Refresh Now werden sowohl ein Schulungsvorgang als auch ein Aktualisierungsvorgang ausgelöst. Überprüfen Sie den Aktualisierungsverlauf des Modells, um festzustellen, ob der aktuelle Vorgang abgeschlossen ist, bevor bei Bedarf ein weiterer On-Demand-Schulungs- und Aktualisierungsvorgang ausgeführt wird.
Verlauf aktualisieren
Jeder Aktualisierungsvorgang wird im Aktualisierungsverlauf des Modells aufgezeichnet. Wichtige Informationen zu jeder Aktualisierung werden angezeigt, einschließlich der Anzahl der Speicheraggregationen im Cache, die im Verhältnis zum konfigurierten Abfrageprozentsatz den Speicher nutzen. Um den Aktualisierungsverlauf anzuzeigen, wählen Sie auf der Seite "Modelleinstellungen" die Option "Aktualisierungsverlauf" aus. Wenn Sie einen Drilldown ein wenig weiter ausführen möchten, wählen Sie "Details anzeigen" aus.
Durch regelmäßige Überprüfung des Aktualisierungsverlaufs können Sie sicherstellen, dass Ihre geplanten Aktualisierungsvorgänge innerhalb eines akzeptablen Zeitraums abgeschlossen werden. Stellen Sie sicher, dass Aktualisierungsvorgänge erfolgreich abgeschlossen werden, bevor die nächste geplante Aktualisierung beginnt.
Schulungs- und Aktualisierungsfehler
Während Power BI Schulungs- und Aktualisierungsvorgänge als Teil der ersten geplanten Aktualisierung für die von Ihnen ausgewählte Tages- oder Wochenhäufigkeit durchführt, werden diese Vorgänge als separate Transaktionen implementiert. Wenn ein Schulungsvorgang das Abfrageprotokoll nicht vollständig innerhalb seiner Zeitlimits verarbeiten kann, wird Power BI die aktualisierung der vorhandenen Aggregationen (und reguläre Tabellen in einem zusammengesetzten Modell) mithilfe des vorherigen Schulungszustands fortsetzen. In diesem Fall gibt der Aktualisierungsverlauf an, dass die Aktualisierung erfolgreich war, und die Schulung wird die Verarbeitung des Abfrageprotokolls fortsetzen, wenn die Schulung das nächste Mal gestartet wird. Die Abfrageleistung ist möglicherweise weniger optimiert, wenn Abfragemuster des Clientberichts geändert wurden und Aggregationen noch nicht angepasst wurden, aber die erreichte Leistungsstufe sollte noch viel besser sein als ein reines DirectQuery-Modell ohne Aggregationen.
Wenn für einen Schulungsvorgang zu viele Zyklen erforderlich sind, um die Verarbeitung des Abfrageprotokolls abzuschließen, sollten Sie in Betracht ziehen, den Prozentsatz der Abfragen zu reduzieren, die den Cache für die In-Memory-Aggregationen in den Modelleinstellungen verwenden. Dadurch wird die Anzahl der im Cache erstellten Aggregationen reduziert, aber es ist mehr Zeit für Schulungs- und Aktualisierungsvorgänge erforderlich. Weitere Informationen finden Sie unter Feinabstimmung.
Wenn die Schulung erfolgreich ist, die Aktualisierung jedoch fehlschlägt, wird die gesamte Aktualisierung als fehlgeschlagen gekennzeichnet, da das Ergebnis ein nicht verfügbarer Cache für Speicheraggregationen ist.
Beim Planen der Aktualisierung können Sie E-Mail-Benachrichtigungen angeben, wenn Aktualisierungsfehler auftreten.
Benutzerdefinierte und automatische Aggregationen
Benutzerdefinierte Aggregationen in Power BI können basierend auf ausgeblendeten aggregierten Tabellen im Modell manuell konfiguriert werden. Das Konfigurieren von benutzerdefinierten Aggregationen ist häufig komplex und erfordert eine höhere Datenmodellierungs- und Abfrageoptimierungskompetenz. Automatische Aggregationen dagegen beseitigen diese Komplexität als Teil eines KI-gesteuerten Systems. Im Gegensatz zu benutzerdefinierten Aggregationen, die statisch bleiben, verwaltet Power BI kontinuierlich Abfrageprotokolle und aus diesen Protokollen bestimmt Abfragemuster basierend auf Machine Learning (ML)-Prädiktivmodellierungsalgorithmen. Vorab aggregierte Daten werden basierend auf der Abfragemusteranalyse berechnet und im Arbeitsspeicher gespeichert. Bei automatischen Aggregationen sind Modelle sowohl selbstlernend als auch selbstoptimierend. Wenn sich Abfragemuster des Clientberichts ändern, passen sich automatische Aggregationen an, priorisieren und zwischenspeichern diese Aggregationen am häufigsten.
Da automatische Aggregationen auf der vorhandenen benutzerdefinierten Aggregationsinfrastruktur basieren, ist es möglich, sowohl benutzerdefinierte als auch automatische Aggregationen im selben Modell zusammen zu verwenden. Erfahrene Datenmodellierer können Aggregationen für Tabellen mit DirectQuery, Import (mit oder ohne inkrementelle Aktualisierung) oder dualen Speichermodi definieren und gleichzeitig den Vorteil von mehr automatischen Aggregationen für Abfragen über DirectQuery-Verbindungen nutzen, die nicht auf die benutzerdefinierten Aggregationstabellen zugreifen. Diese Flexibilität ermöglicht ausgewogene Architekturen, die Abfragelasten reduzieren und Engpässe vermeiden können.
Aggregationen, die im Speichercache durch den Automatischen Aggregationstrainingsalgorithmus erstellt werden, werden als System Aggregationen identifiziert. Der Schulungsalgorithmus erstellt und löscht nur diese System Aggregationen, da Berichtsabfragen analysiert werden und Anpassungen vorgenommen werden, um die optimalen Aggregationen für das Modell aufrechtzuerhalten. Sowohl benutzerdefinierte als auch automatische Aggregationen werden mit der Aktualisierung aktualisiert. Nur diese Aggregationen, die von automatischen Aggregationen erstellt und als vom System generierte Aggregationen gekennzeichnet sind, werden in die automatische Aggregationsverarbeitung einbezogen.
Zwischenspeichern von Abfragen und automatische Aggregationen
Power BI Premium unterstützt auch die Abfragezwischenspeicherung in Power BI Premium/Embedded , um Abfrageergebnisse aufrechtzuerhalten. Das Zwischenspeichern von Abfragen unterscheidet sich von automatischen Aggregationen. Bei der Abfragezwischenspeicherung verwendet Power BI Premium seinen lokalen Cachedienst zum Implementieren der Zwischenspeicherung, während automatische Aggregationen auf Modellebene implementiert werden. Bei der Abfragezwischenspeicherung speichert der Dienst nur Abfragen für das Laden der ersten Berichtsseite, daher verbessert sich die Abfrageleistung nicht, wenn Benutzer mit einem Bericht interagieren. Im Gegensatz dazu optimieren automatische Aggregationen die meisten Berichtsabfragen durch vorab zwischenspeichern aggregierte Abfrageergebnisse, einschließlich der Abfragen, die generiert werden, wenn Benutzer mit Berichten interagieren. Abfragezwischenspeicherung und automatische Aggregationen können für ein Modell aktiviert werden, aber es ist wahrscheinlich nicht erforderlich.
Überwachen mit Azure Log Analytics
Azure Log Analytics (LA) ist ein Dienst in Azure Monitor, den Power BI zum Speichern von Aktivitätsprotokollen verwenden kann. Mit der Azure Monitor-Suite können Sie Telemetriedaten aus Ihren Azure- und lokalen Umgebungen sammeln, analysieren und bearbeiten. Es bietet langfristigen Speicher, eine Ad-hoc-Abfrageschnittstelle und API-Zugriff, um Datenexport und Integration in andere Systeme zu ermöglichen. Weitere Informationen finden Sie unter Verwenden von Azure Log Analytics in Power BI.
Wenn Power BI mit einem Azure LA-Konto konfiguriert ist, wie unter Konfigurieren von Azure Log Analytics für Power BI beschrieben, können Sie die Erfolgsrate Ihrer automatischen Aggregationen analysieren. Unter anderem können Sie ermitteln, ob Berichtsabfragen aus dem Speichercache beantwortet werden.
Um diese Möglichkeit zu nutzen, laden Sie die PBIT-Vorlage herunter , und verbinden Sie sie mit Ihrem Protokollanalysekonto, wie in diesem Power BI-Blogbeitrag beschrieben. Im Bericht können Sie Daten auf drei verschiedenen Ebenen anzeigen: Zusammenfassungsansicht, DAX-Abfrageebenenansicht und SQL-Abfrageebenenansicht.
Die folgende Abbildung zeigt die Zusammenfassungsseite für alle Abfragen. Wie Sie sehen können, zeigt das markierte Diagramm den Prozentsatz der Gesamtabfragen an, die von Aggregationen im Vergleich zu den Abfragen erfüllt wurden, die die Datenquelle verwenden mussten.
Der nächste Schritt, um tiefer zu gehen, besteht darin, die Verwendung von Aggregationen auf DAX-Abfrageebene zu untersuchen. Klicken Sie mit der rechten Maustaste auf eine DAX-Abfrage aus der Liste (unten links), >drill through>Query history.
Dadurch erhalten Sie eine Liste aller relevanten Abfragen. Führen Sie einen Drilldown zur nächsten Ebene durch, um weitere Aggregationsdetails anzuzeigen.
Application Lifecycle Management
Von der Entwicklung bis hin zum Testen und vom Test bis zur Produktion verfügen Modelle mit aktivierten automatischen Aggregationen über besondere Anforderungen für ALM-Lösungen.
Bereitstellungspipelines
Mit Bereitstellungspipelines kann Power BI die Modelle mit ihrer Modellkonfiguration aus der aktuellen Phase in die Zielstufe kopieren. Automatische Aggregationen müssen jedoch in der Zielstufe zurückgesetzt werden, da die Einstellungen nicht von der aktuellen auf die Zielstufe übertragen werden. Sie können Inhalte auch programmgesteuert mithilfe der Bereitstellungspipelines REST-APIs bereitstellen. Weitere Informationen zu diesem Prozess finden Sie unter Automatisieren Ihrer Bereitstellungspipeline mithilfe von APIs und DevOps.
Benutzerdefinierte ALM-Lösungen
Wenn Sie eine benutzerdefinierte ALM-Lösung verwenden, die auf XMLA-Endpunkten basiert, denken Sie daran, dass Ihre Lösung möglicherweise in der Lage ist, vom System generierte und vom Benutzer erstellte Aggregationstabellen als Teil der Modellmetadaten zu kopieren. Sie müssen jedoch automatische Aggregationen nach jedem Bereitstellungsschritt in der Zielstufe manuell aktivieren. Power BI behält die Konfiguration bei, wenn Sie ein vorhandenes Modell überschreiben.
Hinweis
Wenn Sie ein Modell als Teil einer Power BI Desktop-Datei (PBIX) hochladen oder erneut veröffentlichen, gehen vom System erstellte Aggregationstabellen verloren, da Power BI das vorhandene Modell durch alle Metadaten und Daten im Zielarbeitsbereich ersetzt.
Ändern eines Modells
Nach dem Ändern eines Modells mit automatischen Aggregationen, die über XMLA-Endpunkte aktiviert sind, wie dem Hinzufügen oder Entfernen von Tabellen, behält Power BI alle vorhandenen Aggregationen bei, die es kann, und entfernt diejenigen, die nicht mehr benötigt oder relevant sind. Die Abfrageleistung kann beeinträchtigt werden, bis die nächste Schulungsphase ausgelöst wird.
Metadatenelemente
Modelle mit aktivierten automatischen Aggregationen enthalten eindeutige vom System generierte Aggregationstabellen. Aggregationstabellen sind für Benutzer in Berichterstellungstools nicht sichtbar. Sie werden über den XMLA-Endpunkt mithilfe von Tools mit Analysis Services-Clientbibliotheken Version 19.22.5 und höher angezeigt. Achten Sie beim Arbeiten mit Modellen mit aktivierten automatischen Aggregationen darauf, ihre Datenmodellierungs- und Verwaltungstools auf die neueste Version der Clientbibliotheken zu aktualisieren. Aktualisieren Sie für SQL Server Management Studio (SSMS) auf SSMS, Version 18.9.2 oder höher. Frühere Versionen von SSMS können Tabellen nicht aufzählen oder diese Modelle skripten.
Automatische Aggregationstabellen werden durch eine SystemManaged Tabelleneigenschaft identifiziert, die im Tabellarischen Objektmodell (TOM) in Analysis Services-Clientbibliotheken, Version 19.22.5 und höher, neu ist. Der folgende Codeausschnitt zeigt die Eigenschaft SystemManaged, die auf true für automatische Aggregationstabellen und auf false für reguläre Tabellen festgelegt ist.
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.AnalysisServices.Tabular;
namespace AutoAggs
{
class Program
{
static void Main(string[] args)
{
string workspaceUri = "<Specify the URL of the workspace where your model resides>";
string datasetName = "<Specify the name of your dataset>";
Server sourceWorkspace = new Server();
sourceWorkspace.Connect(workspaceUri);
Database dataset = sourceWorkspace.Databases.GetByName(datasetName);
// Enumerate system-managed tables.
IEnumerable<Table> aggregationsTables = dataset.Model.Tables.Where(tbl => tbl.SystemManaged == true);
if (aggregationsTables.Any())
{
Console.WriteLine("The following auto aggs tables exist in this dataset:");
foreach (Table table in aggregationsTables)
{
Console.WriteLine($"\t{table.Name}");
}
}
else
{
Console.WriteLine($"This dataset has no auto aggs tables.");
}
Console.WriteLine("\n\rPress [Enter] to exit the sample app...");
Console.ReadLine();
}
}
}
Durch ausführen dieses Codeausschnitts werden automatische Aggregationstabellen ausgegeben, die derzeit im Modell in einer Konsole enthalten sind.
Beachten Sie, dass Aggregationstabellen ständig geändert werden, da Schulungsvorgänge die optimalen Aggregationen bestimmen, die in den Cache für speicherinterne Aggregationen einbezogen werden sollen.
Von Bedeutung
Power BI verwaltet automatisch vom System generierte Tabellenobjekte vollständig. Löschen oder ändern Sie diese Tabellen nicht selbst. Dies kann zu beeinträchtigter Leistung führen.
Power BI verwaltet die Modellkonfiguration außerhalb des Modells. Das Vorhandensein einer vom System verwalteten Aggregationstabelle in einem Modell bedeutet nicht unbedingt, dass das Modell tatsächlich für automatische Aggregationsschulungen aktiviert ist. Wenn Sie also eine vollständige Modelldefinition für ein Modell mit aktivierten automatischen Aggregationen erstellen und eine neue Kopie des Modells erstellen (mit einem anderen Namen/Arbeitsbereich/einer anderen Kapazität), ist das neue resultierende Modell nicht für die automatische Aggregationsschulung aktiviert. Sie müssen weiterhin die automatische Aggregationsschulung für das neue Modell in den Modelleinstellungen aktivieren.
Überlegungen und Einschränkungen
Beachten Sie bei der Verwendung von automatischen Aggregationen Folgendes:
- Aggregationen unterstützen keine dynamischen M-Abfrageparameter.
- Die während der ersten Schulungsphase generierten SQL-Abfragen können erhebliche Last für das Data Warehouse generieren. Wenn das Training immer wieder unvollständig abgeschlossen wird und Sie auf der Data-Warehouse-Seite überprüfen können, dass bei den Abfragen ein Timeout auftritt, sollten Sie in Erwägung ziehen, Ihr Data Warehouse vorübergehend hochzuskalieren, um den aktuellen Trainingsbedarf zu decken.
- Aggregationen, die im Speicheraggregationscache gespeichert sind, werden möglicherweise nicht für die aktuellsten Daten in der Datenquelle berechnet. Im Gegensatz zu dem reinen DirectQuery, und mehr ähnlich wie reguläre Importtabellen, gibt es eine Latenz zwischen Updates an der Datenquelle und den Aggregationsdaten, die im In-Memory-Aggregations-Cache gespeichert sind. Obwohl es immer eine gewisse Latenz gibt, kann sie durch einen effektiven Aktualisierungszeitplan abgemildert werden.
- Um die Leistung weiter zu optimieren, legen Sie alle Dimensionstabellen auf den Dual-Modus fest und lassen Faktentabellen im DirectQuery-Modus.
- Automatische Aggregationen sind in Power BI Pro, Azure Analysis Services oder SQL Server Analysis Services nicht verfügbar.
- Power BI unterstützt das Herunterladen von Modellen mit aktivierten automatischen Aggregationen nicht. Wenn Sie eine Power BI Desktop-Datei (PBIX) in Power BI hochgeladen oder veröffentlicht haben und dann automatische Aggregationen aktiviert haben, können Sie die PBIX-Datei nicht mehr herunterladen. Stellen Sie sicher, dass Sie eine Kopie der PBIX-Datei lokal beibehalten.
- Automatische Aggregationen mit externen Tabellen in Azure Synapse Analytics werden nicht unterstützt. Sie können externe Tabellen in Synapse mithilfe der folgenden SQL-Abfrage aufzählen:
SELECT SCHEMA_NAME(schema_id) AS schema_name, name AS table_name FROM sys.external_tables - Automatische Aggregationen sind nur für Modelle verfügbar, die erweiterte Metadaten verwenden. Wenn Sie automatische Aggregationen für ein älteres Modell aktivieren möchten, aktualisieren Sie das Modell zuerst auf erweiterte Metadaten. Weitere Informationen finden Sie unter Verwenden erweiterter Modellmetadaten.
- Aktivieren Sie keine automatischen Aggregationen, wenn die DirectQuery-Datenquelle für einmaliges Anmelden konfiguriert ist und dynamische Datenansichten oder Sicherheitssteuerelemente verwendet, um die Daten einzuschränken, auf die ein Benutzer zugreifen darf. Automatische Aggregationen sind über diese Steuerelemente auf Ebene der Datenquelle nicht informiert, was es unmöglich macht, sicherzustellen, dass pro Benutzer korrekte Daten bereitgestellt werden können. Das Training protokolliert eine Warnung im Aktualisierungsverlauf, dass es eine Datenquelle erkannt hat, die für Einmalanmeldung konfiguriert ist, und überspringt die Tabellen, die diese Datenquelle verwenden. Wenn möglich, deaktivieren Sie SSO für diese Datenquellen, um die optimierte Abfrageleistung, die automatische Aggregationen bieten können, vollständig zu nutzen.
- Aktivieren Sie keine automatischen Aggregationen, wenn das Modell nur Hybridtabellen enthält, um unnötigen Verarbeitungsaufwand zu vermeiden. Eine Hybridtabelle verwendet sowohl Importpartitionen als auch eine DirectQuery-Partition. Ein häufiges Szenario ist die inkrementelle Aktualisierung mit Echtzeitdaten, in denen eine DirectQuery-Partition Transaktionen aus der Datenquelle abruft, die nach der letzten Datenaktualisierung aufgetreten ist. Power BI importiert jedoch Aggregationen während der Aktualisierung. Automatische Aggregationen können keine Transaktionen enthalten, die nach der letzten Datenaktualisierung aufgetreten sind. Die Schulung protokolliert eine Warnung im Aktualisierungsverlauf, dass sie Hybridtabellen erkannt und übersprungen hat.
- Berechnete Spalten werden für automatische Aggregationen nicht berücksichtigt. Wenn Sie eine berechnete Spalte im DirectQuery-Modus verwenden, z. B. indem Sie die
COMBINEVALUESDAX-Funktion verwenden, um eine Beziehung basierend auf mehreren Spalten aus zwei DirectQuery-Tabellen zu erstellen, trifft die entsprechenden Berichtsabfragen nicht auf den Cache für die In-Memory-Aggregationen. - Automatische Aggregationen sind nur im Power BI-Dienst verfügbar. Power BI Desktop erstellt keine vom System generierten Aggregationstabellen.
- Wenn Sie die Metadaten eines Modells mit aktivierten automatischen Aggregationen ändern, kann die Abfrageleistung beeinträchtigt werden, bis der nächste Schulungsvorgang ausgelöst wird. Als bewährte Methode sollten Sie die automatischen Aggregationen ablegen, die Änderungen vornehmen und dann neu trainieren.
- Ändern oder löschen Sie vom System generierte Aggregationstabellen nur, wenn Sie automatische Aggregationen deaktiviert haben und das Modell bereinigen. Das System übernimmt die Verantwortung für die Verwaltung dieser Objekte.
Gemeinschaft
Power BI verfügt über eine lebendige Community, in der MVPs, BI-Experten und Peers Expertise in Diskussionsgruppen, Videos, Blogs und mehr teilen. Achten Sie beim Erlernen von automatischen Aggregationen darauf, die folgenden anderen Ressourcen auszuchecken: