2017-02-03 2 views
1

Ich versuche, einen Datenrahmen zu speichern bucketBy mitFunken 2.0 bucketBy speichern

df.write.bucketBy("column").format("parquet").save() 

Aber das Herstellen der Fehler: Exception in thread "main" org.apache.spark.sql.AnalysisException: 'retten' tut unterstützt Bucketing jetzt nicht;

Gibt es eine andere Möglichkeit, das Ergebnis von bucketBy zu speichern?

+0

Kein Vorschlag? – syl

+0

DataFrameWriter.bucketBy ist verfügbar, um die Ausgabe wie Hive zu becken. Weitere Informationen finden Sie im API-Dokument unter https://spark.apache.org/docs/2.0.0/api/java/org/apache/spark/sql/DataFrameWriter.html#bucketBy(int,%20java.lang.String,% 20scala.collection.Seq) – Salim

Antwort

3

Bis jetzt unterstützt spark 2.1, save Bucketing nicht wie in der Fehlermeldung angegeben.

Die Methode bucketBy gruppiert die Ausgabe nach den angegebenen Spalten, und wenn/falls angegeben, wird die Ausgabe ähnlich wie das Bucket-Schema von Hive im Dateisystem angelegt.

Es ist eine JIRA in Bearbeitung, die an Hive bucketing support [SPARK-19256] arbeitet.

Die einzige verfügbare Operation nach Bucketing wäre saveAsTable, die den Inhalt der DataFrame/Dataset als die angegebene Tabelle speichert.

Und da hauptsächlich Funken verbindet mit Bienenstock so tatsächlich speichern Sie es auf hive.

Also was Sie eigentlich sind, ist vorerst mit Funken nicht möglich.

Verwandte Themen