• Hive安装与配置(靠谱亲测)


       Hive是hadoop生态环境的组成之一。通过Hive,可以使得直接用SQL操作HDFS。最大的好处就是让熟悉SQL,但是不了解JAVA的数据分析师使用。其机制就是一个将SQL语言转化为MapReduce的映射器。可作为在Hadoop上架设数据仓库的工具。但是最大的缺点是运行比较慢。

      Hive的安装模式有两种,一种为Debug模式,将元数据保存在derby内存数据库中。这样就一次只能允许一个会话链接。另一种为Mysq安装模式。可以利用本地或者远程的Mysql数据库来保存元数据。

      本次实验搭建本地mysql安装模式进行安装。

    实验环境:

      CentOs6.5,Hive(1.x),Mysql Server version:5.1.73

    一、Mysql安装配置

      1.首先还是和其他教程一样,先看看本机是否已经安装了mysql。如果安了的话先删除

      rmp -qa | grep mysql   //查看是否安装有mysql;

      yum remove mysql  //卸载mysql

      或者rmp -e mysql //卸载

      2.安装mysql

      yum install -y mysql y mysql-server mysql-deve

      过程和其他教程差不多,可以参考这个http://www.cnblogs.com/shenliang123/p/3203546.html

      3.启动mysql 

      service mysqld start  //启动mysql

      chkconfig mysqld on //设置开机启动mysql

      4.设置root密码

      mysqladmin -u root password 'root'

      5.配置登陆mysql的hive用户

      虽然在我自己的实验中,我直接用的root账户。但是感觉还是不安全,最好还是创建一个单独的账户给hive。

      insert into mysql.user(Host,User,Password) values("localhost","hive",password("hive"));   //在user用户表里插入一个hive用户

      create database hive;       // 创建hive保存元数据的hive用户

      grant all on hive.* to hive@'%'  identified by 'hive';  //对hive用户设置权限

      grant all on hive.* to hive@'localhost'  identified by 'hive'; //  

      flush privileges; //  生效
      exit
     

      

    二、Hive安装包下载解压

      这个不用说,在官网上下载一个最新的稳定版本就好。下载后解压在本地。我放的目录是用户主目录下(~)[~是用户主目录,不是卖萌……]

    三、配置hive

      1.环境变量配置  

      #set hive
      export HIVE_HOME=/home/renjie/hive
      export PATH=$PATH:$HIVE_HOME/bin
      export CLASSPATH=$CLASSPATH:$HIVE_HOME/lib

      2.修改hive-site

     将hive-default.xml.templateg改为hive-site.xml,然后编辑

    <property>
      <name>javax.jdo.option.ConnectionURL</name>
      <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
      <description>JDBC connect string for a JDBC metastore</description>
    </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>
        <description>Username to use against metastore database</description>
     </property>
    <property> 
       <name>javax.jdo.option.ConnectionPassword </name> 
       <value>hive </value> 
    </property>
     

    <property>  
    <name>hive.querylog.location</name> 
    <value>/home/renjie/hive/iotmp</value>   //自己创建一个路径,修改为自己的路径
    <description>Location of Hive run time structured log file</description> 
    </property>

    <property> 
    <name>hive.server2.logging.operation.log.location</name> 
    <value>/home/renjie/hive/iotmp/operation_logs</value>   //同样自己创建一个路径
    <description>Top level directory where operation logs are stored if logg| 
    </property>

      

    <property>  
    <name>hive.exec.local.scratchdir</name> 
    <value>/home/renjie/hive/iotmp</value> 
    <description>Local scratch space for Hive jobs</description> 
    </property>

    <property>  
    <name>hive.downloaded.resources.dir</name> 
    <value>/home/renjie/hive/iotmp</value> 
    <description>Temporary local directory for added resources in the remote| <description>Temporary local directory for added resources in the remote
    </property>

    3.将MySql的JDBC拷贝到Hive下的lib目录

      单独在mysql官网上下载mysql connector,也就是jdbc的jar包。放到$HIVE_HOME/lib/.

    四、配置完成

      在启动hadoop后,运行hive命令,查看是否能进入shell

  • 相关阅读:
    行列转换等经典SQL语句
    [jQuery]使用jQuery.Validate进行客户端验证(中级篇上)——不使用微软验证控件的理由
    深入分析jQuery.prototype.init选择器源码
    浅析jQuery基础框架
    GCC入门 ——-转载
    [转载]在VC中使用 Flash 美化你的程序
    用VS调试 javascript
    如何提高程序性能
    线程安全的懒单例模版类
    各种计算机语言的经典书籍 (转载)
  • 原文地址:https://www.cnblogs.com/ren-jie/p/5382529.html
Copyright © 2020-2023  润新知