在使用CDH 4.2的集群中,我看到了两个不同的hive-site.xml文件。
1. hive conf目录中的hive-site.xml文件。
2.我可以从CDH 4.2的WebUI查看的hive-site.xml文件

我的问题是,根据配置单元执行模式,这两个文件都具有不同的内容。
conf目录中的hive-site.xml文件将执行模式列为“远程”。它的参数值“hive.metastore.local”为“false”,并且还将参数-> hive.metastore.uris定义为-

thrift://<machine_name>:9083

但是我可以使用WebUI查看的hive-site.xml文件将本地模式列为true并设置以下参数。
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:postgresql://<machine_name>:7432/hive</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>org.postgresql.Driver</value>
  </property>

我认为它在本地模式下运行,因为WebUI还指出,配置单元metastore在配置单元进程中运行并且正在侦听端口9083。
此外,根据配置,默认情况下,hiveserver2应该在端口10000上运行,事实并非如此。

所以我有两个查询
1.为什么会有2个不同的配置XML文件?
2.是否有一个“石蕊”测试来确认配置单元确实在本地模式下运行?
谢谢。

最佳答案

根据对Jira票证Collapse hive.metastore.uris and hive.metastore.local的解释,如果设置了hive.metastore.uris属性,则在您的情况下,Hive元存储将在远程模式下运行。如果未设置属性hive.metastore.uris,则Hive Metastore将在本地模式下运行。

上面的内容还暗示,从Hive 0.10(CDH4中的版本)开始,删除了hive.metastore.local属性。

07-24 09:53
查看更多