pyspark

___ tag123apachespark ___ Apache Spark ist eine Open-Source-Bibliothek für die verteilte Datenverarbeitung für groß angelegte In-Memory-Datenanalyse-Computing. ___ tag123yarn ___ YARN (Yet Another Resource Negotiator) ist eine Schlüsselkomponente der Apache Hadoop-Infrastruktur der zweiten Generation. Verwenden Sie DIESE NICHT für den JavaScript / Node.js Garn-Paket-Manager (verwenden Sie stattdessen [yarnpkg])! Ursprünglich von Apache als neugestalteter Ressourcenmanager beschrieben, wird YARN jetzt als großräumiges, verteiltes Betriebssystem für Big-Data-Anwendungen einschließlich MapReduce (MR2) der nächsten Generation charakterisiert. ___ qstnhdr ___ Pyspark auf Garn-Cluster-Modus ___ tag123pypark ___ Die Spark Python-API (PySpark) macht das Apache-Spark-Programmiermodell für Python verfügbar. ___ answer31330600 ___

Der Grund, warum %code% mode nicht unterstützt wird, ist, dass %code% das Bootstrapping des Treiberprogramms selbst (z. B. das Programm, das einen SparkContext aufruft) auf einen YARN-Container aufruft. Ausgehend von Ihrer Aussage über das Senden von einer Django-Webanwendung klingt es so, als wolle man den Python-Code, der den SparkContext enthält, in die Web-App selbst einbetten, anstatt den Treibercode an einen YARN-Container zu senden, der dann einen separaten Spark-Job handhabt .

Dies bedeutet, dass Ihr Fall am ehesten mit %code% mode anstatt mit %code% übereinstimmt; Im %code% -Modus können Sie Ihren SparkContext-Code an beliebiger Stelle (wie in Ihrer Web-App) ausführen, während er mit YARN über die tatsächlichen Mechanismen laufender Jobs spricht.

Wenn Sie einen speicherinternen Status zwischen Ihrer Webanwendung und Ihrem Spark-Code teilen, bedeutet dies grundsätzlich, dass Sie den Spark-Teil nicht abtrennen können, um ihn in einem YARN-Container auszuführen, was% co_de ist % versucht zu tun. Wenn Sie keinen Status teilen, können Sie einfach einen Subprozess aufrufen, der tatsächlich %code% aufruft, um einen unabhängigen PySpark-Job zur Ausführung im %code% -Modus zu bündeln.

Zusammenfassend:

  1. Wenn Sie Ihren Spark-Code direkt in Ihre Web-App einbetten möchten, müssen Sie stattdessen %code% mode verwenden: SparkConf (). setMaster ("Garn-Client")
  2. Wenn der Spark-Code locker genug gekoppelt ist, dass %code% tatsächlich realisierbar ist, können Sie einen Python- Subprozess um %code% in %code% mode tatsächlich aufzurufen.
___ qstntxt ___

Gibt es eine Möglichkeit, pyspark-Skripte mit dem Garn-Cluster-Modus auszuführen, ohne das Spark-Submit-Skript zu verwenden? Ich brauche es auf diese Weise, weil ich diesen Code in eine Django Web App integrieren werde.

Wenn ich versuche, irgendein Skript im Garn-Cluster-Modus auszuführen, habe ich den folgenden Fehler:

%Vor%

Ich erstelle den sparkContext folgendermaßen:

%Vor%

Danke

    
___
4
Antworten

PySpark verteilte Verarbeitung auf einem YARN-Cluster

Ich habe Spark auf einem Cloudera CDH5.3-Cluster ausgeführt, wobei YARN als Ressourcenmanager verwendet wird. Ich entwickle Spark Apps in Python (PySpark). Ich kann Jobs einreichen und sie werden erfolgreich ausgeführt, scheinen jedoch nie au...
30.01.2015, 05:06
1
Antwort

Wie werden RDDs mit einer Python-Klasse verarbeitet?

Ich implementiere ein Modell in Spark als Python-Klasse, und jedes Mal, wenn ich versuche, eine Klassenmethode einer RDD zuzuordnen, schlägt es fehl. Mein tatsächlicher Code ist komplizierter, aber diese vereinfachte Version wird zum Kern des Pr...
10.09.2015, 15:02
4
Antworten

Wie man Pyspark in Anaconda importiert

Ich versuche, pyspark mit Anaconda zu importieren und zu verwenden. Nachdem ich Spark installiert und die $SPARK_HOME Variable gesetzt habe, habe ich versucht: %Vor% Dies wird nicht funktionieren (natürlich), weil ich entdeckt habe,...
19.11.2015, 20:43
1
Antwort

Syntax beim Festlegen des Schemas für Pypspark.sql mit StructType

Ich bin neu zu funken und spielte mit Pysparks.sql herum. Laut der pyspark.sql Dokumentation hier , kann man das einstellen Spark Datenrahmen und Schema wie folgt: %Vor% Meine Frage ist, wofür steht True in der obigen schema Liste? Ic...
13.05.2015, 12:09
2
Antworten

Wie kann ich in PySpark von einer Transformation in log4j einloggen?

Ich möchte mich während der Umwandlung beim Logger in einem Executor anmelden, wobei Protokollstufen und Formatierung respektiert werden. Leider kann ich nicht auf das Log4j-Logger-Objekt innerhalb der Methode zugreifen, da es nicht serialisierb...
15.03.2016, 21:56
2
Antworten

Wie wird Python Spark Code auf Amazon Aws ausgeführt?

Ich habe einen Python-Code in Spark geschrieben und möchte ihn auf Amazon Elastic Map reduzieren. Mein Code funktioniert auf meinem lokalen Computer sehr gut, aber ich bin etwas verwirrt darüber, wie er auf Amazon AWS ausgeführt wird? Gena...
05.11.2016, 22:01
2
Antworten

pyspark: ValueError: Einige der Typen können nach dem Schluss nicht bestimmt werden

Ich habe einen Pandas-Datenrahmen my_df , und my_df.dtypes gibt uns: %Vor% Dann versuche ich, den Pandas-Datenrahmen my_df in einen Spark-Datenrahmen umzuwandeln, indem ich Folgendes mache: %Vor% Allerdings habe ich folgende Fehl...
09.11.2016, 23:11
1
Antwort

Apache Spark: Wie erstelle ich eine Matrix aus einem DataFrame?

Ich habe einen Datenrahmen in Apache Spark mit einem Array von ganzen Zahlen, die Quelle ist eine Reihe von Bildern. Ich möchte schließlich PCA machen, aber ich habe Probleme, nur eine Matrix aus meinen Arrays zu erstellen. Wie erstelle ich eine...
22.07.2015, 15:47
1
Antwort

pyspark Verteilen Python-Prozesse auf einem Executor-Knoten Broadcast-Variablen in ram?

Ich habe einen Knoten mit 24 Kernen und 124 Gb RAM in meinem Funkencluster. Wenn ich das Feld spark.executor.memory auf 4g setze und dann eine Variable ausstrahle, die 3,5 GB zur Speicherung im RAM benötigt, werden die Kerne insgesamt 24 Kopien...
17.10.2016, 09:18
2
Antworten

Warum gibt der Mongo Spark-Connector für eine Abfrage unterschiedliche und falsche Zahlen zurück?

Ich bewerte Mongo Spark connector für ein Projekt und bekomme die inkonsistenten Ergebnisse. Ich benutze MongoDB Server Version 3.4.5, Spark (über PySpark) Version 2.2.0, Mongo Spark Connector Version 2.11, 2.2.0 lokal auf meinem Laptop. Für mei...
09.10.2017, 17:35