文档详情

08-第八章 分布式数据仓库技术Hive.ppt

发布:2017-01-27约1.95千字共14页下载文档
文本预览下载声明
第八章 分布式数据仓库技术Hive 8.1 Hive出现的原因 如何实现对 SQL 技术比较熟悉的程序设计人员在 Hadoop 平台上对海量数据进行分析? 如何实现传统的数据格式到 Hadoop 平台上的迁移,如基于传统关系型数据库的数据格式和 SQL 处理技术? 如何实现传统数据库设计人员在 Hadoop 平台上使用其所熟悉的 SQL技术施展才能? 如何在分布式环境下采用数据仓库技术从更多的数据中快速地获取数据的有效价值? 8.1.1 Hive的定义 Hive 是一种数据仓库技术,用于查询和管理存储在分布式环境下的大数据集, 由 Facebook 公司研发并作为开源项目贡献给了 Apache 软件基金会,目前 Hive 成功升级为 Apache 的顶级项目,并获得了全球大多数自由软件爱好者和大型软件公司的源码贡献和功能完善,成为一个应用广泛、可扩展的数据处理平台。 8.2 Hive 服务组成–体系结构 8.3 Hive安装 1.基本安装 2. MySQL安装 3. Hive 配置 hive-site.xml 文件内容 编辑 hive-env.sh 文件,在文件末尾添加变量指向 Hadoop 的安装路径 创建数据仓库操作过程中临时数据在 HDFS 上的转存目录 创建数据仓库操作过程中数据文件在 HDFS 上的存储目录 分别对刚创建的目录添加组可写权限,允许同组用户进行数据分析操作 8.3 Hive安装–相关的属性设置方法 1.Hive SET 命令 2.进入 Hive 会话带-hiveconf 选项 3.读 hive-site.xml 文件 4.读 hive-default.xml 文件 5.读 hadoop-site.xml 文件及其相关文件(如 core-site.xml、hdfs-site.xml、mapred-site.xml) 6.读 hadoop-default.xml 文件及其相关文件(如 core-default.xml、hdfs-default.xml、mapred-default.xml) 8.4 Hive Shell 介绍 Hive Shell 运行在 Hadoop 集群环境上,是 Hive 提供的命令行接口(CLI) ,在 Hive 提示符输入 HiveQL 命令, Hive Shell 把 HiveQL 查询转换为一系列 MapReduce 作业对任务进行并行处理, 然后返回处理结果。 Hive 采用 RDBMS 表 (table) 形式组织数据, 并为存储在 Hadoop上的数据提供附属的对数据进行展示的结构描述信息,该描述信息称为元数据(metadata)或表模式,以 metastore 形式存储在 RDBMS 数据库中。Hive Shell 下的大多数操作与 MySQL 命令一致,熟悉 MySQL 的使用者会察觉两者的语法操作基本一样。 8.5 HiveQL 详解– HiveQL与SQL的差异 8.5.1 Hive 管理数据方式 1.内部表 2. 外部表 3.内部表与外部表之间的抉择 4.分区 5.桶 8.5.2 Hive 表 DDL 操作 1. Create/Drop/Alter 数据库 2. Create/Drop/Truncate 表 3. Alter 表/分区/列 4. Create/Drop/Alter 视图 5. Create/Drop/Alter 索引 6. Create/Drop 函数 7. Create/Drop/Grant/Revoke 角色和权限 8.5.3 HIVE 表 DML 操作 1.将文件中的数据导入(Load)到 Hive 表中 2. Select 操作 3.将 select 查询结果插入 hive 表中 4.将 select 查询结果写入文件 5. Hive 表 ACID 事务特性 8.6小结 本章主要介绍了 Hive 的产生背景及其应用目的,并对其主要服务组成结构和相关功能进行了详细介绍,对 Hive 是什么和其工作原理是怎样的有一个初步认识;随后详细介绍了 Hive的安装过程、元数据库环境搭建及其配置方法;最后对使用 Hive 管理和操作数据的方式进行了详细介绍。本章从前向后通过理论与实际例子相结合的方式介绍了 Hive 的基本功能和相关操作,对学习 Hive 将会有一个全面的认识。 1.简述 Hive 产生背景。 2.简述 Hive 的服务结构组成及其对应的功能。 3.MySQL 数据库针对 Hive 的用途是什么? 4.Hive 是如何操作和管理数据的,其管理数据的方式有哪些? 习题 The End * Page * NOW Handout Page * *
显示全部
相似文档