2016-09-27 4 views
2

Spark 1.5.1では、すでにThrift Serverを使用してBearkからスパークシェル一時テーブルにアクセスできました。私はStackoverflowの関連する質問への回答を読むことでそうすることができました。beelineからSpark 2.0テンポラリテーブルにアクセスできない

しかし、Spark 2.0にアップグレードした後、Beelineからテンポラリテーブルを見ることができなくなりました。ここには私が従っているステップがあります。スパークシェルは、私が倹約サーバを起動し、そのソースを取ったデータフレームからの一時的なビューを作成するには、次の行を入力します。準備ができたら

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

私は、次のコマンドを使用して、スパーク・シェルを起動しています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() 

最後のステートメントはテーブルを表示し、正常に動作します。私はビーラインを起動して、私の倹約サーバーインスタンスにログインしたときに

しかし、私は、任意の一時テーブルを参照することはできません。

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

は、私がどのようにすることができ、1.5.1から2.0への私の火花のアップグレードに関する何かを欠場します一時テーブルにアクセスできますか?

答えて

0

これは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) 
を刺激するためにアップグレードした後、私のために働きました
関連する問題