我的需求是啓用ODBC/JDBC訪問SparkSQL 臨時表,其中有一個Spark中的DataFrame(混合基於JSON和流)。使用HiveThriftServer2與sqlContext的Spark 2.x
我使它在Spark 1.6中工作,然後最近升級到Spark到2.1.1。我調整了我的代碼作爲this question中的第二個應答者。我注意到,對這一條款棄用警告,但是:
val sqlContext = new org.apache.spark.sql.SQLContext(spark.sparkContext)
所以我對sqlContext檢查javadoc,和它說:「使用已過時,而不是SparkSession.builder 2.0.0以來。」但是,因此,即使是最新的HiveThriftserver2.scala code in git,startWithContext方法也需要sqlContext類型的參數。
所以,任何人都可以在知道一些線索這光:
我拿起解決問題的正確途徑,擺在首位?我很樂意不從我的Spark代碼中啓動HiveThriftServer2,但是然後/sbin/start-thriftserver.sh沒有爲我啓動一個帶有我的類的thriftserver實例的選項。或者,是嗎,我只是想念它?
是否有另一種方法使用SparkSession從Spark代碼啓動HiveThriftServer2?
節儉服務器啓動腳本只是打開而據我所知運行的Java/Scala的類 –
@ cricket_007是的,這班不是我想要提供(如果我理解腳本右)類,但是HiveThriftServer2類;我只是想仔細檢查我的理解是否正確。 – Roman
如果您想以編程方式創建該對象,則此處爲您想要的行。 https://github.com/apache/spark/blob/master/sql/hive-thriftserver/src/main/scala/org/apache/spark/sql/hive/thriftserver/HiveThriftServer2.scala#L91 –