欢迎投稿

今日深度:

【Hive篇】Hive的安装,

【Hive篇】Hive的安装,


HIVE的搭建比较简单,依托于Hadopp集群,以及mysql服务端。
多种搭建方式,主要介绍单一用户和多用户的场景,其中node01放置mysql服务端,node02放hive的单一用户模式。(node03和node04用于多用户模式,03为服务端,04为客户端)
那么搭建开始吧:

备注:上述2.3处的配置说明如下:
这种存储方式需要在本地行一个mysql服务器,并作如下配置(下面两种使用mysql的方式,需要将mysql的jar包拷贝到$HIVE_HOME/lib目录下)。

<?xml version="1.0"?>  
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>     
<configuration>  
<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive_remote/warehouse</value> // 存hdfs的位置 
</property>  

<property>  
  <name>hive.metastore.local</name>  
  <value>true</value>  // 是否自己管理元数据信息,单用户为true
</property>  

<property>  
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://node01/hive_remote?createDatabaseIfNotExist=true</value>  //jdbc连接
</property>  

<property>  
  <name>javax.jdo.option.ConnectionDriverName</name>  
  <value>com.mysql.jdbc.Driver</value>  // jdbc驱动
</property>  

<property>  
  <name>javax.jdo.option.ConnectionUserName</name>  
  <value>hive</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionPassword</name>  
  <value>password</value>  
</property>  
</configuration>  

2.4处添加和替换jar的原因如下:
启动hive:hive 后发现有The 此处的错误:specified datastore driver (“com.mysql.jdbc.Driver”),需要将mysql-connector-java-5.1.32-bin.jar此jar放在hive的lib目录下。再次启动还是会有问题,Found class jline.Terminal, but interface was expected 此时需要替换hive的新版本的jline的jar替换到hadood的yarn的lib下的jline.jar。

<?xml version="1.0"?>  
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

<configuration>  

<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive/warehouse</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://node01:3306/hive?createDatabaseIfNotExist=true</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>  

<property>  
  <name>javax.jdo.option.ConnectionPassword</name>  
  <value>123456</value>  
</property>  
</configuration>  

启动hive服务端程序

hive --service metastore  

2)、客户端配置文件

<?xml version="1.0"?>  
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  

<configuration>  

<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive/warehouse</value>  
</property>  

<property>  
  <name>hive.metastore.local</name>  
  <value>false</value>  
</property>  

<property>  
  <name>hive.metastore.uris</name>  
  <value>thrift://node03:9083</value> // 服务端地址  
</property>  

</configuration>  

测试:
客户端直接使用hive命令即可
root@node04:~$ hive
Hive history file=/tmp/root/hive_job_log_root_xxx.txt
hive> show tables;
OK
test_hive
Time taken: 0.736 seconds
hive>

备注:
1.Remote一体
这种存储方式需要在远端服务器运行一个mysql服务器,并且需要在Hive服务器启动meta服务。
这里用mysql的测试服务器,ip位192.168.1.214,新建hive_remote数据库,字符集位latine1

<?xml version="1.0"?>  
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>     
<configuration>   
<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive/warehouse</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://node01:3306/hive?createDatabaseIfNotExist=true</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionDriverName</name>  
  <value>com.mysql.jdbc.Driver</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionUserName</name>  
  <value>hive</value>  
</property>  

<property>  
  <name>javax.jdo.option.ConnectionPassword</name>  
  <value>password</value>  
</property>  

<property>  
  <name>hive.metastore.local</name>  
  <value>false</value>  
</property>  

<property>  
  <name>hive.metastore.uris</name>  
  <value>thrift://node03:9083</value>  
</property>  

</configuration>  

注:这里把hive的服务端和客户端都放在同一台服务器上了。服务端和客户端可以拆开,

www.htsjk.Com true http://www.htsjk.com/hive/30346.html NewsArticle 【Hive篇】Hive的安装, HIVE的搭建比较简单,依托于Hadopp集群,以及mysql服务端。 多种搭建方式,主要介绍单一用户和多用户的场景,其中node01放置mysql服务端,node02放hive的单一用户模式...
相关文章
    暂无相关文章
评论暂时关闭