Не могу получить доступ к временной таблице Spark 2.0 от beeline

Со Spark 1.5.1 я уже мог получить доступ к временным таблицам spark-shell от Beeline с помощью Thrift Server. Я смог сделать это, прочитав ответы на связанные вопросы в Stackoverflow.

Однако после обновления до Spark 2.0 я больше не вижу временные таблицы от Билайн, вот шаги, которые я выполняю.

Я запускаю spark-shell с помощью следующей команды:

./bin/spark-shell --master=myHost.local:7077 —conf spark.sql.hive.thriftServer.singleSession=true

Как только оболочка spark будет готова, я ввожу следующие строки, чтобы запустить сервер бережливости и создать временное представление из фрейма данных, используя его источник в файле json.

import org.apache.spark.sql.hive.thriftserver._

spark.sqlContext.setConf("hive.server2.thrift.port","10002")
HiveThriftServer2.startWithContext(spark.sqlContext)
val df = spark.read.json("examples/src/main/resources/people.json")
df.createOrReplaceTempView("people")
spark.sql("select * from people").show()

Последний оператор отображает таблицу, она работает нормально.

Однако, когда я запускаю Beeline и захожу на свой экземпляр сервера сбережений, я не вижу никаких временных таблиц:

show tables;
+------------+--------------+--+
| tableName  | isTemporary  |
+------------+--------------+--+
+------------+--------------+--+
No rows selected (0,658 seconds)

Я что-то пропустил в отношении моего обновления spark с 1.5.1 до 2.0, как я могу получить доступ к своим временным таблицам?


person Cedric Artigue    schedule 27.09.2016    source источник


Ответы (1)


Это сработало для меня после обновления до искры 2.0.1

 val sparkConf = 
        new SparkConf()
            .setAppName("Spark Thrift Server Demo")
            .setMaster(sparkMaster)
            .set("hive.metastore.warehouse.dir", hdfsDataUri + "/hive")

      val spark = SparkSession
      .builder()
      .enableHiveSupport()
      .config(sparkConf)
      .getOrCreate()

  val sqlContext = new org.apache.spark.sql.SQLContext(spark.sparkContext) 
      HiveThriftServer2.startWithContext(sqlContext)
person user2608613    schedule 12.10.2016