Wie speichere ich einen Spark-Datenrahmen und referenziere ihn in einem anderen Skript

8

Ist es möglich, einen Datenrahmen zwischenzuspeichern und dann in einem anderen Skript zu referenzieren (abfragen)? ... Mein Ziel ist wie folgt:

  1. Erstellen Sie in Skript 1 einen Datenrahmen (df)
  2. Führen Sie Skript 1 und cache df
  3. aus
  4. Suchen Sie in Skript 2 Daten in df
Matthew Buxbaum 23.02.2016, 16:54
quelle

2 Antworten

4

Es ist nicht möglich, Standard-Spark-Binärdateien zu verwenden. Spark DataFrame ist an die spezifische SQLContext gebunden, mit der es erstellt wurde und auf die nicht außerhalb zugegriffen werden kann.

Es gibt Tools, wie zum Beispiel Apache Zeppelin oder Databricks, die den gemeinsamen Kontext in verschiedene Sessions einfügen. Auf diese Weise können Sie temporäre Tabellen zwischen verschiedenen Sitzungen und / oder Gastsprachen freigeben.

Es gibt andere Plattformen, einschließlich spark-jobserver und Apache Ignite , die alternative Möglichkeiten zur gemeinsamen Nutzung verteilter Datenstrukturen bieten. Sie können sich auch die ansehen Livy Server .

Siehe auch: Teilen Sie SparkContext zwischen Java und R Apps unter demselben Master

    
zero323 23.02.2016, 17:15
quelle
0

Sie können die tatsächlichen Daten auch in einer Datei / Datenbank speichern und erneut laden. Spark stellt Methoden zu dem Zweck bereit, damit Sie die Daten für den Treiber nicht sammeln müssen.

    
ThatDataGuy 01.11.2016 11:32
quelle