2016-09-21 6 views
7

Wie können wir den Gesamtspeicher für einen Funkenjob erhalten? Ich kann den genauen Parameter, auf den wir verweisen können, nicht abrufen. Ich habe mich auf Spark UI bezogen, bin mir aber nicht sicher, welches Feld wir verweisen können. Auch in Ganglia haben wir folgende Möglichkeiten: a) Memory Buffer b) Cache-Speicher c) Freier Speicher d) Shared Memory e) Freier Swap SpaceÜberwachen der Speicherbelegung von Spark-Jobs

Nicht in der Lage jede Option Speicher im Zusammenhang gewöhnungsbedürftig. Hat jemand eine Idee diesbezüglich?

Antwort

0

Wenn Sie Ihre RDDs beibehalten, können Sie über die Benutzeroberfläche sehen, wie groß sie im Speicher sind.

Es ist schwer zu verstehen, wie viel Speicher für Zwischenaufgaben verwendet wird (z. B. für Shuffle). Grundsätzlich wird Spark soviel Speicher verwenden, wie es benötigt, vorausgesetzt, es ist verfügbar. Dies bedeutet, dass Ihre Anwendung langsamer wird, wenn Ihre RDDs mehr als 50% Ihrer verfügbaren Ressourcen belegen, da weniger Ressourcen für die Ausführung verfügbar sind.

+0

Vielen Dank für Ihre Eingaben. Ja, wir haben eine der RDD in der Zwischenstufe beibehalten, aber die Anforderung ist so, dass wir den "belegten Speicher" oder den durchschnittlichen Speicher, der während des gesamten Zyklus des Jobs verwendet wird, berechnen müssen. Können Sie uns bitte die Einsichten liefern, wenn wir sie mit einigen UI oder anderen Tools abrufen können? –

Verwandte Themen