Ich versuche, zwei Tabelle im Bienenstock mit fast der gleichen Anzahl von Datensätzen zu verbinden. Die Ausführung der Abfrage dauert sehr lange. Warum in Hive JOINS lange dauern, um auszuführen? Die Anzahl der Datensätze beträgt ca. 50k in beiden Tabellen.Warum in HIVE Joins viel Zeit in der Ausführung nehmen?
Antwort
Die Hive-Abfrage wird intern in Map Reduce konvertiert und ausgeführt, wodurch die Ausführung einige Minuten dauert. Es gibt verschiedene Möglichkeiten, die Leistung zu verbessern. Sie können dieser link folgen, um die Abfrageleistung zu verbessern.
Der Hauptgrund für die Verwendung von Hive oder Hadoop ist die Verarbeitung großer Datenmengen. Sie werden also im Vergleich zu anderen relationalen Datenbanken einen enormen Leistungszuwachs sehen, wenn Sie mit riesigen Datenmengen arbeiten. Aber für die Menge der Daten, die Sie erwähnen, ist wahrscheinlich kein guter Anwendungsfall für Hive.
Ich stimme Ihnen zu, dass Map Reduce nicht für eine kleine Anzahl von Datensätzen gedacht ist, aber die Joins, die ich mache, ist eine Teilmenge eines riesigen Datensets. Diese Daten sind gefilterte Daten aus einem großen Datensatz. Aber ich muss zwei Tische verbinden, um einen einzigen Satz zu bekommen. – v83rahul
Joining Daten in Hive ist absolut in Ordnung. Von dem, was Sie hier in Kommentaren erwähnen, vermute ich, dass Sie Filterkriterien haben, um Ihre Aufzeichnungen herauszufiltern. Daher können Sie Partitionen und Bucketing basierend auf den Spalten verwenden, die Sie beim Erstellen der Tabelle verbinden, wodurch die Leistung weiter verbessert wird. –
- 1. Scalar subquery viel Zeit nehmen, auszuführen
- 2. Batch einfügen in Impala zu viel Zeit in Anspruch nehmen
- 3. Einfache WCF-Anrufe nehmen viel Zeit in Anspruch
- 4. Wählen Sie in SQL-Server viel Zeit nehmen
- 5. FFMPEG Befehl Ausführung dauert zu viel Zeit in Android
- 6. Treten Joins in Hive anders auf?
- 7. Senden von E-Mail mit Codeigniter Nehmen so viel Zeit
- 8. Warum nehmen Bilder zu viel Zeit beim Laden vom Server in Android?
- 9. HIVE: Zuordnen von Joins in partitionierten Tabellen
- 10. Linq Abfrage Wo() mit Datum Subtraktion zu viel Zeit nehmen
- 11. Wie Debuggen curl GET nehmen zu viel Zeit?
- 12. Tensorflow Android: Umgrupped Inception v3 nehmen zu viel Zeit
- 13. Express-Server res.json ("") nehmen Sie sich viel Zeit
- 14. CUDA-Streams nehmen längere Zeit in Anspruch
- 15. JButtons in JPanel nehmen zu viel Platz
- 16. Warum benötigen Windows-Snapshots viel Zeit?
- 17. Lokale Zeit konvertieren in UTC Zeit in Hive
- 18. Warum benötigen manche Installationen so viel Zeit?
- 19. Ausführung der Hive-Abfrage in einer Shell-Aktion in Oozie
- 20. Notwendigkeit, SQL-Abfrage zu optimieren - viel Zeit für die Ausführung
- 21. Warum Funktionsaufruf so viel Zeit braucht?
- 22. Warum dataframe.appy Kosten zu viel Zeit
- 23. Finde die Zeit der letzten Ausführung des Workflows in oozie
- 24. Warum Abfrage dauert viel Zeit, um Ergebnis in SQL
- 25. Warum Locking in Go viel langsamer als Java? Viel Zeit in Mutex verbracht.Lock() Mutex.Unlock()
- 26. MQTT zu ActiveMQ THEMA nehmen viel Zeit in Ereignisempfänger von WSO2 CEP
- 27. ImageViews in GridView nehmen wahnsinnig viel Platz in Anspruch
- 28. Tomcat nimmt zu viel Zeit in Anspruch
- 29. Schreiben von Dateien viel Zeit
- 30. Hive Mapreduce-Jobs nicht starten .. mitten in der Ausführung stecken
Warum wurde diese Frage abgelehnt? Bitte werfen Sie einen Blick auf nützliche Kommentare, wie die Frage verbessert werden kann. Meine fünf Cent: Bitte fügen Sie weitere Details hinzu: die Abfrage, wie lange läuft sie, Abfrageplan – leftjoin