Hive的基本介绍

1.Hive产生的原因

  1. 方便对文件及数据的元数据进行管理,提供统一的元数据管理方式

  2. 提供更加简单的方式来访问大规模的数据集,使用SQL语言进行数据分析

 

2.Hive是什么?

  • Apache官网:The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided to connect users to Hive.

  • Hive经常被大数据企业用作企业级数据仓库。

  • Hive在使用过程中是使用SQL语句来进行数据分析,由SQL语句到具体的任务执行还需要经过解释器,编译器,优化器,执行器四部分才能完成。

    1. 解释器:调用语法解释器和语义分析器将SQL语句转换成对应的可执行的java代码或者业务代码

    2. 编译器:将对应的java代码转换成字节码文件或者jar包

    3. 优化器:从SQL语句到java代码的解析转化过程中需要调用优化器,进行相关策略的优化,实现最优的查询性能

    4. 执行器:当业务代码转换完成之后,需要上传到MapReduce的集群中执行

3.Hive是数据仓库

数据库数据仓库
业务数据,需要很短时间内返回结果只要分析之后,能得到结果就ok,当然时间越短越好
只能保存某个产品线收集各种数据源的数据
可修改不可修改

 

4.Hive架构图

 

1、用户访问接口

CLI(Command Line Interface):用户可以使用Hive自带的命令行接口执行Hive QL、设置参数等功能

JDBC/ODBC:用户可以使用JDBC或者ODBC的方式在代码中操作Hive

Web GUI:浏览器接口,用户可以在浏览器中对Hive进行操作(2.2之后淘汰)

2、Thrift Server:

Thrift服务运行客户端使用Java、C++、Ruby等多种语言,通过编程的方式远程访问Hive

3、Driver

Hive Driver是Hive的核心,其中包含解释器、编译器、优化器等各个组件,完成从SQL语句到MapReduce任务的解析优化执行过程

4、metastore

Hive的元数据存储服务,一般将数据存储在关系型数据库中,为了实现Hive元数据的持久化操作,Hive的安装包中自带了Derby内存数据库,但是在实际的生产环境中一般使用mysql来存储元数据

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值