Hive是一个构建在Hadoop上的数据仓库平台,其设计目标是.ppt

Hive是一个构建在Hadoop上的数据仓库平台,其设计目标是.ppt

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Hive 是一个构建在Hadoop 上的数据仓库平台,其设计目标是使Hadoop上的数据操作与传统SQL结合,让熟悉SQL编程的开发人员能够向Hadoop平台迁移。 Hive可以在HDFS上构建数据仓库来存储结构化的数据,这些数据来源于HDFS上的原始数据, Hive提供了类似SQL的查询语言HiveQL,可以执行查询,变换数据等操作。通过解析,HiveQL语言在底层被转化为相应的MapReduce操作。 Hive的体系结构 Hadoop H Job Tracker Name Node Hive Driver (Compiler, Optimizer, Executor) Thrift Server CLI JDBC/ ODBC Web GUI Metastore Hive相关组件: 外部接口:Hive提供了例如命令行(CLI)、Web界面等用户接口, 还提供了应用程序接口(API)例如 JDBC,ODBC等。 Thrift服务器:Hive Thrift服务器是一种跨语言服务的可伸缩软件框架。它结合律功能强大的软件堆栈的代码生成引擎,可以无缝的与C++、C#、Java、Python、PHP和Ruby结合。Thrift允许用户简单地定义文件中的数据类型和服务接口,编译器生成代码来实现RPC客户端和服务器之间的通信。 Hive内部集成了Thrift服务,支持在多种语言中运行Hive命令,使 客户端可以跨平台连接Hive。 Hive相关组件: 解析器(Driver):包括解释器,编译器,优化器,执行器,通过这一系列对HiveQL查询语句的处理,最后生成查询计划。解析器管理着HiveQL语句在编译,优化和执行时的生命周期。当接收到一个HiveQL查询语句时,解析器会创建一个相对的句柄,这个句柄被用来追踪执行时间,输出行数等数据。 Hadoop:数据仓库和查询计划存储在HDFS上,计算过程由MapReduce执行。 Hive相关组件: 元数据库(Metastore):管理系统目录,通常存储在关系数据库如MySQL,Derby中。Hive所有其他的组件都会与它进行交互。Hive的元数据中保存了表的属性和服务信息,为查询操作提供依据,默认的元数据库是内部的Derby,这种情况下metastore和其他Hive服务运行在同一个Java虚拟机里,只能允许建立单个会话,要实现多用户多会话支持,需要配置一个独立的元数据库。 数据在Hive里组织成表,分区和桶的形式 表:Hive里的表类似于关系数据库中的表。每个表都有一个对应的 HDFS目录。表中的数据被序列化后存储在该目录的文件中。 Hive提供了内置的序列化格式。用户还可以通过自定义序列化 和反序列化的方法去支持新的数据格式。每张表的序列化格式 存储在原数据库中,并在查询编译和执行时被自动调用。Hive 同时还支持数据存储在NFS,本地目录的外部表。 数据在Hive里组织成表,分区和桶的形式 分区:分区是表的部分列的集合。一个表可以有一个或者多个分区, 这些分区确定了数据在表目录下的分布情况。假设表T的数 据是在/wh/T目录下。如果T在列ds和ctry上被分区,那么 ds值ctry值为US的数据将会被存储到 /wh/T/dsctry=US的目录下。 桶:在每个分区中的数据可以根据列的哈希值进一步划分成桶,每 个桶在分区目录下都存在一个文件中。 Hive支持的数据类型(基本类型) 基本类型 大小 描述 TINYINT 1字节 有符号整数 SMALLINT 2字节 有符号整数 INT 4字节 有符号整数 BIGINT 8字节 有符号整数 FLOAT 4字节 单精度浮点数 DOUBLE 8字节 双精度浮点数 BOOLEAN ~ 取true/false STRING 最大2GB 字符串,类似于sql的varchar Hive支持的数据类型(复杂类型) 复杂类型 大小 描述 ARRAY 不限 一组有序字段,字段类型必须相同 MAP 不限 无序键值对,键值内部字段类型必须相同 STRUCT 不限 一组字段,字段类型可以不同 Hive提供了类似于SQL的查询语言 HiveQ

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档