`
weitao1026
  • 浏览: 1048020 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

hive是基于Hadoop的一个数据仓库工具

阅读更多

hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

Hive最早由facebook开源,最初用于解决海量结构化的日志数据统计问题,是一个ETL工具,
Hive的一些应用场景如下:
日志分析
  统计网站一个时间段内的pv、uv
  多维度数据分析
  大部分互联网公司使用Hive进行日志分析,包括百度、淘宝等
其他场景
  海量结构化数据离线分析
  低成本进行数据分析(不直接编写MR)


本篇,散仙来介绍下Hive的安装与部署,Hive并不是一个分布式的系统,所以它的安装相对来说,还是比较容易的,在Hive安装之前,确保你的hadoop环境已经成功搭建,并可以正常启动,散仙的配置版本是,hadoop1.2.0的版本,hive0.10的版本。

 

 

我们,先来总结下Hive的安装步骤:

序号 描述 1 安装配置MySQL数据库,(默认是derby) 2 放一个mysql的JDBC连接的jar包,到hvie/lib里面 3 在hive-env.sh里面加入hadoop的目录路径(拷贝自带模板,重命名) 4 在HDFS上创建Hive的主目录hive和临时文件存储目录tmp 5 配置hive-site.xml,配置hive的一些相关信息(拷贝自带模板,重命名) 6 启动Hive

 


散仙重点要说的是,关于3,4,5的配置,mysql的安装其实很简单,在这里不再介绍,首先我们要拷贝hive-env.sh.template重命名为hive-env.sh并向其中,加入hadoop的目录路径截图如下:



其次,我们要在HDFS上创建,对应的hive的table的存放位置目录,截图如下:

接下来,我们需要最重要的东西了,hive-site.xml,重命名hive-default.xml.template为hive-site.xml,修改其中几项即可:

Xml代码 复制代码 收藏代码
  1. <configuration>  
  2. <property>    
  3. <!-- MySQ的URL配置 -->  
  4.   <name>javax.jdo.option.ConnectionURL</name>     
  5.   <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>    
  6. </property>   
  7. <!-- 数据库的用户名配置-->   
  8. <property>    
  9.   <name>javax.jdo.option.ConnectionUserName</name>    
  10.   <value>root</value>    
  11. </property>   
  12. <!-- 此处JDBC的驱动务必加上,对应的数据配置对应的驱动-->  
  13. <property>    
  14.   <name>javax.jdo.option.ConnectionDriverName</name>    
  15.   <value>com.mysql.jdbc.Driver</value>    
  16.   <description>Driver class name for a JDBC metastore</description>    
  17. </property>    
  18. <!-- 数据库密码配置-->  
  19. <property>    
  20.   <name>javax.jdo.option.ConnectionPassword</name>    
  21.   <value>root</value>    
  22. </property>  
  23. <!-- HDFS路径hive表的存放位置-->  
  24. <property>  
  25.   <name>hive.metastore.warehouse.dir</name>  
  26.   <value>/root/hive</value>  
  27. </property>  
  28. <!--HDFS路径,用于存储不同 map/reduce 阶段的执行计划和这些阶段的中间输出结果。 -->  
  29. <property>  
  30.   <name>hive.exec.scratchdir</name>  
  31.   <value>/root/tmp</value>  
  32. </property>  
  33. <property>  
  34.   <name>mapred.child.java.opts</name>  
  35.   <value>-Xmx4096m</value>  
  36. </property>  
  37. <!-- 日志的记录位置-->  
  38. <property>  
  39. <name>hive.querylog.location</name>  
  40. <value>/root/hive-0.10.0/logs</value>  
  41. </property>  
  42. </configuration>   
<configuration>
<property>  
<!-- MySQ的URL配置 -->
  <name>javax.jdo.option.ConnectionURL</name>   
  <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>  
</property> 
<!-- 数据库的用户名配置--> 
<property>  
  <name>javax.jdo.option.ConnectionUserName</name>  
  <value>root</value>  
</property> 
<!-- 此处JDBC的驱动务必加上,对应的数据配置对应的驱动-->
<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.ConnectionPassword</name>  
  <value>root</value>  
</property>
<!-- HDFS路径hive表的存放位置-->
<property>
  <name>hive.metastore.warehouse.dir</name>
  <value>/root/hive</value>
</property>
<!--HDFS路径,用于存储不同 map/reduce 阶段的执行计划和这些阶段的中间输出结果。 -->
<property>
  <name>hive.exec.scratchdir</name>
  <value>/root/tmp</value>
</property>
<property>
  <name>mapred.child.java.opts</name>
  <value>-Xmx4096m</value>
</property>
<!-- 日志的记录位置-->
<property>
<name>hive.querylog.location</name>
<value>/root/hive-0.10.0/logs</value>
</property>
</configuration> 


至此,配置部分已经完毕,下面我们就可以启动hive,并尝试建表操作了,截图如下:




最后,退出的命令,使用exit即可。

分享到:
评论

相关推荐

    基于Hadoop的数据仓库Hive学习指南.doc

    1. **Hadoop数据仓库Hive**:Hive是由Facebook开发的一种基于Hadoop的数据仓库工具,它允许SQL熟悉的用户对存储在Hadoop分布式文件系统(HDFS)上的大规模数据进行分析。Hive将结构化的数据文件映射为数据库表,提供了...

    大数据系列4:Hive – 基于HADOOP的数据仓库

    在大数据处理领域,Hive是一个不可或缺的工具,它是一个基于Hadoop的数据仓库系统,用于处理和分析大规模数据集。Hive提供了SQL(HiveQL)接口,使得非Java背景的用户也能轻松地对存储在Hadoop分布式文件系统(HDFS...

    第8章基于Hadoop的数据仓库Hive作业.pptx

    Hive是一个基于Hadoop的数据仓库工具,提供了一个SQL-like的查询语言,用于处理大规模的结构化数据。Hive的主要特点是它可以处理大量的数据,并且提供了一个高效的查询机制。 2.数据仓库的概念 数据仓库是一种特殊...

    Hive-基于hadoop的数据仓库.pptx

    《Hive:基于Hadoop的数据仓库深度解析》 Hive,作为大数据处理的重要工具,是建立在Hadoop文件系统上的数据仓库架构,旨在为大规模数据集提供数据分析和管理能力。其设计初衷是解决直接使用Hadoop MapReduce进行...

    Hive是一个基于Hadoop的数据仓库平台

    Hive是一个基于Hadoop的数据仓库平台。Apache Hive (TM) 数据仓库软件有助于读取 编写和管理驻留在分布式存储中的大型数据集 使用 SQL。它建立在 Apache Hadoop (TM) 之上,提供:通过 SQL 轻松访问数据的工具,...

    基于hadoop平台hive数据库处理电影数据(8965字数32页).doc

    通过Hadoop,可以处理海量的电影数据,而Hive则作为一个基于Hadoop的数据仓库工具,提供了一种结构化数据的查询和分析方式,简化了大数据处理的复杂性。参考链接提供了更详尽的搭建过程和技术细节。 【标签】:涉及...

    基于Hadoop豆瓣电影数据分析实验报告

    【基于Hadoop豆瓣电影数据分析实验报告】 在大数据时代,对海量信息进行高效处理和分析是企业决策的关键。Hadoop作为一款强大的分布式计算框架,自2006年诞生以来,已经在多个领域展现了其卓越的数据处理能力。本...

    基于hadoop的hive数据仓库的配置

    Hive是一个建立在Hadoop之上的数据仓库工具,主要用于对存储在Hadoop文件系统中的大数据集进行数据整理、特殊查询和分析存储。通过Hive提供的SQL查询功能,可以将结构化的数据文件映射为一张数据库表,并提供简单的...

    大数据离线分析系统,基于hadoop的hive以及sqoop的安装和配置

    Hadoop是分布式计算框架,而Hive是基于Hadoop的数据仓库工具,用于数据 warehousing 和 SQL-like 查询。另一方面,Sqoop是一个专门用于在Hadoop和关系数据库之间传输数据的工具。 首先,我们来看Hadoop HA(High ...

    2022毕业设计,基于 Hadoop 的游戏数据分析系统源码.zip

    此外,Hadoop生态系统还包括其他工具,如Hive用于数据仓库,Pig用于数据处理,HBase用于实时查询,以及Spark用于更快速的数据处理和分析,这些可能都在这个系统中有所应用。 【压缩包子文件的文件名称列表】:...

    2021年-Hive大数据仓库-期末考试知识点重点-笔记整理.pdf

    Hive是一种基于Hadoop的大数据仓库工具,可以将结构化的数据文件映射为一个表,并提供类SQL查询功能。Hive的优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计。延迟较高,使得Hive适合用于离线的...

    Hadoop数据仓库工具hive介绍.pdf

    ### Hadoop数据仓库工具Hive介绍 #### 一、简介 **1.1 Hive是什么** Hive是一款构建在Hadoop之上的数据仓库工具,它利用HDFS(Hadoop Distributed File System)进行数据存储,并通过Hadoop MapReduce来执行数据...

    毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现

    Hive是基于Hadoop的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供SQL查询功能。Hive将SQL语句转换为MapReduce任务执行,简化了在Hadoop上处理大数据的工作。在本项目中,Hive可能是用于数据的...

    基于Hadoop+Hive的数据查询优化设计与实现

    然后,本文详细介绍了Hadoop和Hive的工作原理,包括Hadoop的分布式架构、MapReduce算法和Hive的数据仓库工具。接着,本文介绍了基于Hadoop和Hive的数据查询优化设计与实现,涵盖了系统设计、数据查询优化和动态分区...

    hive实用-hadoop数据仓库指南【英文about云】1

    Hive 是一个基于 Hadoop 的数据仓库工具,它允许用户使用类似于 SQL 的查询语言(称为 HiveQL)来管理和分析存储在 Hadoop 分布式文件系统(HDFS)中的大规模数据集。Hive 提供了一种结构化的数据模型,使得非结构化...

    厦门大学林子雨版大数据基础入门培训课程 教师培训交流讲义-模块11-基于Hadoop的数据仓库Hive 共48页.ppt

    Hive是一个基于Hadoop的数据仓库工具,提供了一种SQL-like的语言(HiveQL)来处理和分析大规模数据。Hive不存储数据,而是利用HDFS,依赖MapReduce进行数据处理。它简化了在Hadoop上进行数据仓库操作的复杂度,支持...

    基于Hadoop的数据仓库Hive基础知识

    Hive是基于Hadoop的数据仓库工具,可对存储在HDFS上的文件中的数据集进行数据整理、特殊查询和分析处理,提供了类似于SQL语言的查询语言–HiveQL,可通过HQL语句实现简单的MR统计,Hive将HQL语句转换成MR任务进行...

Global site tag (gtag.js) - Google Analytics