• Hive


    HIVE简介

    1.hive是一个数据仓库存储工具,也是数据处理工具

    2.hive存储的数据,是放在hdfs上的

    3.hive可以用hive sql(hql)进行数据处理

    4.hive sql实际上内部回执行hadoop的mapreduce

    4.1hive早期版本 只要执行hql就会执行mapreduce ,现在的新版本比较简单的hql就不会执行mapreduce。

    4.2 早期版本hql不支持插入数据(insert),现在的新版本已经支持,但没插入一条数据就会产生一个新文件

    5.hive的源数据是放在mysql(或其他)里面的

    6.hive只需按照一个节点就可以了,(mysql在初学阶段最好和hive安装在同一节点)

    HIVE安装

    1:安装mysql

    安装mysqlserver:

    yum install mysql-server

    设置mysql初始密码:

    /usr/bin/mysqladmin -u root password 'oracle'

    启动mysql:

    service mysqld start

    进入mysql:

    mysql -uroot -p

    然后输入密码

    修改密码:

    mysql> update user set password = password('oracle') WHERE user = 'root'; 

    mysql> FLUSH PRIVILEGES;             这一句必须要执行(忘了就麻烦了)

    注意:如果你的mysql和hive安装不是一台机器 就必须还要执行授权命令 授权给安装hive的那一台机器

    grant all  PRIVILEGES  on  *.*  to 'root'@'linux2' identified by 'oracle'

    grant all  PRIVILEGES  on  *.*  to 'root'@'linux3' identified by 'oracle'

    grant all  PRIVILEGES  on  *.*  to 'root'@'linux4' identified by 'oracle'

    FLUSH PRIVILEGES;

     2.把安装的文件上传到某一个节点

    将 apache-hive-1.2.1-bin.tar.gz 和 mysql-connector-java-5.1.45.tar.gz 上传到Hadoop集群中节点linux1,分别解压。

    下图是解压以后的目录:

    3.配置环境变量

    vi /etc/profile

    使配置生效

    source /etc/profile

    使用 echo $HIVE_HOME查看配置是否生效

     

    4.配置 配置文件

    进入hive解压目录的conf目录

    4.1 hive-site.xml

    hive文件给出了个模板,但在实际中可以简化很多配置参数

    以下是我的配置文件

     1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
     2 <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
     3 <configuration>
     4 
     5 
     6   
     7   <!-- hive.metastore.warehouse.dir  hadoop -->
     8   <property>
     9     <name>hive.metastore.warehouse.dir</name>
    10     <value>/root/app/hadoop/hive/warehouse</value>
    11     <description>location of default database for the warehouse</description>
    12   </property>
    13   
    14   
    15  <!-- ConnectionPassword -->
    16   <property>
    17     <name>javax.jdo.option.ConnectionPassword</name>
    18     <value>oracle</value>
    19     <description>password to use against metastore database</description>
    20   </property>
    21   
    22   
    23   <!--  ConnectionURL  -->
    24   <property>
    25     <name>javax.jdo.option.ConnectionURL</name>
    26     <value>jdbc:mysql:///hive</value>
    27     <description>JDBC connect string for a JDBC metastore</description>
    28   </property>
    29  
    30   
    31   
    32   <!-- ConnectionDriverName -->
    33   <property>
    34     <name>javax.jdo.option.ConnectionDriverName</name>
    35     <value>com.mysql.jdbc.Driver</value>
    36     <description>Driver class name for a JDBC metastore</description>
    37   </property>
    38   
    39   
    40   <!-- ConnectionUserName -->
    41   <property>
    42     <name>javax.jdo.option.ConnectionUserName</name>
    43     <value>root</value>
    44     <description>Username to use against metastore database</description>
    45   </property>
    46   
    47   
    48  
    49 </configuration>

    4.2配置hive-env.sh

    5.替换jline包和上传驱动

    因为hadoop包中的jline包版本比较旧,需要用hive包中的jline包替换

    cp apache-hive-1.2.1-bin/lib/jline-2.12.jar hadoop-2.6.4/share/hadoop/yarn/lib/

     上传驱动:

     cp mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar apache-hive-1.2.1-bin/lib/

     6.启动hadoop和mysql

    关闭防火墙

    start-all.sh.

    service mysqld start

    7.启动hive

    命令:hive

  • 相关阅读:
    关于element-ui表格样式设置的方法cell-class-name
    Js中JSON.stringify()与JSON.parse()与eval()详解及使用案例
    Bootstrap switch 切换状态踩坑
    字符串数组去重
    java效率取随机不重复数
    List 的add()与addAll()的区别
    在HTML中限制input 输入框只能输入纯数字
    抽象类继承接口
    IOC容器之Autofac
    浅拷贝和深拷贝
  • 原文地址:https://www.cnblogs.com/xiaoaofengyue/p/8242808.html
Copyright © 2020-2023  润新知