2014-10-30 6 views

Antwort

14

Vor allem nur ein paar Worte über Begriffe. Spark-Master ist eine Anwendung, die die Ressourcenzuweisung von Slaves koordiniert. Der Master führt keine Berechnungen durch. Der Meister ist nur Ressourcenmanager.

Spark-Worker ist eine Anwendung auf Worker-Knoten, die Ressourcen auf bestimmten Worker-Knoten koordiniert.

Spark-Executor ist eine Anwendung, die von Funke Worker erstellt wird, die Aufgaben auf Worker-Knoten für Treiber ausführt.

prüfen diese doc für weitere Details - http://spark.apache.org/docs/latest/cluster-overview.html

spark.executor.memory - ist für Testamentsvollstrecker Menge an Speicher. Dieser Speicher wird für die angegebene Benutzeraufgabe verwendet.

SPARK_WORKER_MEMORY - wie viel Systemspeicher kann vom Arbeiter zum Erstellen von Executoren auf Knoten verwendet werden. Zum Beispiel haben Sie 64 GB auf Knoten. Sie legen SPARK_WORKER_MEMORY auf 60 GB fest. Dies bedeutet, dass Sie 2 x 30g-Executoren oder 10 x 6-GB-Executoren usw. erstellen können.

SPARK_MEM AFAIK wird nicht mehr verwendet. Ich kann es in der aktuellen Dokumentation nicht finden

SPARK_MASTER_MEMORY ist Speicher für Master. Sollte nicht zu hoch sein :)

SPARK_WORKER_CORES ist die Gesamtzahl der Kerne durch Vollstrecker durch jeden Arbeiter

SPARK_WORKER_INSTANCES ist Anzahl der Arbeiter pro Arbeiter Knoten verwendet werden.

Alle diese Parameter werden hier beschrieben - http://spark.apache.org/docs/latest/spark-standalone.html

+0

Thanks @ 1esha, wenn SPARK_WORKER_MEMORY = 60gb, und wir wollen 2 Testamentsvollstrecker sollte dann spark.executor.memory = 30 g, oder wird diese automatisch eingestellt werden? oder kann spark.executor.memory auf etwas anderes wie 10g gesetzt werden und wird SPARK_WORKER_MEMORY dann zu 20g mit 2 Ausführern geändert? – Oscar

+0

Oscar, SPARK_WORKER_MEMORY ist der Gesamtspeicher für Executoren pro Knoten. Wenn Sie zwei Knoten mit je 64 GB haben und bis zu 60 GB pro Knoten für Spark-Executoren ausgeben möchten, setzen Sie SPARK_WORKER_MEMORY auf 60 GB. Dies teilt 60 Knoten pro Knoten für Executoren zu. Als nächstes können Sie in Ihrem Treiber 'spark.executor.memory' einstellen. Es gibt an, wie viel Speicher pro Knoten von SPARK_WORKER_MEMORY zugewiesen wird. Wenn Sie es auf 10 GB einstellen, dauert es 20 GB insgesamt - 10 GB von jedem Knoten. – 1esha