Ich habe einen Cluster aus zwei Arbeiterknoten. Worker_Node_1 - 64 GB RAM Worker_Node_2 - 32 GB RAM
Background Summery: Ich versuche, funke-submit auf yarn-cluster auszuführen, um Pregel auf einem Graphen auszuführen, um die kürzesten Pfaddistanzen von einem Quellknoten zu allen anderen Knoten zu berechnen und die Werte auf der Konsole auszugeben. Experimentieren:
Problem: Wenn ich in die Log-Datei einchecke, wird die Aufgabe in 4 Minuten und 26 Sekunden vollständig erfolgreich abgeschlossen, aber immer noch auf dem Terminal zeigt sie den Anwendungsstatus als Running und nach ca. 12 weiteren an Die Ausführung der Minuten-Task endet mit der Angabe -
%Vor%Dinge, die ich versucht habe:
Könnten Sie bitte mehr Farbe darauf legen, wie ich den Resource Manager so konfigurieren kann, dass auch Large Size Graphs (& gt; 300K Vertices) verarbeitet werden können? Danke.
Je mehr Daten verarbeitet werden, desto mehr Speicher wird von jeder Spark-Task benötigt. Und wenn Ihr Executor zu viele Aufgaben ausführt, kann der Arbeitsspeicher knapp werden. Wenn ich Probleme bei der Verarbeitung großer Datenmengen hatte, war dies normalerweise darauf zurückzuführen, dass die Anzahl der Kerne pro Executor nicht ordnungsgemäß ausgeglichen wurde. Versuchen Sie entweder die Anzahl der Kerne zu reduzieren oder den Executor-Speicher zu erhöhen.
Eine einfache Möglichkeit, Speicherprobleme zu erkennen, besteht darin, die Registerkarte Executor auf der Spark-Benutzeroberfläche zu überprüfen. Wenn Sie viele rote Balken sehen, die auf eine hohe Zeit für die Speicherbereinigung hinweisen, haben Sie wahrscheinlich in Ihren Executoren nicht mehr genug Speicher.
Tags und Links hadoop apache-spark spark-graphx