Hive
** Facebook开源
** 官网:hive.apache.org
** Hive是基于Hadoop的一个数据仓库工具
Hive与数据库:
数据库: mysql、oracle、DB2、sqlserver
数据仓库 !== 数据库 换言之, Hive不是数据库
为什么要选择hive
** MapReduce编程成本高
** 针对传统的DBA,不会不熟悉java,要想数据分析,借助Hive
Hive简介:
** 流程
** hql --> Hive(java) --> mapreduce -->yarn --> hdfs
** 本质: 将HQL转化成MapReduce程序
** 使用MapReduce计算模型,运行在yarn平台之上
** Hive适合离线批量处理,延时比较大
** 不适合在线业务实时分析结果,业务要求延时较低的场景不适合
Hive体系结构
** 用户接口: Client
** 终端命令行CLI --主要的一种使用方式
** JDBC方式 --几乎不用
** 元数据:metastore
** 默认apache使用的是derby数据库(只能有一个客户端使用),CDH使用postgreDB
** 企业通常我们会选择另外一种mysql来存储
** 元数据包括:表名、表所属的数据库(默认是default)、
表的拥有者、列/分区字段、表的类型(是否是外部表)、
表的数据所在目录等
** 这里并没有存储Hive表的真实数据
** Hadoop
** 使用HDFS进行存储
** 使用MapReduc

本文介绍了Hive作为Facebook开源的数据仓库工具,它基于Hadoop并提供类似于SQL的查询语言HQL。Hive适合离线批量处理,但不适合实时分析。文章详细讲解了Hive的体系结构,包括元数据、Hadoop存储和MapReduce计算模型,并提供了从安装JDK、Hadoop、mysql到配置和启动Hive的步骤。
最低0.47元/天 解锁文章
6124

被折叠的 条评论
为什么被折叠?



