JDBC Spark 连接

Posted

技术标签:

【中文标题】JDBC Spark 连接【英文标题】:JDBC Spark connection 【发布时间】:2016-05-05 02:10:42 【问题描述】:

我正在研究建立一个 以从 R/python 使用。我知道pysparkSparkR 都可用——但它们似乎更适合交互式分析,特别是因为它们为用户保留了集群资源。我正在考虑更类似于 Tableau ODBC Spark 连接的东西——更轻量级的东西(据我所知),用于支持简单的随机访问。虽然这似乎是可能的,并且有一些documentation,但(对我来说)JDBC 驱动程序的要求并不清楚。

我是否应该像我一样使用 org.apache.hive.jdbc.HiveDriver 来建立 Hive 连接,因为通过 thrift 的 Hive 和 Spark SQL 似乎密切相关?我是否应该将我的 Hive 连接(使用 HiveServer2 端口)所需的 hadoop-common 依赖项换成一些特定于 spark 的依赖项(使用 hive.server2.thrift.http.port 时)?

此外,由于大多数连接功能似乎都利用了 Hive,导致 Spark SQL 被用作查询引擎而不是 Hive 的关键是什么?

【问题讨论】:

【参考方案1】:

事实证明,我需要使用的 URL 与 ambari 中列出的 Hive 数据库主机 URL 不匹配。我在如何连接(特别是我的集群)的示例中遇到了正确的 URL。给定正确的 URL,我能够毫无问题地使用 HiveDriver 建立连接。

【讨论】:

以上是关于JDBC Spark 连接的主要内容,如果未能解决你的问题,请参考以下文章

通过 Spark 的 Hive JDBC 连接(Nullpointer 异常)

Spark Jdbc 连接 JDBCOptions

将 jdbc 连接传递给 spark 读取

Spark集群模式下的Impala JDBC连接问题

从 Spark 到 Oracle 服务器的 JDBC 连接

JDBC Spark 连接