zoukankan      html  css  js  c++  java
  • hive安装以及hive on spark

          spark由于一些链式的操作,spark 2.1目前只支持hive1.2.1

    1. hive 1.2安装

    到http://mirror.bit.edu.cn/apache/hive/hive-1.2.1/ 网址下载hive1.2.1的部署包

         2.配置系统环境变量/etc/profile

    export HIVE_HOME=/opt/hive-1.2.1
    
    export PATH=$PATH:$HIVE_HOME/bin
    
    source /etc/profile 使刚刚的配置生效

         3. 解压

    tar -xvf apache-hive-1.2.1-bin.tar
    mv apache-hive-1.2.1-bin /opt/hive-1.2.1

         4.修改配置文件

            可不做任何修改hive也能运行,默认的配置元数据是存放在Derby数据库里面的,大多数人都不怎么熟悉,我们得改用mysql来存储我们的元数据,以及修改数据存放位置和日志存放位置等使得我们必须配置自己的环境,下面介绍如何配置。

    cp $HIVE_HOME/conf/hive-default.xml.template $HIVE_HOME/conf/hive-site.xml
    cp $HIVE_HOME/conf/hive-env.sh.template $HIVE_HOME/conf/hive-env.sh
    cp $HIVE_HOME/conf/hive-exec-log4j.properties.template $HIVE_HOME/conf/hive-exec-log4j.properties
    cp $HIVE_HOME/conf/hive-log4j.properties.template $HIVE_HOME/conf/hive-log4j.properties

    修改 hive-env.sh

    vi $HIVE_HOME/conf/hive-env.sh 

      export HADOOP_HOME=/root/hadoop

      export HIVE_CONF_DIR=/opt/hive-1.2.1/conf

    修改 hive-log4j.properties

    mkdir $HIVE_HOME/logs
    vi $HIVE_HOME/conf/hive-log4j.properties
    修改log.dir的目录 hive.log.dir
    =/opt/hive-1.2.1/logs

    修改 hive-site.xml

    rm -rf hive-site.xml

    vim hive-site.xml

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration> 
    <property>
    <name>hive.metastore.schema.verification</name>
    <value>false</value>
    <description> Enforce metastore schema version consistency. True: Verify that version information stored in is compatible with one from Hive jars. Also disable automatic schema migration attempt. Users are required to manually migrate schema after Hive upgrade which ensures proper metastore schema migration. (Default) False: Warn if the version information stored in metastore doesn't match with one from in Hive jars. </description>
    </property>
    //mysql服务器地址
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatebaseIfNotExist=true</value>
    <description>jdbc</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>driver class</description> </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>admin</value>
    <description>jdbc</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>admin</value> <description>jdbc</description>
    </property>
    </configuration>

    导入mysql连接包

    cp mysql-connector-java-5.1.17.jar $HIVE_HOME/lib   //复制mysql驱动包

    5. 

    //该bin目录实在hive下的 ./bin/schematool -initSchema -dbType mysql

     6.启动:

    ./bin/hive

    spark-2.0.0与hive-1.2.1整合

    SparkSQL与Hive的整合

    1. 拷贝$HIVE_HOME/conf/hive-site.xml和hive-log4j.properties到 $SPARK_HOME/conf/

    2. 在$SPARK_HOME/conf/目录中,修改spark-env.sh,添加

    export HIVE_HOME=/opt/hive-1.2.1

    export SPARK_CLASSPATH=$HIVE_HOME/lib:$SPARK_CLASSPATH

    3. 另外也可以设置一下Spark的log4j配置文件,使得屏幕中不打印额外的INFO信息:

    log4j.rootCategory=WARN, console

    (但还是有信息提示)

    进入$SPARK_HOME/bin执行 spark-sql

  • 相关阅读:
    promise封装微信小程序的request
    css3实现loading效果--当页面加载过程中显示Loading的进度条,全部加载完成之后进度条消失
    解决H5微信浏览器中audio兼容-- 背景音乐无法自动播放
    h5微信浏览器复制粘贴--ios兼容问题的解决方法(clipboard.js插件)
    解决微信二次分享失败--后面被加上from=singlemessage&isappinstalled=0的解决方案
    h5微信分享
    mpvue微信小程序项目踩坑记录
    水塘抽样算法
    Redis批量删除脚本
    java9 模块化 jigsaw
  • 原文地址:https://www.cnblogs.com/zhangweilun/p/6607839.html
Copyright © 2011-2022 走看看