基于hadoop数据仓库PPT课件

上传人:日度 文档编号:149814334 上传时间:2020-10-30 格式:PPT 页数:32 大小:1.53MB
返回 下载 相关 举报
基于hadoop数据仓库PPT课件_第1页
第1页 / 共32页
基于hadoop数据仓库PPT课件_第2页
第2页 / 共32页
基于hadoop数据仓库PPT课件_第3页
第3页 / 共32页
基于hadoop数据仓库PPT课件_第4页
第4页 / 共32页
基于hadoop数据仓库PPT课件_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《基于hadoop数据仓库PPT课件》由会员分享,可在线阅读,更多相关《基于hadoop数据仓库PPT课件(32页珍藏版)》请在金锄头文库上搜索。

1、基于hadoop的数据仓库技术,目录,Hadoop简介 HDFS (Hadoop Distributed File System) MapReduce Hive,本文的内容主要来自三篇hadoop领域的核心论文 1、HiveA Petabyte Scale Data Warehouse Using Hadoop 2、MapReduce and Parallel DBMSs:Friends or Foes 3、Cheetah:A High Performance,Custom Data Warehouse on Top of MapReduce,历史,2002-2004: Apache Nutc

2、h 2004-2006: Google 发表 GFS 和 MapReduce相关论文 Apache 在Nutch中实现HDFS和MapReduce 2006-2008: Hadoop 项目从Nutch中分离 2008年7月,Hadoop赢得Terabyte Sort Benchmark,Doug Cutting Hadoop项目负责人,Hadoop简介,Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughpu

3、t)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。,Hadoop简介,Hadoop是 Apache 的一个开源软件项目,由Doug Cutting在2004年开始开发。 Hadoop是一个海量数据存储和计算的分布式系统,它由若干个成员组成,主要包括:HDFS、MapReduce、HBase、Hive、Pig 和 ZooKeeper, 其中HDFS是Google的GFS开源版本, HBase 是Google的

4、BigTable开源版本,ZooKeeper是Google的Chubby开源版本。 Hadoop在大量的公司中被使用和研究,Hadoop的体系架构,Hadoop由以下几个部件组成: Hadoop Common: The common utilities that support the other Hadoop subprojects. Avro: A data serialization system that provides dynamic integration with scripting languages. Chukwa: A data collection system for

5、 managing large distributed systems. HBase: A scalable, distributed database that supports structured data storage for large tables. HDFS: A distributed file system that provides high throughput access to application data. Hive: A data warehouse infrastructure that provides data summarization and ad

6、 hoc querying. MapReduce: A software framework for distributed processing of large data sets on compute clusters. Pig: A high-level data-flow language and execution framework for parallel computation. ZooKeeper: A high-performance coordination service for distributed applications.,Hadoop的体系架构,Hadoop

7、-HDFS,HDFS的结构按照GFS设计 A GFS cluster consists of a single master and multiple chunkservers and is accessed by multiple clients,HDFS,Fault-tolerant, 容错性 Run on commodity hardware,在通用的机器上运行 Scalable 可扩缩的,http:/hadoop.apache.org/hdfs/docs/current/hdfs_design.html ,1个namenode 多个datanodes,11,11,HDFS,NameNo

8、de 存贮HDFS的元数据(metadata) 管理文件系统的命名空间(namespace) 创建、删除、移动、重命名文件和文件夹 接收从DataNode来的Heartbeat 和 Blockreport DataNode 存贮数据块 执行从Namenode来的文件操作命令 定时向NameNode发送Heartbeat和Blockreport,Heartbeat和Blockreport,Namenode Metadata: ,Datanode 1,Datanode 2,Datanode 3,1,1,3,3,2,2,1,3,1,2,2,3,13,13,Data Flow,File Read,13

9、,14,14,Data Flow,File Write,14,MapReduce的原理,编程模型(program model),软件包 Map 把要处理的数据组合成一个个的对(pair) Reduce 把具有相同key的pair聚集在一起,计算一个新的value,从而得到一个新的并输出。,MapReduce的原理,Mapreduce,控制,数据流,一个Jobtracker 多个tasktrackers,MapReduce,Jobtraker (Master) 接收任务(job)的提交 提供任务的监控(monitoring)和控制(control) 把job划分成多个tasks,交给Tasktr

10、acker执行,并管理这些tasks的执行 Tasktracker (Worker) 管理单个task的map任务和reduce任务的执行,Word count: file0: hello world file1: hello mapreduce file2: bye bye,Input files,file0,file2,file1, , , ,files,files,目录,Hadoop简介 HDFS (Hadoop Distributed File System) MapReduce Hive Hadoop的企业级应用,What is HIVE,数据仓库业务具有多样性、多变性和逻辑复杂性,

11、传统的Parallel DBMSs只能使用SQL语句,语言表达力不够应付现有的类似google,facebook等的数据仓库需求(若使用UDF或UDA自己定义aggregate,则失去了其强大的优化功能),而自己定制的maper和reducer的代码较为低层比较繁琐且重用性也不好,所以就有了Hive,提供一个类SQL的编程接口,简单又不失灵活性,且基于map-reduce.,What is HIVE,(论文翻译)hive是一个基于hadoop的数据仓库。使用hadoop-hdfs作为数据存储层;提供类似SQL的语言(HQL),通过hadoop-mapreduce完成数据计算;通过HQL语言提供

12、使用者部分传统RDBMS一样的表格查询特性和分布式存储计算特性。 (百科)hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。,HIVE架构,1、操作界面:CLI,Web,Thrift 2、driver:hive系统将用户操作转化为mapreduce计算的模块(重点) 3、hadoop:hdfs+mapreduce 4、metasto

13、re:存储元数据,HIVE结合HBase,reduce阶段写入HBase的方式,map-only job写入HBase的方式,HIVE的实现,hive的元数据存储在传统的RDBMS中,现在为mysql中。采用JDO (JPOX)。 原因:访问这些Metadata,我们想要“很低的延时”,而存在hdfs中是无法满足。(元数据对hive是相当重要的,因此一般要求有备份机制 ) 使用:元数据都是在HQL语句编译的时候 ,就被生成一个xml文件(包含此次编译所有需要的元数据信息)存储在hdfs中,然后运行mapreduce时传递给mapper和reducer。(减少后期访问),HIVE查询的优化过程,

14、GraphWalker遍历(walk)DAG中所有的Node,并检查一个Rule是否满足,在满足的条件下回出发一个对应的Processor。Dispatcher则维护Rule到Processor的映射,并进行Rule的匹配工作。,HIVE查询的简单优化步骤,1、列裁剪(Column pruning):只有需要用到的列 才进行输出 2、谓词下推(Predicate pushdown ):尽早进行数据过滤 ,减少后续处理的数据量 3、分区裁剪(Partition pruning):只读取满足分区条件的文件 4、map-join:对于join中一些小文件,可以在map阶段进行join操作 5、joi

15、n-reordering:将在reducer中进行join操作时的小table放入内存 ,而大table通过stream方式读取 6、Group-by优化: 进行局部聚合进行优化(包括hash-based和sort-based),对于skew的key(key的row num和size在reduce时非常不均)可以进行两次map-reduce的方式优化,说明:基本上用于优化的提示(hint)都是一些配置项,map-join除外,需要具体在HQL直接指定。,HIVE的physical plan的生成,根据上一步优化的结果,分解成一些map/reduce操作,并将最终结果(即一些plan的xml文件)写入到hdfs。 以论文的例子加以说明 A. Thusoo, J.S. Sarma, N. Jain, Z. Shao, P. Chakka, N. Zhang, S. Antony, and H. Liu, “Hive A Petabyte Scale Data Warehouse Using Hadoop,” Architecture.,HIVE的physical plan的生成,The End,Thank you k,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号