大数据学习第一弹你懂的之Hive升级到2.1安装配置全过程

来源:互联网 发布:上海幻萌网络 编辑:程序博客网 时间:2024/05/17 04:29

一、安装Hive

1、下载Hive安装包

可以从 Apache 其中一个镜像站点中下载最新稳定版的 Hive, apache-hive-2.1.0-bin.tar.gz。

解压安装Hive

使用以下命令安装 Hive:

sudo mv apache-hive-2.1.0-bin.tar.gz /optcd /optsudo tar -xzvf apache-hive-2.1.0-bin.tar.gz    ##解压sudo ln -s apache-hive-2.1.0-bin hive    ##创建软链接


2、设置 Hive环境变量

编辑 ~/.bashrc文件, 在其中添加以下内容:

# Hive Envexport HIVE_HOME=/opt/hiveexport PATH=$PATH:$HIVE_HOME/bin

使环境变量生效:

source ~/.bashrc
测试成功与否:
echo $HIVE_HOME/opt/hive
删除软连接的正确方式:在文件的最后不要加上/
sudo rm -rf /opt/hive
3、修改文件权限
dyq@ubuntu:/opt$ sudo chown -R dyq hivedyq@ubuntu:/opt$ sudo chmod  777 hive

二、配置Hive

1、配置文件重命名

在运行 Hive 之前需要使用以下命令修改配置文件:

cd /opt/hive/confcp hive-env.sh.template hive-env.shcp hive-default.xml.template hive-site.xmlcp hive-log4j2.properties.template hive-log4j2.propertiescp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

2、修改hive-env.sh

因为 Hive 使用了 Hadoop, 需要在 hive-env.sh 文件中指定 Hadoop 安装路径:

export JAVA_HOME=/opt/java    ##Java路径export HADOOP_HOME=/opt/hadoop   ##Hadoop安装路径export HIVE_HOME=/opt/hive    ##Hive安装路径export HIVE_CONF_DIR=/opt/hive/conf    ##Hive配置文件路径

3、修改hive-site.xml

替换hive-site.xml文件中的 ${system:java.io.tmpdir} 和 ${system:user.name}

<property>    <name>hive.exec.scratchdir</name>    <value>/tmp/hive-${user.name}</value>    <description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/&lt;username&gt; is created, with ${hive.scratch.dir.permission}.</description>  </property>  <property>    <name>hive.exec.local.scratchdir</name>    <value>/tmp/${user.name}</value>    <description>Local scratch space for Hive jobs</description>  </property>  <property>    <name>hive.downloaded.resources.dir</name>    <value>/tmp/hive/resources</value><description>Temporary local directory for added resources in the remote file system.</description></property><property><name>hive.querylog.location</name><value>/tmp/${user.name}</value><description>Location of Hive run time structured log file</description></property><property><name>hive.server2.logging.operation.log.location</name><value>/tmp/${user.name}/operation_logs</value><description>Top level directory where operation logs are stored if logging functionality is enabled</description></property>

4、配置Hive Metastore

默认情况下, Hive的元数据保存在了内嵌的 derby 数据库里, 但一般情况下生产环境使用 MySQL 来存放 Hive 元数据。

  1. 将 mysql-connector-java-5.1.39.jar 放入 $HIVE_HOME/lib 下。
  2. hive-site.xml 中配置 MySQL 数据库连接信息
    <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;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>hive</value></property><property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value></property>

5、为Hive建立相对应的Mysql账户,并赋予足够的权限

Java代码  收藏代码
  1. CREATE USER 'hive' IDENTIFIED BY 'hive';  
  2. GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION;  
  3. flush privileges;  

6、拷贝驱动文件

将mysql-connector-java-5.1.30-bin.jar 放入 $HIVE_HOME/lib下 

cp mysql-connector-Java-5.1.30-bin.jar  /usr/local/apache-hive-2.1.0-bin/lib

三、运行Hive

在命令行运行 hive 命令时必须保证 HDFS 已经启动。可以使用 start-dfs.sh 来启动 HDFS。

从 Hive 2.1 版本开始, 我们需要先运行 schematool 命令来执行初始化操作。

schematool -dbType mysql -initSchema

执行成功后,可以使用 Sequel Pro 查看元数据库 hive 是否已经创建成功。

从下面的提示,可以看出,Hive2.1确实不再支持MapReduce了。
Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. tez, spark) or using Hive 1.X releases.

那么问题来了,Hive怎么和spark整合呢?!下篇再解!

0 0