hive分布式搭建
首先hive单机搭建
注: 现在master机器上搭建,并初始化生成mysql中hive数据库
参考博主的单机搭建博客试一试(里面包含了安装包无需寻找对应安装包)
hive单机安装教程,简单实用
hive集群搭建
在server节点上进行安装hive,配置hive-site.xml文件,并且配置相应的环境变量等。但是不要进行初始化,即使你进行了也不会成功,但最好别这样做。
配置hive-site.xml文件有变化
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>hdfs://mycluster/hive/warehouse</value>
<description>管理表存储的位置,可以是linux中的目录,也可以是相对于fs.default.name有关的目录</description>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<!-- 指定hive元数据存储的MySQL地址 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://dag01:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
</property>
<!-- 元数据存储数据库的驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!-- 元数据存储数据库的用户名 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!-- 元数据存储数据库的密码,(注:这里是mysql自己root用户的密码) -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>ok</value>
</property>
<property>
<name>hive.server2.authentication</name>
<value>NONE</value>
</property>
<property>
<name>hive.server2.thrift.client.user</name>
<value>root</value>
</property>
<property>
<name>hive.server2.thrift.client.password</name>
<value>ok</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://dag01:9083</value>
</property>
</configuration>
在master节点上启动hive的metastore
hive --service metastore &
这时你会发现你在其他server节点上可以访问hive的数据库了,这样一来你的hive分布式数据库就搭建完成,以图演示。