文章目录

  • 1. 什么是Hive?
  • 2. Hive优缺点
  • 3. Hive架构
  • 4. Hive vs MySQL

1. 什么是Hive?

  1. hive是建立在Hadoop上的一个一个数据仓库。
  2. 它可以将存储在Hadoop的结构化、半结构化数据映射为一张张数据库表。
  3. 它提供了一种类似SQL的查询语言HQL,通过HQL可以查询Hadoop中的数据。
  4. hive包含了SQL解析引擎,它会将HQL转换为MapReduce Job,然后在Hadoop中执行。

2. Hive优缺点

  1. 优点:

    1. 采用类SQL语法,避免了去写复杂的MR,提高开发效率
    2. Hive支持用户自定义函数
    3. 背靠hadoop适合处理大数据。
  2. 缺点:

    1. Hive的执行延迟比较高,所以不适合处理小文件,不适合对实时性要求高的场景
    2. Hive调优比较困难,更多的还是需要通过调整Hadoop参数进行调优。

3. Hive架构

hive有3大组件:

  1. 用户接口:用户输入HQL的地方。提供的接口有三种:命令接口、网络接口(比如jdbc等)、web图形化接口
  2. 元数据存储(metastore):真正的数据是存储在hadoop的hdfs中的,元数据存储在关系型数据库中。(可以使用hive内置的轻量级Derby关系型数据库,也可以使用第三方的MySQL数据库)。
    • 元数据:是描述数据的数据。比如表的名字,表的字段等等。
    • Derby数据库只支持单会话,当启动两个及以上的hive客户端时,就会报错。所以开发中通常使用Mysql存储元数据
  3. 驱动程序:对HQL的解析、优化优化以及查询计划的生成。生成的查询计划存储在 hdfs中,随后由计算引擎执行。

    hive不直接处理数据,而是通过计算引擎处理。hive支持的计算引擎有4种:Hadoop的MapReduce、Tez、Spark、Fink 。

    • 【MR是hive的默认执行引擎】
    • 【Tez源于MR,核心是将Map和Reduce两个阶段做进一步的拆分,然后对元数据灵活组合,提高效率】
    • 【spark:采用内存计算。MR和Tez的Shffle阶段会将中间计算结果写入磁盘,而spark将数据从hdfs中读取后一直在内存,中间计算结果是不会被写进磁盘的,一直到最终结果才会写入磁盘。这样大幅度的提高了效率】
    • 【Fink:也是次啊用内存计算,但是用于实时计算的场景】

4. Hive vs MySQL

hive不是大型数据库,也不是要取代数据库。虽然两者很像,但其本质不同:

  • hive是数据仓库,面向分析的(OLAP)。侧重于查询历史数据进行分析。
  • mysql 是数据库,面向业务的(OLTP)。侧重于CRUD、关心数据的响应时间、安全性、完整性等,保证高效的完成业务问题

【Hive---02】hive概述『 what | 优缺点 | 架构 | Hivevs MySQL』相关推荐

  1. Hive相关(概述、环境搭建、命令、API、JDBC、HBase整合等)

    Hive Apache Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的类sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优 ...

  2. 大数据时代的技术hive:hive介绍

    转自:http://www.cnblogs.com/sharpxiajun/archive/2013/06/02/3114180.html 我最近研究了hive的相关技术,有点心得,这里和大家分享下. ...

  3. 02 Hadoop概述

    Hadoop概述 1.Hadoop是什么 2.Hadoop版本 3.HDFS.YARN.MapReduce (1) HDFS (2)YARN (3)MapReduce (3)Hadoop模块之间的关系 ...

  4. 大数据系列——什么是hive?hive用来干什么的?hive常见问题是啥?

    目录 一.什么是hive 二.为什么要使用Hive 三.Hive与Hadoop的关系 四.Hive与HDFS的关系 五.Hive与传统数据库区别 六.Hive中的数据存储是怎样的 七.对hive进行增 ...

  5. DL之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析)、使用方法(NLP领域/CV领域)、案例应用之详细攻略

    DL之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析).使用方法(NLP领域/CV领域).案例应用之详细攻略 目录 Transfo ...

  6. 为什么使用Hive?Hive提供了什么?Hive支持哪些用户?

    为什么使用Hive? 为什么使用Hive?那么,在哪里使用Hive呢?在载入了60亿行(经度.维度.时间.数据值.高度)数据集到MySQL后,系统崩溃了,并经历过数据丢失.这可能部分是因为我们最初的策 ...

  7. 【Hive】hive影评案例

    文章目录 数据描述 数据要求 题目 1. 正确建表,导入数据(三张表,三份数据),并验证是否正确 2. 求被评分次数最多的10部电影,并给出评分次数(电影名,评分次数) 3. 分别求男性,女性当中评分 ...

  8. BigData之Hive:Hive数据管理的简介、下载、案例应用之详细攻略

    BigData之Hive:Hive数据管理的简介.下载.案例应用之详细攻略 目录 Hive数据管理的简介 1.Hive的适用场景--不适合那些需要高实性的应用(不能够在大规模数据集上实现低延迟快速的查 ...

  9. Hive基本操作,DDL操作(创建表,修改表,显示命令),DML操作(Load Insert Select),Hive Join,Hive Shell参数(内置运算符、内置函数)等

    1.  Hive基本操作 1.1DDL操作 1.1.1    创建表 建表语法 CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_nam ...

最新文章

  1. hive外部表改为内部表_3000字揭秘Greenplum的外部数据加载——外部表
  2. Intel x86架构之多处理器与APIC
  3. node.js之stream模块
  4. 移动端下弹框禁止背景滑动
  5. 用机器指令和汇编指令编程(修改版)
  6. 【数据库系统】事务、锁、隔离、自动恢复
  7. 【ArcGIS】数据属性重新赋值
  8. 多叉树的深度优先遍历并输出叶子路径
  9. 图像相似度对比分析软件,图像相似度对比分析法
  10. matlab中做出球面和圆柱面,matlab画柱面与球面切线
  11. Express高效查询纯真IP库插件lib-qqwry
  12. 若依开发文档手册[持续更新:拥抱初次使用若依的开发者]
  13. Java之OutOfMemoryError简单分析
  14. photoshop图层解锁及不能解锁的原因
  15. SAP S4 库存管理 技术分享
  16. html表格填充空白单元格,快速填充空白单元格【应对步骤】
  17. 基于贝叶斯优化的离散组合序列问题调研
  18. Zookeeper集群启动异常: Cannot open channel to x at election address xx/xxx.xxx.xxx.xxx:3888
  19. windows聚焦照片_如何拍摄始终聚焦的照片
  20. 使用Typora添加 行内、行间 数学公式

热门文章

  1. android禁止压缩壁纸,Android6.0 屏蔽壁纸功能
  2. JavaScript是什么?能做什么?一篇文章带你了解JavaScript的发展史、组成及作用
  3. steam/csgo搬砖项目详解
  4. 20150909解决浏览器兼容问题
  5. Mysql 截取字符串
  6. linux卸载rpm包的命令,如何恢复误删除的rpm包命令
  7. iOS11 访问相册、相机权限
  8. 自学python书籍推荐,请多多列举?
  9. 【腾讯云】用Java发送QQ邮件,实现天气预报推送
  10. struts-config配置详解