Fünf Best Practices für Tableau und Hadoop

Werbung
Jeff Feng, Product Manager Tableau Software
Fünf Best Practices für
Tableau und Hadoop
2
Tableau wurde dafür ausgelegt, eine Interaktion mit Daten in Echtzeit über mehrere
Datenplattformen hinweg zu unterstützen. Die neuen Techniken finden großen Anklang
bei Geschäftsanwendern, die herkömmliche Tools eher als umständlich empfinden. Was
geschieht nun, wenn Abfragen Minuten oder gar Stunden in Anspruch nehmen, anstatt
nur wenige Sekunden? Wie lässt sich der „Flow“ erhalten?
Wir leben in einem Zeitalter, in dem Millionen oder sogar Milliarden von Datenzeilen per
Tastendruck analysiert werden können – wobei die Benutzer nahezu sofortige Ergebnisse
erwarten (siehe Studie zur 2-Sekunden-Regel für den Abruf von Daten). Dauert die Spanne
zwischen Eingabe und Antwort länger als 2 oder 3 Sekunden, ist der Benutzer schon abgelenkt
und nicht mehr im „Flow der visuellen Analyse“. Deshalb sind schnelle Abfragen ein absolutes
Muss, damit der Benutzer bei der Sache bleibt und umfassendere Einblicke durch die Big DataBereitstellungen gewinnt.
Anwender können zahlreiche Best Practices anwenden, um effizientere Tableau-Visualisierungen
und Dashboards zu erstellen, die auf Big Data-Plattformen aufbauen. Die Best Practices sind in
der Regel den folgenden fünf Bereichen zuzuordnen:
1.
2.
3.
4.
5.
Nutzung einer schnellen interaktiven Abfrage-Engine
Strategischer Einsatz von Direktverbindungen anstelle von Extrakten
Zusammenstellen der Daten aus dem Datensee
Optimieren der Extrakte
Anpassen der Verbindungsleistung
3
1.
Nutzung einer schnellen interaktiven Abfrage-Engine
Über Hadoop mit MapReduce ausgeführte Hive-Abfragen sind naturgemäß langsam,
da die Zuordnung von SQL-Abfragen in einen MapReduce-Auftrag aufwändig ist.
Hive mit MapReduce eignet sich dank außerordentlicher Fehlertoleranz hervorragend
zur Stapelverarbeitung, wie z. B. bei ETL-Anwendungen, allerdings lässt die Leistung
zu wünschen übrig. Durch Weiterentwicklungen bei Hive sind neue AnwendungsNeue Benchmarks für SQL-on-Hadoop:
Impala 1.4 vergrößert die Leistungskluft
Frameworks wie Tez (für interaktive Abfragen) und Spark (für In-Memory-Verarbeitung)
entstanden und verbessern die Abfragegeschwindigkeiten erheblich.
Abgesehen von Hive mit Hadoop gibt es eine Reihe von ausgezeichneten
Möglichkeiten zum Beschleunigen Ihrer Abfragen. Laut neuester Benchmarks bietet
Impala gemeinhin die schnellste Performance mit Hadoop. Auch wenn Spark SQL
noch in einer frühen Entwicklungsphase steckt, zeigt sich sein großes Potenzial als
schnelle Datenverarbeitungs-Engine. Es kann in Hadoop oder Spark Schema RDDs
gespeicherte Daten verarbeiten, auf die mit einem Hive-Metastore verwiesen wird.
Impala und Spark SQL werden als benannte Konnektoren in Tableau unterstützt. Beim
Big Data-Benchmark liefert einen
quantitativen und qualitativen
Vergleich der fünf Systeme.
Thema Leistung von Hadoop werden auch immer wieder Pivotal HAWQ, Presto und
Apache Drill genannt.
Eine weitere Option ist der Blick über Hadoop hinaus. Schnelle analytische
Datenbanken wie Actian Vector, HP Vertica, Teradata Aster Data, SAP Hana, ParAccel,
Pivotal Greenplum eignen sich perfekt, um Ihre Daten für latenzarme Abfragen von
Tableau-Geschäftsanwendern nach der Verarbeitung in Hadoop bereitzustellen.
Auch in der Cloud gehostete Infrastrukturdienste erfreuen sich steigender Beliebtheit.
Google BigQuery nutzt die umfassende Infrastruktur von Google, die sowohl bei der
Verarbeitung von Daten als auch bei der Unterstützung schneller Abfragen äußerst
leistungsstark ist, insbesondere bei großen Datensätzen. Amazon Redshift ist hingegen
ein vollständig verwaltetes, spaltenbasiertes Data Warehouse, das auf einen schnellen
Datenzugriff ausgerichtet ist. Zudem gibt es noch neu entstehende Technologien von
Startup-Unternehmen und Open-Source-Projekten, die OLAP Cubes (AtScale, eBay
Kylin) oder Indizierungs-Engines (JethroData) für Hadoop nutzen und so Abfragen für
eine Milliarde Zeilen oder mehr bei geringer Latenz ermöglichen.
4
2.
Strategischer Einsatz von Direktverbindungen anstelle von Extrakten
Die hybride Datenarchitektur von Tableau stellt Verbindungen entweder live mit der
Datenquelle oder über einen In-Memory-Extrakt mit der Daten-Engine von Tableau
her. Dadurch erhalten Benutzer bei der Arbeit mit Big Data eine absolute Flexibilität.
Extrakte sind eine ideale Lösung, wenn schnelle Abfrage-Engines nicht verfügbar sind,
die Datensätze eine geringe bis mittlere Größe aufweisen (Hunderte Millionen von
Zeilen oder weniger) oder eine Offline-Analyse benötigt wird. Bei größeren Datensätzen
bieten Hadoop Hive und andere Abfrage-Engines aufgrund der verteilten Ausführung
eine bessere Skalierung als Tableau. Bei Verfügbarkeit einer schnellen DatenbankEngine oder für Analysen in Echtzeit ist eine Direktverbindung die bessere Wahl.
Die vollständige Liste der empfohlenen Szenarios finden Sie unten in Abbildung 1.
Verwendung von
Verwendung der
Extrakten empfohlen
Direktverbindung empfohlen
Langsame Ausführung von
Verfügbarkeit einer schnellen
Datenbankabfragen
Datenbankabfrage-Engine
Bei Verwendung kleinerer Datensätze
(z. B. Hunderte Millionen von Zeilen
oder weniger)
Wenn größere Datensatzdimensionen
erforderlich sind
Wenn Offline-Analysen
Wenn Analysen in Echtzeit
erforderlich sind
erforderlich sind
Verwendung benutzerdefinierter
SQL-Abfragen
Wenn zusätzliche Analysefunktionen
benötigt werden (Festlegen, Rang,
Eindeutig, Median)
Wenn eine Arbeitsmappe
Pass-Through-Funktionen
(RAWSQL) verwendet
Wenn robuste Sicherheitsfunktionen
auf Benutzerebene benötigt werden
(außer für Extrakte, die auf Tableau
Server veröffentlicht sind)
Abbildung 1: Vergleich empfohlener Szenarios für Extrakte und Direktverbindungen.
5
3.
Zusammenstellen der Daten aus dem Datensee
Einer der zahlreichen Vorteile von Hadoop besteht darin, dass Skalierung,
Kosteneffizienz und die Unterstützung unstrukturierter Daten es zum perfekten
Datensee machen, also einem Repository für Ihre gesamten Daten im nativen Format.
Tableau ist ein effektives Tool zum Erkunden von Daten im Datensee. Um jedoch für
Ihre Wissensarbeiter die bestmögliche Leistung für die Visualisierung mit Hadoop
herauszuholen, empfiehlt sich immer eine Zusammenstellung der Datensätze.
IT-Administratoren können eine Reihe unterschiedlicher Verfahren anwenden,
um die Effizienz des Hadoop-Clusters zu steigern:
Partitionsgestaltung: Durch Strukturierung einer Hive-Tabelle in einzelne Dateien
(jeweils mit vielen Datenblöcken) in einem verteilten System mit einem oder mehreren
Partitionierungsfeldern lassen sich Abfragen im Vergleich zu Abfragen, die nach einem
nicht partitioniertem Feld gefiltert werden, erheblich beschleunigen.
Datensatzgröße: Wenn die Dimensionen und Maße, die für einen Satz von Analysen
betrachtet werden sollen, sowie der Datensatzbereich bekannt sind, sollten Sie den
Datensatz, der für die Wissensarbeitern abrufbar ist, beschränken, um die Leistung
zu erhöhen.
Cluster-Felder als Gruppierungsfelder und Joinkeys: Cluster-Felder können
bestimmen, wie die Daten in der Tabelle auf dem Datenträger unterteilt sind. Bei
verknüpften und gruppierten Cluster-Feldern erhöht sich die Leistung.
Speicherdateiformat: Bei der effizienten Ausführung von Abfragen spielt das
Dateiformat eine wichtige Rolle. Verwenden Sie das Dateiformat, das sich für
die verwendete Abfrage-Engine am besten eignet. Für Hive empfiehlt sich das
ORC(Optimized Row Columnar)-Format, für Impala das Parquet-Format.
Datenmodellgestaltung:
• Datentypen: Verwenden Sie möglichst numerische Typen, da sie wesentlich
schneller sind als Zeichenfolgen.
• Verknüpfungen: Vermeiden Sie unnötige Verknüpfungen, da sie bei vielen Big
Data-Systemen nicht zufriedenstellend implementiert sind. Wenn Sie Verknüpfungen
verwenden, führen Sie zuerst eine COMPUTE STATS-Anweisung aus, die die
Leistung für Verknüpfungsabfragen automatisch optimieren kann.
• Formeln: Vermeiden Sie Formeln, die nicht effizient ausgewertet werden können.
6
4.
Optimieren der Extrakte
Die Daten-Engine von Tableau ist eine speicherinterne Analysedatenbank, die die
komplette Speicherhierarchie von der Festplatte bis hin zum L1-Cache nutzt. Dieses
leistungsstarke Tool kann Analysen erheblich beschleunigen. Die Daten-Engine von
Tableau ist nicht mit der Skalierung von Hadoop konzipiert, sie kann jedoch latenzarme
Ergebnisse zu Datenextrakten mit einer Kardinalität aus Hunderten von Millionen
Zeilen und einer hohen Anzahl von Spalten liefern. Obwohl die Nutzung von Extrakten
in der Daten-Engine von Tableau die Leistung in der Regel automatisch erhöht, gibt
es verschiedene Möglichkeiten, Abfragen durch eine Komprimierung der Daten
zu beschleunigen.
Definieren von Filtern: Erstellen Sie einen Filter, sodass der Schwerpunkt auf
den relevanten Daten liegt.
Ausblenden nicht verwendeter Felder: Blenden Sie Felder aus, die für die
Analyse nicht erforderlich sind, sodass der Extrakt kompakt und präzise ist.
Aggregieren sichtbarer Dimensionen: Aggregieren Sie Daten im Voraus,
um einen groben Überblick zu erhalten, wenn Sie auch ohne detaillierte Daten
die gleichen Einblicke mit schnelleren Abfragen erhalten.
Rollup für Daten: Führen Sie wenn möglich einen Rollup für Daten für gröbere
Zeitachsen aus.
Stichproben: Bei Datenbanken, die Datenstichproben unterstützen, können die
so erheblich komprimierten Daten dennoch die allgemeinen Trends widerspiegeln.
Oberste N: Wenn Sie nur die höchsten Werte in einem Datensatz suchen,
kann die Größe des Datensatzes mit dieser Methode effizient verringert werden.
7
5.
Anpassen der Verbindungsleistung
Für Tableau-Benutzer gibt es verschiedene Möglichkeiten, um die Verbindungsleistung
für Direktabfragen zu optimieren:
Benutzerdefinierte SQL-Abfragen: Bei benutzerdefinierten SQL-Abfragen können
Verbindungen in Tableau auf SQL-Ausdrücke aufgebaut werden. Benutzerdefinierte
SQL-Abfragen sind sehr effizient, um die Größe von Datensätzen einzugrenzen (mit der
LIMIT-Klausel), sodass Sie einen neuen Datensatz untersuchen oder umreißen können.
SQL-Anfangsdaten: Mit SQL-Anfangsdaten können Sie Konfigurationsparameter
festlegen und sofort nach dem Herstellen einer Verbindung mit der Arbeit beginnen.
Sie können zum Beispiel folgende Aktionen ausführen:
• Erhöhen Sie die Parallelität bei der Datenanalyse, indem Sie die Standardblockgröße
bei Map- und Reduce-Funktionen reduzieren.
• Erhöhen Sie die Verknüpfungsleistung, indem Sie Cluster-Felder aktivieren.
• Passen Sie Konfigurationen für eine ungleichmäßige Verteilung an, indem Sie
in den Einstellungen festlegen, wie Hive MapReduce-Aufträge auf andere Weise
ausführen soll.
Zusammenfassung
Das Zeitalter der Big Data ist angebrochen. Die Menge der Daten nimmt ständig und
immer schneller zu. Um die neue Normalität im Datenbereich bewältigen zu können,
verlagern viele Unternehmen ihre Dateninfrastruktur auf Hadoop, Spark und NoSQL.
Da Tableau auch auf den herkömmlichen Geschäftsanwender ausgerichtet ist, werden
die visuellen Einblicke von Big Data allgemein zugänglich. Indem Sie Best Practices
anwenden und Ihrer jeweiligen Anwendung entsprechend anpassen, können Sie aus
Ihrer Big Data-Investition maximalen Nutzen ziehen.
8
Über Tableau
Tableau unterstützt die Anwender dabei, ihre Daten anschaulich und verständlich aufzubereiten. Mit
Tableau analysieren und visualisieren die Nutzer vorhandene Informationen blitzschnell und teilen die
Ergebnisse mit anderen. Mehr als 26.000 Unternehmen weltweit nutzen Tableau im Büro und unterwegs
für schnelle Analysen. Zehntausende Nutzer verwenden Tableau Public, um anderen Personen Daten
in Blogs und auf Websites zur Verfügung zu stellen. Laden Sie die kostenlose Testversion herunter und
erleben Sie, wie Tableau Sie unterstützen kann: www.tableau.com/de-de/trial.
Weitere Ressourcen
Kostenlose Testversion herunterladen
Produkt-Demos
Schulungen und Lernprogramme
Community und Support
Kundenberichte
Lösungen
Ähnliche Whitepapers
Die Big Data-Vision von Tableau
Sieben Tipps für den Erfolg mit Big Data
Fostering a Data-Driven Culture: A Special Report from the Economist
Intelligence Unit and Tableau
Big Data: The Next Industrial Revolution
Tableau Software und Big Data
Aberdeen Group: Maximizing the Value of Analytics and Big Data
Alle Whitepapers anzeigen
Tableau und Tableau Software sind Marken von Tableau Software, Inc. Alle anderen Firmen- und
Produktnamen sind möglicherweise Marken der jeweiligen Unternehmen, denen sie zugeordnet sind.
Herunterladen