Hive

  • 由Facebook开源用于解决海量结构化日志的数据统计
  • hive是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类似sql查询功能
  • 构架在Hadoop上的数据仓库:
    • 使用hql作为查询接口
    • 使用HDFS存储
    • 使用mapreduce计算
      本质是将hql转化成mapreduce程序
  • 灵活性和扩展性比较好
  • 适合离线数据处理

架构图:

面试必问
Hive初识
HQL
| -----------------------Engine——>hive
MapReduce

RMDBS

  • 表的概念;
    create table bf_log(
    ip string,
    user string,
    date string,

    )
  • 表的元数据——》Metastore
    • 包括:表名、表所属的数据库、表的拥有者、列、字段、表的类型、表数据所在的目录等等。

Driver驱动器——>将hql转换成mapreduce

  • 解析器——》SQL Parser
  • 优化器——》Query Optimizer
  • 经过优化器形成物理的计划——》Physical Plan
  • 最后按照物理计划执行——》Execution

优点

  • 操作接口采用类sql语法,提供快速开发的能力
  • 避免了写mapreduce,减少开发人员的学习成本
  • 统一的元数据管理,可以和impala/spark等共享数据
  • 易扩展,可以扩展集群规模,支持自定义函数

使用场景

  • 数据的离线处理:比如:日志分析、海量结构化数据离线分析
  • hive执行延迟比较高,适用于数据分析对实时性要求不高的场合
  • 优势在于处理大数据

相关文章:

  • 2021-09-21
  • 2021-10-08
  • 2022-01-10
  • 2021-10-20
  • 2021-03-30
  • 2021-07-17
猜你喜欢
  • 2021-10-22
  • 2022-12-23
  • 2021-12-18
  • 2021-11-12
  • 2021-06-23
相关资源
相似解决方案