简单介绍什么是Hive

您所在的位置:网站首页 hive是 简单介绍什么是Hive

简单介绍什么是Hive

2022-12-17 04:33| 来源: 网络整理| 查看: 265

1.1 产生背景

在Hadoop中:

HDFS: 海量数据存储MapReduce: 海量数据的分析与计算Yarn: 集群资源的管理和作业调度

其中MapReduce处理大数据会面临的问题有:

MR开发难度大,学习成本高HDFS文件没有字段名、数据类型,不方便进行数据的管理使用MR的框架开发,项目周期长,成本高

Hive为了解决以上问题而产生。

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,类似于RDBMS(关系型数据库,如MySQL、Oracle、PgSQL),并提供类SQL的查询功能。Hive是由FaceBook开源的,用于解决海量结构化日志的数据统计

简单总结:Hive是一个将SQL转换为MR任务的工具

数据仓库相关概念: 1. 是一个面向主题的、集成的、相对稳定的、反应历史变化的数据集合 2. 目的:构建面向分析的、集成的数据集合,为企业提供决策支持 3. 数据仓库本身不产生数据,数据来源于外部 4. 存储了大量数据1.2 Hive与RDBMS的异同

Hive采用了HQL查询语言,和SQL非常接近,所以很容易理解为数据库,实际上除了查询语言类似之外,没有其他相似之处。

1.3 Hive的优缺点优点学习成本低,SQL处理海量数据系统可以水平扩展功能可以扩展,可以写SQL自定义函数良好的容错性,某个节点故障HQL仍然可以正常完成统一的元数据管理元数据:有哪些表、表有哪些字段、字段什么类型缺点HQL表达能力有限迭代计算无法表达Hive的执行效率不高Hive自动生成的MR作业,某些情况下不够智能Hive调优困难1.4 Hive架构CLI用户接口: hive的命令行,用于接收HQL并返回结果JDBC、ODBC :hive的多语言实现Web UI Thrift Server : Hive可选组件,后面会学,允许CLI使用多种语言编程远程访问Hive元数据管理MetaStore: Hive存储元数据的地方是RDBMS。元数据:数据库名,表名及类型、字段名称、数据类型、数据所在位置等驱动程序Driver:解析器(SQLParser):使用第三方工具把HQL转换为抽象语法树(AST),对AST进行语法分析,比如字段是否存在,SQL语义是否有错误等编译器(Compiler):编译AST优化器(Optimizer):对逻辑进行优化执行器(Executr):执行逻辑



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3