我正在连接Hive使用pyhs2。但是Hive服务器需要Kerberos身份验证。任何人都知道如何将JDBC字符串转换为pyhs2参数?喜欢:
jdbc:hive2://biclient2.server.163.org:10000/default;principal=hive/app-20.photo.163.org@HADOOP.HZ.NETEASE.COM?mapred.job.queue.name=default
答案 0 :(得分:4)
我认为会是这样的:
pyhs2.connect(host='biclient2.server.163.org',
port=10000,
authMechanism="KERBEROS",
password="something",
user='your_user@HADOOP.HZ.NETEASE.COM')
我也是这样做的,我仍然没有成功,但至少有一个有意义的错误代码: (在Kerberos数据库中找不到服务器hive/xxx@yyy.COM)
答案 1 :(得分:3)
只要运行脚本的用户具有有效的kerberos票证,此连接字符串就会起作用:
import pyhs2
with pyhs2.connect(host='biclient2.server.163.org',
port=10000,
authMechanism="KERBEROS") as conn:
with conn.cursor() as cur:
print cur.getDatabases()
用户名,密码和任何其他配置参数都不是 通过了KDC。