Hive介绍

  1. Hive的定义
    (1)Hive是基于Hadoop的一个数据仓库工具。数据仓库是为了协助分析报告,支持决策,为需要业务智能的企业提供业务流程的改进和指导,从而节省时间和成本,提高质量
    (2)适合数据的统计分析,可以将数据文件组成表格并具有非常完整的类SQL查询功能。主要用来访问和管理超大规模的数(据
    (3)可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行
    (4)Hive也是建立在Hadoop上的数据仓库基础构架。它提供了一系列的工具用来进行数据提取、转化、加载,并且提供了存储、查询和分析Hadoop中的大规模数据的机制
  2. 数据仓库与数据库的区别
    (1)数据库系统可以很好地解决事务处理,实现增、删、改、查操作
    (2)数据仓库则是用来做查询分析的数据库,通常不会做单条数据的插入、修改和删除。所有的数据都是在加载的过程中完成的
  3. Hive和关系数据库的差别
    (1)存储文件的系统不同。Hive使用的Hadoop的HDFS,关系数据库使用的则是服务器本地的文件系统
    (2)Hive使用的计算模型是MapReduce,关系数据库使用的则是自己设计的计算机模型
    (3)关系数据库都是为实时查询的业务进行设计的,Hive是为海量数据做数据挖掘设计的(历史数据)。Hive的实时性很差
    (4)Hive很容易扩展自己的存储能力和计算能力
  4. Hive与RDBMS的差别
    在这里插入图片描述
    (1)Hive的数据格式是由用户指定,需要指定3个属性:列分隔符(空格、\t、\x001等)行分隔符(\n)读取文件数据的方法
    (2)数据加载时只是将数据内容本身复制到相应的HDFS目录中
  5. Hive的数据类型
    类型 描述 示例
    TINYINT 1字节(8位)有符号整数 1
    SMALLINT 2字节(16位)有符号整数 1
    INT 4字节(32位)有符号整数 1
    BIGINT 8字节(64位)有符号整数 1
    FLOAT 4字节(32位)单精度浮点数 1.0
    DOUBLE 8字节(64位)双精度浮点数 1.0
    BOOLEAN true/false true
    STRING 字符串 ‘hive’或者“hive”
  6. Hive的特点
    (1)hive延迟高,适合高吞吐量,批量,海量数据处理。
    (2)语法和SQL相似,学习成本低,避免去写复杂的MapReduce,缩短开发周期。
    (3)Hive支持自由的扩展集群的规模,一般不需要重启服务。
    (4)Hive支持自定义函数,用户可以根据自己的需求去定义函数。
    (5)良好的容错性,节点出现问题,SQL仍然可以成功执行。
  7. 常用命令如下:
    清屏 :ctrl+L或! dear 查看表结构 :desc 表名 查看数据库中的表 :show tables
    查看数据库中的内置函数 :show functions 执行操作系统的命令 :!命令 执行脚本 :source sql文件
    执行HQL命令 :select……from……; Hive的静默模式 :启动Hive——hive -S
  8. 查询语言的比较
    在这里插入图片描述
  9. 工作原理:
    Hive本质上是一个SQL解析引擎,它将SQL语句转译成MapReduce作业并在Hadoop上执行
    (1)用户通过用户接口连接Hive,发布Hive QL
    (2)Hive解析查询并制定查询计划
    (3)Hive将查询转换成MapReduce作业
    (4)Hive在Hadoop上执行MapReduce作业
  10. 体现架构
    Hive的体系架构如图所示,按功能主要分5大模块:用户接口、Thrift服务器、解析器、MetaStore元数据和Hadoop集群
    在这里插入图片描述
    Thrift是一种接口描述语言和二进制通讯协议,它被用来定义和创建跨语言的服务
    元数据包括表名、表的列、分区及其属性、表是否为外部表等属性、表数据所在目录等
  11. Hive包含以下四种数据模型:内部表(Managed Table)、外部表(External Table)、分区(Partition)和桶(Bucket)。Hive中的数据存储如下图所示
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值