Jetzt bin ich Anfänger in Spark sql (in scala lang). Ich möchte Abfragen ausführen. Erhöht die Verwendung von Parkettfiltern wirklich die Leistung? Müssen Parkettdateien oder Daten aus der Datenbank (Oracle) in HDFS zur Ausführung von Spark-Abfragen abgelegt werden? Welches ist der richtige Weg?Welchen sollte ich in spark sql für bessere Leistung verwenden, entweder das Lesen der Daten aus der Parquet-Datei oder das Lesen von Daten aus der Datenbank?
Antwort
Eins kann ich sicher sagen, das Lesen von Parkett-Dateien von HDFS ist besser skalierbar im Vergleich zum Lesen von RDBMS wie Oracle über JDBC-Connector. Und der Grund dafür ist Datenlokalität - wenn Sie Ihre Spark-Executoren auf den gleichen Hosts ausführen, wo sich HDFS-Datenknoten befinden und Daten effektiv in den Speicher ohne Netzwerk-Overhead lesen können. Weitere Informationen finden Sie unter https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-data-locality.html und How does Apache Spark know about HDFS data nodes? .
Das Parkett-Format ist ebenfalls säulenförmig und hat Vorteile gegenüber herkömmlichen RDBMS als OLAP-Speicher (insbesondere bei spärlichen Daten). Kurzvergleich: https://www.wikiwand.com/en/Column-oriented_DBMS#/Benefits
- 1. Lesen von Daten aus der Datenbank in Linq-to-SQL
- 2. Lesen von Daten aus der SQL-Datenbank in generische Sammlung
- 3. Problem beim Lesen von Nchar-Daten aus der Oracle-Datenbank
- 4. Lesen von Daten aus SQL Server mit Spark SQL
- 5. Daten aus einer Datenbank lesen?
- 6. Korrekt das Lesen der Daten von .csv-Dateien in PHP
- 7. Lesen von Daten aus Excel
- 8. Rückkehr Daten aus der Datenbank
- 9. für SQL-Fehler beim Lesen der Daten
- 10. Lesen Sie .NET-Konfiguration aus der Datenbank
- 11. Lesen von Daten aus SQL Webservice VB.NET
- 12. Muss ich Daten aus der Datenbank bereinigen?
- 13. Selenium Webdriver zum Lesen von Daten aus der Excel-Tabelle
- 14. Lesen von Daten aus der Website in C#
- 15. Fehler beim Lesen der Hex-Daten aus der .log-Datei
- 16. Lesen von Daten aus der XML-Datei in C#
- 17. Lesen von Daten aus Dateien in C
- 18. Entity Framework Daten lesen Leistung
- 19. Daten aus Array lesen
- 20. PDO Daten aus der Datenbank
- 21. Akka Schauspieler lesen Zustand aus der Datenbank
- 22. Daten aus der Dateiperformance extrahieren (Subprozess vs Datei lesen) Python
- 23. Kann Daten aus SQL Server-Datenbank nicht lesen
- 24. Komprimieren von Daten aus der Datenbank
- 25. Lesen von Daten aus $ _POST [] in PHP
- 26. Spark-Cassandra-Stecker Daten lesen
- 27. Lesen von Daten aus mehreren Datenquellentyp Lösung
- 28. Abrufen von Daten aus der Datenbank
- 29. Abfrage Abrufen von Daten aus der Datenbank
- 30. Lesen von Daten aus S3 mit Lambda
Parkettfeilen von FAR sind schneller zu lesen als von einer DB - etwa 3-4 Zehnerpotenzen schneller. –