Verbessern der Ansichtsleistung mit Kontextdateien

Standardmäßig werden alle Filter, die Sie in Tableau festlegen, unabhängig voneinander berechnet. Jeder Filter greift also auf alle Zeilen der Datenquelle zu, ohne andere Filter zu berücksichtigen. Sie können jedoch einen oder mehrere Kategoriefilter als Kontextfilter für die Ansicht festlegen. Sie können sich einen Kontextfilter wie einen unabhängigen Filter vorstellen. Alle anderen Filter, die Sie festlegen, werden als abhängige Filter definiert. Der Grund ist, dass diese Filter nur die Daten verarbeiten, die die Bedingungen des Kontextfilters erfüllen.

Sie können einen Kontextfilter erstellen, um Folgendes zu erreichen:

  • Verbesserung der Leistung: Wenn Sie viele Filter festlegen oder eine große Datenquelle verwenden, kann es sein, dass die Abfragen sehr lange dauern. Sie können einen oder mehrere Kontextfilter festlegen, um die Leistung zu verbessern.

  • Erstellung eines abhängigen numerischen Filters oder Filters vom Typ "Oberste N": Sie können einen Kontextfilter festlegen, um nur die gewünschten Daten einzubeziehen, und dann einen numerischen Filter oder einen Filter vom Typ "Oberste N" festlegen.

Angenommen, Sie sind für die Frühstücksprodukte einer großen Lebensmittelkette verantwortlich. Sie möchten die besten zehn Frühstücksprodukte nach Rentabilität für alle Geschäfte ermitteln. Falls die Datenquelle sehr groß ist, können Sie einen Kontextfilter festlegen, um nur Frühstücksprodukte einzubeziehen. Anschließend können Sie einen Filter für die besten zehn Produkte nach Gewinn erstellen, der nur die Daten verarbeitet, die die Bedingungen des Kontextfilters erfüllen.

Hinweis: Ab Tableau 9.0 werden von Kontextfiltern (außer bei generischen ODBC-Datenquellen und benutzerdefinierten Datenquellen) keine temporären Tabellen mehr erstellt.

Erstellen von Kontextfiltern

Wählen Sie zum Erstellen eines Kontextfilters im Kontextmenü eines vorhandenen Kategoriefilters die Option Zu Kontext hinzufügen. Der Kontext wird einmal berechnet, um die Ansicht zu erzeugen. Alle anderen Filter werden dann relativ zum Kontext berechnet. Kontextfilter:

  • Werden oben im Container "Filters" angezeigt.

  • Sind mit einer grauen Farbe auf dem Filter-Container gekennzeichnet.

  • Können im Container nicht neu angeordnet werden.

In der Abbildung unten ist für eine Datenansicht die Dimension Versandart als Kontext festgelegt. Zur Berechnung des Filters Region werden nur die Daten verwendet, die die Bedingungen von Versandart erfüllen.

Sie können einen Kontextfilter wie folgt ändern:

  • Entfernen des Felds aus dem Container "Filters": Falls andere Kontextfilter im Container verbleiben, wird ein neuer Kontext berechnet.

  • Bearbeiten des Filters: Bei jeder Bearbeitung eines Kontextfilters wird ein neuer Kontext berechnet.

  • Auswählen von Aus Kontext entfernen: Der Filter verbleibt als standardmäßiger Filter im Container. Falls noch andere Kontextfilter im Container vorhanden sind, wird ein neuer Kontext berechnet.

Beschleunigung von Kontextfiltern

Um die Leistung von Kontextfiltern zu verbessern, insbesondere bei großen Datenquellen, empfehlen wir die folgenden Vorgehensweisen.

  • Die Verwendung eines einzigen Kontextfilters, der die Größe des Datensatzes deutlich reduziert, führt zu einem deutlich besseren Ergebnis als die Verwendung von mehreren Kontextfiltern. Tatsächlich reduziert ein Filter die Datengröße nur um etwa ein Zehntel. Das Hinzufügen zum Kontext hat sogar negative Auswirkungen, da mehr Leistung für die Berechnung des Kontexts benötigt wird.

  • Schließen Sie die gesamte Datenmodellierung vor dem Erstellen eines Kontexts ab. Durch Änderungen an den Datenmodellen, z. B. die Umwandlung von Dimensionen in Kennzahlen, ist eine erneute Berechnung des Kontexts erforderlich.

  • Legen Sie die erforderlichen Filter für den Kontext fest, und erstellen Sie den Kontext, bevor Sie Felder zu anderen Containern hinzufügen. Dadurch stellen Sie sicher, dass die Abfragen, die beim Platzieren von Feldern auf andere Container ausgeführt werden, viel schneller verarbeitet werden können.

  • Wenn Sie einen Kontextfilter für ein Datum festlegen möchten, können Sie ein fortlaufendes Datum verwenden. Jedoch ist die Verwendung von Datenpartitionen wie YEAR(date) oder von Kontextfiltern für diskrete Datumsangaben äußerst effektiv.

Hinweis: Wenn Ihr Datensatz stark indiziert ist, führen Kontextfilter möglicherweise nicht zu einer Verbesserung und können sogar die Abfrageleistung negativ beeinträchtigen.

Kontextfilter können sich nachteilig auf die Verbesserungen der Abfrageleistung auswirken, wenn Sie im Datenmenü der Datenquelle die Option Referentielle Integrität voraussetzen verwenden. Weitere Informationen finden Sie unter "Referentielle Integrität voraussetzen" für Verknüpfungen.

Beispiel: Erstellen von Kontextfiltern

In diesem Beispiel werden Sie durch die Erstellung eines Kontextfilters geführt. Zuerst filtern Sie eine Ansicht, um die zehn umsatzstärksten Produkte anzuzeigen. Als Nächstes erstellen Sie einen Kontextfilter nach Produktkategorie, um die zehn besten Möbelprodukte anzuzeigen.

  1. Verwenden Sie die Datenquelle Sample - Superstore, um die unten gezeigte anfängliche Ansicht zu erstellen. Die Ansicht zeigt die Umsätze für alle Unterkategorien an, wobei der höchste Umsatz oben aufgeführt ist.

  2. Sie erstellen einen Filter vom Typ "Top 10", um nur die Produkte mit den besten Verkaufszahlen anzuzeigen. Sie können diesen Filter erstellen, indem Sie das Feld Unterkategorie auf den Container "Filter" ziehen. Wechseln Sie im Dialogfeld "Filter" auf die Registerkarte Top, und definieren Sie einen Filter mit den Angaben "Top 10" nach "Summe von Sales". Weitere Informationen zur Definition eines Filters vom Typ "Top N" finden Sie unter Filtern von Daten in den Ansichten(Link opens in a new window).

  3. Wenn Sie auf OK klicken, können Sie sehen, dass die Ansicht gefiltert ist, sodass nur die obersten 10 Produktunterkategorien in Bezug auf Umsätze angezeigt werden.

  4. Im nächsten Schritt soll ein weiterer Filter hinzugefügt werden, damit nur Möbelprodukte angezeigt werden. Ziehen Sie das Feld Kategorie auf den Container "Filter", und wählen Sie nur Möbel aus. Klicken Sie auf OK, wenn Sie fertig sind.

    Die Ansicht ist gefiltert. Anstelle der 10 Produkte zeigt sie jedoch nur 3 an. Dies liegt daran, dass alle Filter standardmäßig einzeln ausgewertet werden und die Ansicht die Schnittpunkte der Ergebnisse anzeigt. Die Ansicht zeigt also, dass es sich bei drei der zehn umsatzstärksten Produkte um Möbelprodukte handelt.

  5. Um herauszufinden, welche 10 Möbelprodukte den höchsten Umsatz aufweisen, muss der Filter "Kategorie" als Kontextfilter eingerichtet werden. Klicken Sie im Container "Filters" (Filter) mit der rechten Maustaste auf das Feld, und wählen Sie die Option Add to Context (Zu Kontext hinzufügen).

  6. Der Filter ist als ein Kontextfilter markiert, und die Ansicht wird aktualisiert, um die obersten vier Möbelprodukte zu zeigen. Warum nicht 10? Da nur vier der Unterkategorien Möbel enthalten können. Wir wissen nun jedoch, dass der Top-10-Filter für die Ergebnisse dieses Kontexts ausgewertet wird.

Vielen Dank für Ihr Feedback! Es gab einen Fehler bei der Übermittlung Ihres Feedback. Versuchen Sie es erneut oder senden Sie uns eine Nachricht.