Zuhause Persönliche Finanzen Verbinden von Tabellen mit Hive - Dummies

Verbinden von Tabellen mit Hive - Dummies

Video: HDInsight: Fast Interactive Queries with Hive on LLAP | Azure Friday 2025

Video: HDInsight: Fast Interactive Queries with Hive on LLAP | Azure Friday 2025
Anonim

Sie wissen wahrscheinlich bereits, dass Experten in relationalen Datenbank-Modellierung und Design in der Regel viel Zeit mit dem Entwerfen von normalisierten Datenbanken oder Schemas verbringen. Die Datenbank -Normalisierung ist eine Technik, die vor Datenverlust, Redundanz und anderen Anomalien schützt, wenn Daten aktualisiert und abgerufen werden. Die Experten befolgen eine Reihe von Regeln, um zu einer normalisierten Datenbank zu gelangen, aber Regel 1 ist, dass Sie mit einer

Gruppe Tabellen enden müssen. (Eine große Tabelle, die alle Ihre Daten speichert, ist nicht normal - Wortspiel beabsichtigt.) Es gibt Ausnahmen, abhängig vom Anwendungsfall, aber das Gesetz vieler Tabellen wird im Allgemeinen genau befolgt, besonders für Datenbanken, die Transaktionen oder analytische Verarbeitung unterstützen (Business Intelligence, beispielsweise).

Wenn Sie beginnen, Ihre Daten abzufragen und zu analysieren, werden die Tabellen basierend auf den definierten Beziehungen zwischen ihnen über SQL verbunden. Dies bedeutet, dass die Festplatten am Anfang auf Ihrem Server ausgelastet sind, wenn Sie Tabellen verknüpfen. Besetzte Festplatten führen in der Regel zu langsameren Reaktionszeiten der Benutzer. Die gute Nachricht ist jedoch, dass RDBMS und EDW so abgestimmt sind, dass sie so schnell wie möglich Verbindungen eingehen.

Was hat das alles mit Joins in Hive zu tun? Denken Sie daran, dass das zugrunde liegende Betriebssystem für Hive ist (Überraschung!) Apache Hadoop: MapReduce ist die Engine zum Beitreten von Tabellen, und das Hadoop-Dateisystem (HDFS) ist der zugrunde liegende Speicher. Das sind gute Nachrichten für den Benutzer, der große Tabellen mit Hive erstellen, verwalten und analysieren möchte.

Das Potenzial, Informationen freizuschalten, die in riesigen Datenstrukturen versteckt sind, ist aufregend. Verbindungen mit Hive funktionieren jedoch normalerweise nicht so gut wie in der RDBMS / EDW-Welt, so dass Erstanwender oft von der "Pikiness" der Systemantwort überrascht werden.

Denken Sie daran, dass MapReduce und HDFS für den Durchsatz mit Big Data-Analysen optimiert sind und dass

Latenzzeiten - also die Reaktionszeiten der Benutzer - in der Regel hoch sind. Hive wurde für die analytische Verarbeitung im Batch-Stil entwickelt, nicht für die schnelle Online-Transaktionsverarbeitung. Benutzer, die die bestmögliche Leistung mit SQL auf Apache Hadoop wünschen, haben Lösungen zur Verfügung.

Behalten Sie diese Dynamik im Hinterkopf, wenn Sie Tabellen mit Hive verbinden. Beachten Sie auch, dass Hive-Architekten in der Regel ihre Datenbanken in gewissem Maße denormalisieren, so dass weniger große Tabellen üblich sind. Deshalb werden komplexe Datentypen wie STRUCTs und ARRAYs bereitgestellt. Sie können diese komplexen Datentypen verwenden, um sehr viel mehr Daten in eine einzige Tabelle zu packen.

Da Hive-Tabellen über HDFS lesen und schreiben, sind in der Regel sehr große Datenblöcke erforderlich. Je mehr Daten Sie insgesamt in einer Tabelle verwalten können, desto besser ist die Gesamtleistung.

Der Festplatten- und Netzwerkzugriff ist viel langsamer als der Speicherzugriff. Daher sollten Sie das Lesen und Schreiben von HDFS so gering wie möglich halten.

Mit diesen Hintergrundinformationen können Sie Joins mit Hive in Angriff nehmen. Glücklicherweise war die Hive-Entwicklergemeinschaft realistisch und verstand, dass Benutzer Tabellen mit HiveQL verbinden wollen und müssen. Dieses Wissen wird bei der EDW-Augmentation besonders wichtig. Anwendungsfälle wie "abfragbare" Archive erfordern häufig Joins zur Datenanalyse.

Hier ist ein Hive-Join-Beispiel mit Flugdatentabellen. Die Auflistung zeigt Ihnen, wie Sie eine Tabelle myflightinfo2007 und eine Tabelle myflightinfo2008 aus den größeren Tabellen FlightInfo2007 und FlightInfo2008 erstellen und anzeigen. Der Plan bestand darin, die von CTAS erstellten Tabellen myflightinfo2007 und myflightinfo2008 zu verwenden, um zu veranschaulichen, wie Sie Joins in Hive ausführen können.

Die Abbildung zeigt das Ergebnis eines inneren Joins mit den Tabellen myflightinfo2007 und myflightinfo2008 unter Verwendung des SQL-Clients SQuirreL.

Hive unterstützt

equi-joins, einen bestimmten Join-Typ, der nur Gleichheitsvergleiche im Join-Prädikat verwendet. (Auf m8. FlightNum = m7. FlightNum ist ein Beispiel für einen Equi-Join.) Andere Komparatoren wie Less Than (<) werden nicht unterstützt. Diese Einschränkung ist nur auf Einschränkungen der zugrunde liegenden MapReduce-Engine zurückzuführen. Außerdem können Sie OR nicht in der ON-Klausel verwenden. Die Abbildung veranschaulicht das frühere Beispiel des inneren Joins und zwei andere Hive-Join-Typen. Beachten Sie, dass Sie die Ergebnisse eines inneren Joins überprüfen können, indem Sie den Inhalt der Tabellen myflight2007 und myflight2008 überprüfen.

Die folgende Abbildung zeigt, wie ein Inner Join mit einem Venn-Diagramm funktioniert, falls Sie mit der Technik nicht vertraut sind. Die grundlegende Idee hierbei ist, dass ein Inner Join die Datensätze zurückgibt, die zwischen zwei Tabellen übereinstimmen. Ein innerer Join ist also ein perfektes Analyse-Tool, um zu bestimmen, welche Flüge von JFK (New York) nach ORD (Chicago) im Juli 2007 und Juli 2008 gleich sind.

Optimierung von Hive-Joins ist ein heißes Thema in der Hive-Community.. Weitere Informationen zu aktuellen Optimierungstechniken finden Sie auf der Seite Join Optimization im Hive-Wiki.

Verbinden von Tabellen mit Hive - Dummies

Die Wahl des Herausgebers

Wie man die Socialcast Mobile App benutzt - dummies

Wie man die Socialcast Mobile App benutzt - dummies

Sogar die stoischste Anwendung wie Microsoft Excel hat ein begleitendes Smartphone-App, natürlich hat Socialcast auch eine. Wenn es so wäre, wäre es nicht wirklich eine Ausrede zu sagen, dass Socialcast nicht sehr sozial wäre, wenn du es nicht mit in die große Welt außerhalb deiner Zelle mitnehmen könntest. Die mobile App ...

Wie man das App Verzeichnis von Yammer benutzt - dummies

Wie man das App Verzeichnis von Yammer benutzt - dummies

Sie haben vielleicht gehört: "Es gibt eine App dafür. "Nun, das ist der Fall bei Yammer, der als einzige Ressource für die Vernetzung am Arbeitsplatz funktioniert. Aber Yammer bietet Ihnen auch eine Menge Apps, mit denen Sie Ihr Arbeitsleben noch einfacher gestalten können. Es gibt zwei Möglichkeiten, auf das App-Verzeichnis zuzugreifen: Option ...

So ​​verwenden Sie die Yammer-Analysetools - Dummies

So ​​verwenden Sie die Yammer-Analysetools - Dummies

Yammer rühmt sich damit als "führendes soziales Unternehmensnetzwerk für Unternehmen" um die Arbeit intelligenter und schneller zu erledigen. "Woher weißt du, ob das wahr ist? Ein guter Weg, um zu sehen, wie es für Sie funktioniert, ist die Analyse von Yammer. Wie greifen Sie auf diese großartigen Tools zu? Es ist einfach. Log ...

Die Wahl des Herausgebers

Die Evolution von Distributed Computing für Big Data - Dummies

Die Evolution von Distributed Computing für Big Data - Dummies

Hinter allen wichtigen Trends des letzten Jahrzehnts, einschließlich Serviceorientierung, Cloud Computing, Virtualisierung und Big Data, ist eine grundlegende Technologie namens Distributed Computing. Einfach gesagt, ohne die Verteilung von Datenverarbeitung wäre keiner dieser Fortschritte möglich. Distributed Computing ist eine Technik, mit der einzelne Computer über geografische Gebiete hinweg miteinander vernetzt werden können, so als ob ...

Drei Anbieter mit Data Mining-Produkten - Dummies

Drei Anbieter mit Data Mining-Produkten - Dummies

Es gibt mehrere Anbieter, die Data-Mining-Produkte verkaufen, die Sie vielleicht in Betracht ziehen möchten. Verwenden Sie mit Ihrem Data Warehouse. Hier sind drei, die eine Überlegung wert sind. Microsoft Microsoft hat das serverseitige Data Mining mit Microsoft SQL Server 2005 eingeführt. Obwohl es nicht so ausgereift und ausgeklügelt wie SAS und SPSS ist, hat Microsoft im Laufe der Zeit seine Fähigkeit bewiesen ...

Grundlagen der Big-Data-Integration - Dummies

Grundlagen der Big-Data-Integration - Dummies

Die fundamentalen Elemente der Big-Data-Plattform verwalten Daten auf neue Weise verglichen mit der traditionellen relationalen Datenbank. Dies liegt daran, dass Skalierbarkeit und hohe Leistung erforderlich sind, um sowohl strukturierte als auch unstrukturierte Daten zu verwalten. Komponenten des Big-Data-Ökosystems von Hadoop bis NoSQL DB, MongoDB, Cassandra, ...

Die Wahl des Herausgebers

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

Die meisten modernen Smartphones sind Wi-Fi-fähig. In ein lokales Netzwerk können Sie Spotify-Tracks mithilfe von Wi-Fi auf Ihr Telefon streamen. Sie können Spotify Mobile zu Hause und über Wi-Fi-Netzwerke in Hotels und Cafés problemlos nutzen - Sie müssen nur sicherstellen, dass Sie angemeldet und verbunden sind. ...

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert, kann Auswirkungen auf den Festplattenspeicher Ihres Computers haben. Internetverbindung. Spotify funktioniert anders als viele andere Online-Musikdienste, weil es auf mehrere Arten angewiesen ist, um Ihnen reibungslos Musik ohne Verzögerungen zu liefern. In Computing-Sprechen, das Maß der Verzögerung zwischen Anfordern eines Songs und Hören es ...

So ​​erreichen Sie Spotify Support - Dummies

So ​​erreichen Sie Spotify Support - Dummies

Es kann vorkommen, dass Sie eine kleine Hilfe beim Navigieren und Verwenden von Spotify benötigen von deinen Spotify Freunden. Sie können jederzeit Support @ spotify per E-Mail senden. com mit Ihrer Frage oder melden Sie sich bei Twitter an und senden Sie einen Tweet an @spotify. Stellen Sie sicher, dass Sie alle Informationen einschließen, die dem Support-Team helfen könnten, einschließlich Ihres Benutzernamens, damit sie ...