2016-06-09 107 views
4

我正在尋找支持Spark SQL的客戶端jdbc驅動程序。我已經使用Jupyter到Spark上運行SQL語句(在HDInsight上運行),我希望能夠使用JDBC進行連接,因此我可以使用第三方SQL客戶端(例如SQuirreL,SQL Explorer,等等)而不是筆記本接口。是否有Spark SQL jdbc驅動程序?

我發現了一個來自Microsoft的ODBC驅動程序,但這對基於Java的SQL客戶端沒有幫助。我也嘗試從我的羣集下載Hive jdbc驅動程序,但Hive JDBC驅動程序似乎不支持Spark所提供的更多高級SQL功能。例如,Hive驅動程序抱怨說不支持不是equajoins的join語句,我知道這是Spark支持的功能,因爲我成功地在Jupyter中執行了相同的SQL。

+0

問題尋求建議或幫助找到一個圖書館或其他非現場資源是脫離主題。 –

+0

http://www.simba.com/drivers/spark-jdbc-odbc/ Simba的Apache Spark ODBC和JDBC驅動程序通過將應用程序的SQL查詢轉換爲Spark SQL中的等效形式,將SQL有效地映射到Spark SQL,從而實現直接標準SQL -92訪問Apache Spark分發。 – kliew

+0

我會嘗試配置單元的jdbc驅動程序與它交談。 – lockwobr

回答

0

蜂房JDBC驅動程序似乎並不支持更先進的SQL功能的火花呢

不管它提供的支持,星火節儉服務器是fully compatible with Hive/Beeline's JDBC connection

因此,這是您需要使用的JAR。我已經在DBVisualizer中驗證了這一點。

另一種解決方案是直接在Java客戶端(非第三方工具)中運行Spark代碼並跳過對JDBC連接的需求。

+0

如何在Java客戶端中運行Spark代碼?如何提交查詢? – user1870400

+0

您只需編譯並運行它...隨意在評論之外發布自己的問題以獲得更多深入解答 –

+0

我不確定如何在不通過spark-submit的情況下編譯和運行? Spark-submit有它自己的類加載器,它不是默認的Java類加載器。 – user1870400