2

Ich bin ein Funke 2.1.0 Sparsamkeitsserver mit MySQL Metastore.Spark 2.1.0 Sparset-Server nicht zeigen globale temporäre Tabellen

In meiner langen laufenden Anwendung, ich bin ein Datenrahmen mit createGlobalTempView oder createOrReplaceTempView Funktion zu speichern, aber ich kann sie nicht sehen mit Beeline

Wenn ich write().saveAsTable() verwenden, es ist in Ordnung, und ich kann die Tabelle sehen mit Luftlinie.

Mein thrift Server und Anwendung sind zwei Anwendungen auf dem gleichen Funken Cluster und ich die spark.sql.hive.thriftServer.singleSession=true

Antwort

2

Für Standard temporäre Ansicht ist ein erwartetes Verhalten. Temporäre Tabellen sind nur im Rahmen einer bestimmten SparkSession sichtbar.

spark.sql.hive.thriftServer.singleSession gibt an, dass alle Verbindungen zu einem Thrift-Server eine einzelne Sitzung verwenden sollen und nicht, dass es eine einzige globale Sitzung für alle Anwendungen gibt.

Um temporäre Tabellen mit Thrift serve verfügbar zu machen, haben Sie mit demselben Kontext begonnen, in dem Tabellen registriert wurden.

Für globale temporäre Ansichten (2.1+) sollten Sie den qualifizierten Namen (einschließlich Datenbankname spark.sql.globalTempDatabase) verwenden, um auf die Ansicht zuzugreifen.

Verwandte Themen