• Hive的安装和配置


    在hadoop帐户下
    一、下载hive-0.8.1.tar.gz
    wget mirrors.cnnic.cn/apache/hive/stable/hive-0.11.0.tar.gz
     
    二、解压到/opt/modules目录下
    tar -zxvf hive-0.11.0.tar.gz
    cd hive-0.11.0
     
    三、配置Hive的环境变量(该步在root帐户下)
    vi /etc/profile.d/java.sh
    export HIVE_HOME=/opt/modules/hive-0.11.0
    export PATH=$HIVE_HOME/bin:$PATH
    手动立即生效
    source /etc/profile
     
    四、拷贝hive的配置模板文件
    cd conf/
    cp hive-env.sh.template hive-env.sh
    cp hive-default.xml.template hive-site.xml
     
    五、修改hive-env.sh文件
    指定HADOOP_HOME及HIVE_CONF_DIR的路径如下:
    HADOOP_HOME=/opt/modules/hadoop/hadoop-1.0.3
    export HIVE_CONF_DIR=/opt/modules/hive-0.11.0/conf
     
    六、修改hive-site.xml文件
    指定mysql数据库驱动、数据库名、用户名和密码,修改的内容如下所示:
    <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=latin1</value>
    <description>JDBC connect string for a JDBC metastore</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
    <description>username to use against metastore database</description>
    </property>
    <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>654321</value>
    <description>password to use against metastore database</description>
    </property>
     
    七、拷贝mysql的驱动mysql-connector-java-5.1.18.jar到hive-0.11.0/lib目录下
     
    八、在HDFS中创建/tmp和/user/hive/warehouse并设置权限
    ./hadoop fs -mkdir /tmp
    ./hadoop fs -mkdir /user/hive/warehouse
    ./hadoop fs -chmod g+w /tmp
    ./hadoop fs -chmod g+w /user/hive/warehouse
     
    九、测试Hive是否安装成功,如下所示
    [root@hadoop1 bin]# hive
    WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.
    Logging initialized using configuration in jar:file:/work/hive/hive-0.8.1/lib/hive-common-0.8.1.jar!/hive-log4j.properties
    Hive history file=/tmp/root/hive_job_log_root_201302171656_1326720941.txt
    hive> create table user(id int,name string);
    OK
    Time taken: 3.242 seconds
    hive> select * from user;
    OK
    Time taken: 0.275 seconds
    hive> exit;
    [root@hadoop1 bin]#
     
     
    十、报错
    FAILED: Error in metadata: javax.jdo.JDODataStoreException: An exception was thrown while adding/validating class(es) : Specified key was too long; max key length is 767 bytes
    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 767 bytes
    修改方法(mysql中):
    alter database hive character set latin1;
  • 相关阅读:
    Linux下对拍(A+B问题)
    洛谷 P1043 数字游戏 区间DP
    6.22 集训--DP复习一
    洛谷 P1220 关路灯 区间DP
    A*算法求K短路模板 POJ 2449
    点分治模板 POJ 1741
    HDU
    棋子游戏 51Nod
    数论习题总结
    CodeForces
  • 原文地址:https://www.cnblogs.com/jingyunyb/p/3401300.html
Copyright © 2020-2023  润新知