Hadoop 总体概述PPT课件02

上传人:工**** 文档编号:586479731 上传时间:2024-09-04 格式:PPT 页数:36 大小:1.20MB
返回 下载 相关 举报
Hadoop 总体概述PPT课件02_第1页
第1页 / 共36页
Hadoop 总体概述PPT课件02_第2页
第2页 / 共36页
Hadoop 总体概述PPT课件02_第3页
第3页 / 共36页
Hadoop 总体概述PPT课件02_第4页
第4页 / 共36页
Hadoop 总体概述PPT课件02_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《Hadoop 总体概述PPT课件02》由会员分享,可在线阅读,更多相关《Hadoop 总体概述PPT课件02(36页珍藏版)》请在金锄头文库上搜索。

1、HadoopHadoop入门入门主讲人:张冠锋大数据入门以前有个国王很阔绰也很爱排场,有天他很高兴想奖赏他的宠臣,这个大臣给国王看下面这个棋盘, 8*8 的方格,希望获得在每个标号的格子内放米粒,第一个格子放 1 粒米,后面的格子总是前面格子的两倍的所有米粒。如果把整个棋盘放满,需要多少米粒?我们学过级数的话,它的推演是 1 + 2 + 4 + 263 264-1这个数字多大很多人没印象,反正如果真的要兑现的话,这个国家肯定是破产了 其实把这个棋盘分成上下两半,在上一半总共需要的米粒是 232, 这并不是个很大的数,其实前几年计算机的 32 位就是那么大,但下半场就完全不一样了,这是个平方级别

2、的 scale什么是大数据:什么样的东西能成为数据呢?电子商务方面:淘宝,美团,京东买东西,你的IP地址,商品名,价格,快递名,手机号,收货地址,下单的时间日期等这些就是数据工业方面:钢铁厂的日,月,年产量;销量;省,市,县 销量等这些也是数据.本章要点本章要点一、一、 hadoophadoop总体概述总体概述二、二、 hadoophadoop生态系统生态系统三、三、 hadoophadoop特点及工作机制特点及工作机制四、四、 hadoophadoop任务任务(job)(job)运行过程运行过程五、五、 核心进程讲解核心进程讲解六、六、 hadoophadoop配置文件配置文件Hadoop

3、Hadoop 总体概述总体概述 Hadoop是一个由Apache基金会所开发的分布式系统基础架构。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System)简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据Hadoop框架核心设计HDFS和MapReduce:

4、 HDFS为海量的数据提供分布式存储 MapReduce为海量的数据提供分布式计算什么是分布式文件系统:HDFS最简单的理解如上图,多台服务器(三台也行,两万台也可以)构成的一个集群系统对外无论是读操作还是写操作都仅有主节点这一个出入口对内若干个服务器之间会自动完成文件的多机复制,自动迁移,数据文件读写等操作,前期,你们就理解这样这个工作机制就行HDFS是可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用,它运行于廉价的普通硬件上,提供容错功能分布式计算 mapreduce简单介绍:形象化例子1: 1、校长对一位老师说,批改一万份卷子(必须上午改完) 2、老师叫了100个学

5、生,老师和这100个学生组成一个团队(集群),老师指定将卷子分给这100个学生,让他们完成,然后汇总,老师不改只管分配例子2:Hadoop 生态系统生态系统Hadoop 生态系统概况:Apache Hive: 数据仓库基础设施,提供数据汇总和特定查询。这个系统支持用户进行有效的查询,并实时得到返回结果。Apache Spark: Apache Spark 是提供大数据集上快速进行数据分析的计算引擎。它建立在 HDFS 之上,却绕过了 MapReduce 使用自己的数据处理框架,Spark 常用于实时查询、流处理、迭代算法、复杂操作运算和机器学习。Apache Ambari: Ambari 用来

6、协助管理 Hadoop,它提供对 Hadoop 生态系统中许多工具的支持,包括 Hive、HBase、Pig、 Spooq 和 ZooKeeper,这个工具提供集群管理仪表盘,可以跟踪集群运行状态,帮助诊断性能问题。Apache Pig: Pig 是一个集成高级查询语言的平台,可以用来处理大数据集Apache HBase: HBase 是一个非关系型数据库管理系统,运行在 HDFS 之上。它用来处理大数据工程中稀疏数据集其他常见的 Hadoop 项目还包括 Avro、Cassandra、Chukwa, Mahout 和 ZooKeeperHadoop 是一个能够对大量数据进行分布式处理的软件框

7、架。具有可靠、高效、可伸缩的特点,Hadoop 的核心是 HDFS 和 Mapreduce,hadoop2.0 还包括 YARNHadoop生态系统概况:HadoopHadoop特点特点Hadoop是一个能够让用户轻松架构和使用的分布式计算平台,用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。它主要有以下几个优点:高可靠性:Hadoop按位存储和处理数据的能力值得人们信赖。高扩展性:Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集 簇可以方便地扩展到数以千计的节点中。 高效性:Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡, 因此处理速度非

8、常快。高容错性:Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重 新分配。 低成本:与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市 相比,hadoop是开源的,项目的软件成本因此会大大降低。Hadoop工作机制工作机制hadoop由两部分组成,分别是分布式文件系统HDFS和分布式计算框架MapReduceHDFS主要用于大规模数据的分布式存储MapReduce 则构建在分布式文件系统之上,对存储在分布式文件系统中的数据进行分布式计算 Hadoop默认使用的分布式文件系统HFDS(HadoopDistributed FileSystem)

9、,它与MapReduce框架紧密结合Hadoop中,MapReduce 底层的分布式文件系统是独立模块,用户可按照约定的一套接口实现自己的分布式文件系统,然后经过简单的配置后,存储在该文件系统上的数据便 可以被 MapReduce 处理HadoopHadoop工作机制工作机制HDFS工作机制简单介绍:1、由一个 master 与多个 server 组成2、Master 用来保存目录与索引信息,hadoop2x设置的每个 chunk 大 小为 128M;Hadoop1x设置的每个 chunk 大小为 64M3、Master 的所有信息都存储在内存中,启动时的信息从 chunk server中获得

10、HadoopHadoop工作机制工作机制HDFS是一个具有高度容错性的分布式文件系统,适合部署在廉价的机器上HDFS的架构如下图1所示,总体上采用了master/slave 架构,主要由以下几个组件组成:Client ,NameNode ,Secondary ,DataNodeClient: 切分文件,访问 HDFS,与 NameNode 交互,获取文件位置信息;与 DataNode 交互,读取和写入数据 NameNode: Master 节点,在 hadoop1.X 中只有一个,在hadoop2x中可以配合 zookeeper实现HA(热备-两个NameNode),管理 HDFS 的名称空间

11、和数据 块映射信息,配置副本策略,处理客户端请求 DataNode: Slave 节点,存储实际的数据,汇报存储信息给 NameNodeSecondary NameNode(可以叫做冷备): 辅助 NameNode,分担其工作量;定期合并 fsimage 和 fsedits,推 送给 NameNode;紧急情况下,可辅助恢复 NameNode,但 Secondary NameNode 并非 NameNode 的热备Mapreduce(分布式计算框架)源自于 google 的 MapReduce 论文,发表于 2004 年 12 月,Hadoop MapReduce 是 google MapRe

12、duce 克隆版,MapReduce 是一种计算模型,用以进行大数据量的计算Map: 对数据集上的独立元素进行指定的操作,生成键-值对形式中 间结果 Reduce : 对中间结果中相同“键”的所有“值”进行规约,以得到最终 结果 MapReduce 这样的功能划分,非常适合在大量计算机组成的分布式并行环境里进行数据处理Mapreduce 处理流程,以 wordCount(词频统计) 为例:Mapreduce (map和reduce)处理流程:hadoop工作任务(job)过程HadoopV1:JobTracker:Master节点,只有一个,管理所有作业,作业/任务的监控、错误处理等;将任务分

13、解成一系列任务,并分派给TaskTrackerTaskTracker:Slave节点,运行MapTask和ReduceTask,与JobTracker交互,汇报任务状态MapTask:解析每条数据记录,传递给用户编写的map(),并执行,将输出结果写入本地磁盘(如果为map-only作业,直接写入HDFS)。ReducerTask:从MapTask的执行结果中,远程读取输入数据,对数据进行排序,将数据按照分组传递给用户编写的reduce函数执行。Client(客户端): 编写 mapreduce 程序,配置作业,提交作业,这就是程 序员完成的工作JobTracker: 初始化作业,分配作业,与

14、 TaskTracker 通信,协调整 个作业的执行TaskTracker: 保持与 JobTracker 的通信,在分配的数据片段上执行 Map 或 Reduce 任务TaskTracker 和 JobTracker 的不同有个很重要的方面,就是在执行任务时候 TaskTracker 可以有 n 多个,JobTracker 则只会有一个(JobTracker 只能有一个就和 hdfs 里 namenode 一样存在单点故障,我会在后面的 mapreduce 的相关问题里讲到这个问题的)Hdfs: 保存作业的数据、配置信息等等,最后的结果也是保存在 hdfs 上面mapreduce 作业执行涉

15、及4个独立的实体:hadoop工作任务(job)过程HadoopV2:MapReduce在Hadoop2x中称为MR2或YARN,将JobTracker中的资源管 理及任务生命周期管理(包括定时触发及监控),拆分成两个独立的服务:1、用于管理全部资源的ResourceManager-用于管理向应用程序分配计算资源2、管理每个应用的ApplicationMaster-用于管理应用程序、调度以及协调一个应用程序可以是经典的MapReduce架构中的一个单独的任务ResourceManager及每台机上的NodeManager服务,用于管理那台机的用户进程,形成计算架构每个应用程序的Applicat

16、ionMaster实际上是一个框架具体库,并负责从ResourceManager中协调资源及与NodeManager(s)协作执行并监控任务。说明:关键进程关键进程NameNodeSecondaryNameNodeDataNodeJobTrackerTaskTracker关键进程关键进程NameNodeNameNode:它是Hadoop中的主服务器,管理文件系统名称空间和对集群中存储的文件的访问关键进程关键进程SecondaryNameNodeSecondaryNameNode:它不是namenode的冗余守护进程,而是提供周期检查点和清理任务。出于对可扩展性和容错性等考虑,我们一般将Seco

17、ndaryNameNode运行在一台非NameNode的机器上关键进程关键进程DataNodeDataNode:它负责管理连接到节点的存储(一个集群中可以有多个节点)。每个存储数据的节点运行一个datanode守护进程关键进程关键进程JobTrackerJobTracker负责调度DataNode上的工作,每个DataNode有一个TaskTracker,它们执行实际工作JobTracker和TaskTracker采用主-从形式,JobTracker跨DataNode分发工作,而TaskTracker执行任务JobTracker还检查请求的工作,如果一个DataNode由于某种原因失败,Job

18、Tracker会重新调度以前的任务关键进程关键进程TaskTrackerTaskTracker:是在网络环境中开始和跟踪任务的核心位置,与Jobtracker连接请求执行任务而后报告任务状态HDFSHDFS hdfs-site.xml hdfs-site.xml 参数配置参数配置hadoop配置文件v NameNode元数据存放位置默认值:file:/$hadoop.tmp.dir/dfs/name对于新文件切分的大小,单位byte。默认是128M,每一个节点都要指定,包括客户端。默认值:134217728DataNode在本地磁盘存放block的位置,可以是以逗号分隔的目录列表,DataNo

19、de循环向磁盘中写入数据,每个DataNode可单独指定与其它DataNode不一样默认值:file:/$hadoop.tmp.dir/dfs/dataHDFSHDFS hdfs-site.xml hdfs-site.xml 参数配置参数配置NameNode用来处理来自DataNode的RPC请求的线程数量建议设置为DataNode数量的10%,一般在10200个之间如设置太小,DataNode在传输数据的时候日志中会报告“connectonrefused信息在NameNode上设定默认值:10DataNode用来连接NameNode的RPC请求的线程数量取决于系统的繁忙程度设置太小会导致性能

20、下降甚至报错在DataNode上设定默认值:10DataNode可以同时处理的数据传输连接数建议值:4096HDFSHDFS hdfs-site.xml hdfs-site.xml 参数配置参数配置v如果是true则检查权限,否则不检查(每一个人都可以存取文件)于NameNode上设定默认值:truevdfs.datanode.du.reserved在每个卷上面HDFS不能使用的空间大小在每个DataNode上面设定默认值:0建议为,即10G。需要结合MapReduce场景设置。DataNode可以容忍损块的磁盘数量,超过这个数量DataNode将会离线,所有在这个节点上面的block将会被重

21、新复制默认是0,但是在有多块磁盘的时候一般会增大这个值在文件被写入的时候,每一块将要被复制多少份默认是3份。建议3份在客户端上设定通常也需要在DataNode上设定HDFSHDFS hdfs-site.xml hdfs-site.xml 参数配置参数配置 -Enable WebHDFS (REST API) in Namenodes and Datanodes. - #1.配置namenode必须将dfs.webhdfs.enabled设置为true,否则不能使用webhdfs的LISTSTATUS、LISTFILESTATUS等需要列出文件、文件夹状态的命令,因为这些信息都是由namenod

22、e来保存的HDFSHDFS corecore-site.xml -site.xml 参数配置参数配置文件系统的名字。通常是NameNode的hostname与port需要在每一个需要访问集群的机器上指定,包括集群中的节点例如:hdfs:/:9000/以逗号分隔的文件夹列表,SecondNameNode用来存储checkpointimage文件如果多于一个文件夹,那么都会被写入数据需要在SecondNameNode上设定默认值:$hadoop.tmp.dir/dfs/namesecondaryvHDFS与本地磁盘的临时文件,服务器多磁盘每个都配默认是/tmp/hadoop-$user.name.需要在所有的节点中设定HDFSHDFS corecore-site.xml -site.xml 参数配置参数配置当一个文件被删掉后,它会被放到用户目录的.Trash目录下,而不是立即删掉经过此参数设置的分钟数之后,再删掉数据默认是0,禁用此功能,建议1440(一天)设定在读写数据时的缓存大小,应该为硬件分页大小的2倍默认是4096,建议为65536(64K)值设为:*值设为:*

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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