• pexels-markus-spiske-2004161.
        • Software Solutions

          Wir helfen Ihnen bei der Auswahl 
          der richtigen Lösungen, um die 
          Kraft Ihrer Daten freizusetzen.
        • Tableau
        • Das weltweit leistungsstärkste Tool zur Datenvisualisierung und -analyse.

        • Alteryx
        • Die führende Plattform in der
          dynamischen Welt der Analytic
          Process Automation.

        • Amazon Web Services (AWS)
        • Führend bei Cloud-First-Datenlösungen.

        • Snowflake
        • Für Cloud-basierte Data-Warehouse-Lösungen der nächsten Stufe.

        • Celonis
        • Process Mining aus Deutschland. Verschaffen Sie sich ein objektives und datengetriebenes Bild Ihrer internen Prozesse. Ganz im Sinne der optimierten  Wertschöpfung.

  • The Data School
  • News
  • Data Events
        • LockScreen.
        • Über Uns

          Lernen Sie The Information Lab kennen, unser Team, unsere Kunden und erfahren Sie, wie auch Sie ein Teil davon werden können.

          Mehr erfahren

        • Use Cases
        • Wir bieten seit Jahren Datenlösungen für Unternehmen. Und so wie hinter allen Daten eine Geschichte steckt, steckt auch hinter jedem unserer Projekte eine Geschichte.

        • Centre of Excellence
        • Geteiltes Wissen ist Macht – vernetzen Sie sich mit unserer wachsenden Zahl von Beratern und Kunden in ganz Europa. Zusammenarbeit ist der beste Weg zu lernen.

        • Internationales Setup
        • The Information Lab ist an 8 europäischen Standorten mit über 300 Consultants aktiv. Unsere Data School gibt es bereits in London, Sydney und Hamburg.

        • Kunden
        • Wir unterstützen seit 2014 namhafte Unternehmen in der DACH-Region und im deutschen Mittelstand.

        • Team
        • Lernen Sie die Menschen hinter The Information Lab kennen.

        • Karriere
        • Join our team! Wir wachsen stetig und suchen insbesondere im Consulting und unserer Data School stets tolle Kollegen und Kolleginnen.

        • Frequently Asked Questions
        • Häufig gestellte Fragen über uns, unsere Produkte u.v.m.

Banner background image - news

De-Normalisierte Extrakte – endlich praktikable Row-Level-Security

Tableau 2018.3 hat einige neue aufregende Features zu bieten. Eins davon ist, dass Hyper-Extrakte nun nicht mehr als einzelne Tabelle gespeichert werden müssen, sondern dass verknüpfte Tabellen als einzelne Datentabellen abgespeichert werden können. Das kann verschiedene Vorteile haben:

  1. Die Extrakt-Größe kann teilweise drastisch reduziert werden
  2. Die Extrakt-Ladezeit kann möglicherweise stark verkürzt werden
  3. Die Performance kann verbessert werden

Dadurch ergeben verschiedene Implikationen für einige Szenarien, wie zum Beispiel Row-Level-Security, größere Datensets mit mehreren Joins, oder allgemeine Use Cases, die eine Vervielfältigung von Zeilen durch Joins bedingen.

Der konzeptionelle Aufbau

Die Vorgehensweise für Row-Level-Security in Extrakten sieht folgendermaßen aus:

content image

Üblicherweise ist es so, dass die gleiche Datenzeile von mehreren Personen gesehen werden darf, daher gibt es zwischen den Daten und der Personen-Tabelle eine 1-zu-N-Beziehung. Da Extrakte mit einer einzigen Resultat-Tabelle den Join schon ausmultiplizieren, ist die schlussendliche Tabelle deutlich „länger“ als die eigentlichen Daten, da diese mehrfach vorkommen. Das hat Auswirkungen auf die Größe des Extraktes und besonders auch die Zeit, die dieser zum Aufbau benötigt.

Die neue Funktionalität sorgt nun dafür, dass die Tabellen einzeln in der Hyper-Datenbank abgespeichert werden und dass der Join jeweils während der Abfrage ausgeführt ist. Das führt zu einer deutlich kleineren Extrakt-Datei und einer schnelleren Ladezeit.

Ein Beispiel mit Row-Level-Security

In einem durchgeführten Test hatte die Daten-Tabelle 100 Mio. Zeilen, die im .csv-Format 1,59 GB groß war. Multipliziert mit einer Personen-Tabelle von 4 Personen ergibt sich eine Zeilenanzahl von 180 Mio. Zeilen (1-zu-N).

content image

Beim Import nach Hyper über Tableau Desktop wurde beim Einzeltabellen-Extrakt der Join ausgeführt, damit wurden alle 180 Mio. Zeilen importiert. Bei der Einstellung mit mehreren Tabellen wurden lediglich die 100 Mio. Datensätze importiert und dazu die wenigen Datensätze aus der Personentabelle. Letzteres ging deutlich schneller. Auch die fertigen Hyper-Files hatten sehr unterschiedliche Größen, die erste hat eine Größe von 429 MB, die zweite eine Größe von 297 MB.

content image

Die Umsetzung in Tableau

Die Auswahl des Features in Tableau ist ein einfacher Klick während der Extrakterstellung. So kann in dem Pop-Up-Fenster einfach die Auswahl „Mehrere Tabellen“ gemacht werden.

content image

Einschränkungen

Leider hat das Feature noch einige Einschränkungen. Sobald die Option ausgewählt ist, können beispielsweise keine Extraktfilter mehr gesetzt werden, auch Aggregation und inkrementelle Updates sind noch nicht möglich. Tableau arbeitet jedoch daran, diese Möglichkeiten auch einzubauen. Eine Filterung der Daten könnte man aber beispielsweise durch die Verbindung von Custom SQL-Abfragen oder Datenbank-Views erreichen, die in Hyper als einfache Tabelle gespeichert werden.

Wann sollte das Feature genutzt werden und wann nicht?

Die Unterschiede zwischen den Optionen werden erst bei größeren Datenmengen sichtbar. Mehrere Tabellen können dabei schlechter sein, wenn Zeilen nicht vervielfältigt werden, da dabei der Join der Tabellen bei jeder Abfrage ausgeführt wird. Auch bei Extrakten, die nicht alle Daten erfordern, oder die aggregiert werden können, sind einzelne Tabellen aufgrund der stark verringerten Zeilenanzahl möglicherweise vorzuziehen.

Grundsätzlich sollte – gerade bei größeren Datenmengen – geprüft und getestet werden, welche Variante eine bessere Performance bedeutet und wie die Prioritäten bzgl. der Ladezeit und der Dateigröße sind.

Weitere Informationen können auch unter folgenden Ressourcen abgerufen werden: Multiple Table (Normalized) Hyper Extracts, Multiple Table Storage for Extracts und Informationen zur Option „Berechnung jetzt durchführen“ für Extrakte.