zoukankan      html  css  js  c++  java
  • Spark环境搭建(四)-----------数据仓库Hive环境搭建

    Hive产生背景

    1)MapReduce的编程不便,需通过Java语言等编写程序

    2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要Java等编写程序

    Hive是什么

    1)facebook开源,最初为解决海量的结构化日志数据统计问题

    2)构建中Hadoop上的数据仓库

    3)Hive定义了一种SQL查询语言:HQL(类似SQl但又不完全相同)

    4)通常进行离线处理(采用MapReduce)

    5)多种不同的底层执行引擎(Hive on MapReduce/Tez/Spark)

    6)支持多种不同的压缩格式,存储格式以及自定义函数

      压缩格式:GZIP,LZO,Snappy,BZIP2..

      存储格式:TextFile,SequenceFile,RCFile,ORC,PARquet

      UDF:自定义函数

    为什么使用Hive

    1) 简单,容易上手(提供了类似SQL查询语言HQL)

    2) 为超大数据集设计的计算、存储扩展能力(MR计算,HDFS存储)

    3) 统一的元数据管理(可与Presto/Impala/SparkSQL等共享数据)

    Hive环境搭建

    1)使用版本:hive-1.1.0-cdh5.7.0.tar.gz

    2) 下载:

      wget http://archive.cloudera.com/cdh5/cdh/5/

    3)解压:tar -zxvf hive-1.1.0-cdh5.7.0.tar.gz -C ~/app/

    4)配置

      (1)  系统环境变量(~/.bash_profile)

    1       export HIVE_HOME=/root/app/hive-1.1.0-cdh5.7.0
    2 
    3       export PATH=$HIVE_HOME/bin:$PATH

      (2) 安装一个Mysql (可以参考我这篇博文

        命令 yum install *** 

      (3) 在conf下新建一个 hive-site.xml

        插入以下内容

        

     1 <configuration>
     2     <property>
     3       <name>javax.jdo.option.ConnectionURL</name>
     4         <value>jdbc:mysql://localhost:3306/sparksql?createDatabaseIfNotExist=true</value>
     5     </property>
     6     <property>
     7         <name>javax.jdo.option.ConnectionDriverName</name>
     8         <value>com.mysql.jdbc.Driver</value>
     9      </property>
    10 
    11     <property>
    12           <name>javax.jdo.option.ConnectionUserName</name>
    13           <value>root</value>
    14     </property>
    15 
    16     <property>
    17       <name>javax.jdo.option.ConnectionPassword</name>
    18         <value>root</value>
    19     </property  
    20 </configuration>

       其中需要填写你的数据库用户名和密码以及连接数据库的驱动

      (4)  拷贝数据库驱动(点击这里下载)到$HIVE_HOME/lib/下

      (5)  启动Hive

        命令: $HIVE_HOME/bin/hive

    没有报错,至此Hive环境搭建完毕

  • 相关阅读:
    10个超实用的PHP代码片段
    MySQL支撑百万级流量高并发的网站部署详解
    程序员总结:帮助你早些明白一些道理
    50个最常用的UNIX / Linux命令(结合实例)
    php.ini 核心配置选项说明
    智能指针的死穴 循环引用
    滥用vector带来的瓶颈
    JS——层的遮罩效果
    【趣】无广告看视频
    【SQLServer】远程访问数据库进行配置
  • 原文地址:https://www.cnblogs.com/ruoniao/p/7294454.html
Copyright © 2011-2022 走看看