我正在尝试用python在hive-server2和我的本地窗口机器之间建立连接。我有一个连接字符串和一个密钥库文件。我使用Jaydebeapi python模块来解决这个问题。我正在使用的各种.jar文件:
1) HiveJDBC4.jar
2) 蜂巢_元存储.jar
3) hive-service-0.13.1.jar
4) libfb303-0.9.0.jar文件
5) libstrift-0.9.0.罐
6) log4j-1.2.14.jar
7) ql.jar文件
8) slf4j-api-1.5.8.jar文件
9) slf4j-log4j12-1.5.8.jar
10) TCLIServiceClient.jar文件
11) httpclient-4.3.3.jar
12) httpcore-4.3.jar
13) 番石榴-16.0.1.罐
14) hadoop-common-2.2.0.jar
15) hive-common-0.10.0.jar
我的连接字符串是:
jdbc:hive2://example@domain.com:port/;
ssl=true;
sslTrustStore=FileKey.jks;
trustStorePassword=password;
transportMode=http;
httpPath=gateway/default/hive
我尝试过其他模块,但对于给定的问题和输入,Jaydebeapi方法在这里更有效。 我编写了python代码:
import jaydebeapi
Jars = ['C:/Cloudera_HiveJDBC/HiveJDBC4.jar',
'C:/Cloudera_HiveJDBC/hive_metastore.jar',
'C:/Cloudera_HiveJDBC/hive-service-0.13.1.jar',
'C:/Cloudera_HiveJDBC/libfb303-0.9.0.jar',
'C:/Cloudera_HiveJDBC/libthrift-0.9.0.jar',
'C:/Cloudera_HiveJDBC/log4j-1.2.14.jar',
'C:/Cloudera_HiveJDBC/ql.jar',
'C:/Cloudera_HiveJDBC/slf4j-api-1.5.8.jar',
'C:/Cloudera_HiveJDBC/slf4j-log4j12-1.5.8.jar',
'C:/Cloudera_HiveJDBC/TCLIServiceClient.jar',
'C:/Cloudera_HiveJDBC/httpclient-4.3.3.jar',
'C:/Cloudera_HiveJDBC/httpcore-4.3.jar',
'C:/Cloudera_HiveJDBC/guava-16.0.1.jar',
'C:/Cloudera_HiveJDBC/hadoop-common-2.2.0.jar',
'C:/Cloudera_HiveJDBC/hive-common-0.10.0.jar']
conn_hive = jaydebeapi.connect('org.apache.hive.jdbc.HiveDriver','jdbc:hive2://example@domain.com:port/',
{'ssl':"true",
'sslTrustStore':"Filekey.jks",
'trustStorePassword':"password",
'transportMode':"http",
'httpPath':"gateway/default/hive"
},
jars= Jars)
cursor = conn_hive.cursor()
但我得到一个错误:
java.sql.SQLExceptionPyRaisable: java.sql.SQLException: Could not open client transport with JDBC Uri: jdbc:hive2://example@domain.com:port/: null
我添加的Jar文件中的代码有什么问题吗。 有没有其他的选择,我可以用给最好的结果。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐