rjdbc配置单元,连接失败

dvtswwa3  于 2021-06-25  发布在  Hive
关注(0)|答案(1)|浏览(385)

我按照multiples教程尝试用rjdbc连接到hive,但没有成功。
以下是我所拥有的:

library(DBI)
library(rJava)
library(RJDBC)

driver <- JDBC('org.apache.hive.jdbc.HiveDriver',
            classPath = list.files("/home/cdsw/R",pattern="jar$",full.names=T),
            identifier.quote="`")

USERNAME <- "MyUser"
PASSWORD <- "MySecretPassWord"
HOSTNAME <- "my.host.net"
PORT <- 10000

server <- sprintf('jdbc:hive2://%s:%s', HOSTNAME, PORT)

conn <- dbConnect(driver, server,
                  USERNAME, PASSWORD)

我已下载并放置在 "/home/cdsw/R/" 这个 jar 文件夹。

list.files("/home/cdsw/R",pattern="jar$",full.names=T)

[1] "/home/cdsw/R/hadoop-common-2.6.0-cdh5.16.99.jar"
[2] "/home/cdsw/R/hive-jdbc-1.1.0-cdh5.16.99.jar"

我也尝试过最新的版本,但总是与相同的cloudera版本同步。即使我的版本是5.xx。
我很肯定 HOSTNAME 是正确的,因为我已经使它与 impyla 在python中使用相同的主机名/端口。
错误:
.jcall出错(drv@jdrv,“ljava/sql/connection;”,“connect”,as.character(url)[1],:java.lang.noclassdeffounderror:org/apache/thrift/texception
据我所知,我没有正确的答案 .jar 什么?
备注:
我不能在机器上安装hivejdbc,因为我不是root用户。既然我有这个地方,我可以不用它吗 hive-jdbc-1.1.0-cdh5.16.99.jar 在文件夹中?
另外,kerberos是否会触发此错误?

ghhaqwfi

ghhaqwfi1#

我需要下载独立版本的hive驱动程序。 hive-jdbc-3.1.2-standalone.jar ,独立版本不需要完整安装配置单元客户端。

相关问题