ToB企服应用市场:ToB评测及商务社交产业平台

标题: Java访问Hive的几种JDBC URL格式 [打印本页]

作者: 千千梦丶琪    时间: 2024-8-6 06:35
标题: Java访问Hive的几种JDBC URL格式
1.相干参数的默认值:
1)hive 服务默认端口是 10000
2)zookeeper server默认端口是 2181
3)hive 的默认数据库是 default

2.几种方式访问hive的JDBC URL区别:
1)hive2 server 单点访问 JDBC URL
格式:
jdbc:hive2://<hive2server:port>/<dbName>
示例:
jdbc:hive2://192.168.100.145:10000/frankdb
hive-site.xml 配置文件中的端口配置:
<property>
    <name>hive.server2.thrift.port</name>
    <value>10000</value>
</property>
如果配置文件中没有配置 hive.server2.thrift.port 或者配置的值不是 10000 则表示 Hive 没有开放 10000 端口。
2)hive2 server HA(zookeeper)方式访问 JDBC URL
格式:
jdbc:hive2://<zookeeper quorum>/<dbName>;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2
阐明:
zookeeper quorum:是 hive-site.xml 配置文件中 Zookeeper 的 Quorum 节点列表,以三节点为例格式为:zk_host01:zk_port,zk_host02:zk_port,zk_host03:zk_port
示例:
eg1:
jdbc:hive2://hdp01.hadoop.com:2181,hdp02.hadoop.com:2181,hdp03.hadoop.com:2181/frankdb;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2
eg2:
jdbc:hive2://node01:2181,node02:2181,node03:2181/frankdb;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2
hive-site.xml 配置文件中的相干配置:
<property>
    <name>hive.server2.support.dynamic.service.discovery</name>
    <value>true</value>
</property>
<property>
    <name>hive.server2.zookeeper.namespace</name>
    <value>hiveserver2</value>
</property>
<property>
    <name>hive.zookeeper.quorum</name>
    <value>hdp01.hadoop.com:2181,hdp02.hadoop.com:2181,hdp03.hadoop.com:2181</value>
</property>
<property>
    <name>hive.zookeeper.client.port</name>
    <value>2181</value>
</property>
3)hive2 server 单点访问(带Kerberos认证) JDBC URL
示例:
jdbc:hive2://192.168.100.145:10000/frankdb;principal=frank/hdp01.hadoop.com@HADOOP.COM
jdbc:hive2://192.168.100.145:10000/frankdb;principal=frank/hdp01.hadoop.com@HADOOP.COM;auth=KERBEROS
留意:
a)JDBC URL通常不必要指定auth=KERBEROS,通常是通过配置的方式隐式启用的
b)hive 的 principal 在 hive-site.xml 配置文件中获取(JDBC URL中必要将"_HOST"替换本钱机的域名):
<property>
<name>hive.server2.authentication.kerberos.principal</name>
<value>frank/_HOST@HADOOP.COM</value>
</property>

4)hive2 server HA(zookeeper)方式访问(带Kerberos认证) JDBC URL
示例:
jdbc:hive2://hdp01.hadoop.com:2181,hdp02.hadoop.com:2181,hdp03.hadoop.com:2181/frankdb;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;principal=frank/_HOST@HADOOP.COM
jdbc:hive2://hdp01.hadoop.com:2181,hdp02.hadoop.com:2181,hdp03.hadoop.com:2181/frankdb;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=hiveserver2;principal=frank/_HOST@HADOOP.COM;auth=KERBEROS
留意:
a)JDBC URL通常不必要指定auth=KERBEROS,通常是通过配置的方式隐式启用的
b)hive 的 principal 在 hive-site.xml 配置文件中获取(JDBC URL中"_HOST"不能替换、不能写固定节点的域名,由于他会去 zookeeper 上找,大概访问不同节点的 hiveserver2):
<property>
<name>hive.server2.authentication.kerberos.principal</name>
<value>frank/_HOST@HADOOP.COM</value>
</property>

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4