- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
提 纲 ? Hadoop简介 ? Hadoop分布式文件系统HDFS ? 分布式数据处理MapReduce ? 分布式结构化数据表HBase Hadoop简介 Hadoop——Apache开源组织的一个分布式计算框架,可以在大量廉价的硬件设备组成的集群上运行应用程序,为应用程序提供了一组稳定可靠的接口,旨在构建一个具有高可靠性和良好扩展性的分布式系统 Hadoop云计算系统 Google云计算系统 Hadoop HDFS Google GFS Hadoop MapReduce Google MapReduce Hadoop HBase Google Bigtable Hadoop ZooKeeper Google Chubby Hadoop Pig Google Sawzall Hadoop云计算系统与Google云计算系统 Hadoop简介 开源项目Lucene:Java开发的 开源高性能全文检索工具包 开源项目Nutch:第一个开源的 Web有哪些信誉好的足球投注网站引擎 Hadoop Hadoop简介 Hadoop项目组成 ?(1)Hadoop Common ?(2)Avro ?(3)Chukwa ?(4)HBase ?(5)HDFS ?(6)Hive ?(7)MapReduce ?(8)Pig ?(9)ZooKeeper Hadoop优点 ?(1)可扩展 ?(2)经济 ?(3)可靠 ?(4)高效 提 纲 ? Hadoop简介 ? Hadoop分布式文件系统HDFS ? 分布式数据处理MapReduce ? 分布式结构化数据表HBase 设计前提与目标 设计前提与目标 硬件错误是常态而不是异常 流式数据访问 超大规模数据集 简单一致性模型 移动计算比移动数据更简单 异构软硬件平台间的可移植性 体系结构 HDFS主从结构体系 ?NameNode:主控制服务器,负责维护文件系统的命名空间(Namespace)并协调客户端对文件的访问,记录命名空间内的任何改动或命名空间本身的属性改动 ?DataNode:负责它们所在的物理节点上的存储管理 保障可靠性的措施 1.冗余备份 每个文件存储成一系列数据块(Block),默认块大小为64MB(可配置)。为了容错,文件的所有数据块都会有副本(副本数量即复制因子,可配置) 2.副本存放 采用机架感知(Rack-aware)的策略来改进数据的可靠性、可用性和网络带宽的利用率 复制因子为3时数据块分布情况 保障可靠性的措施 3.心跳检测 NameNode周期性地从集群中的每个DataNode接受心跳包和块报告,收到心跳包说明该DataNode工作正常 4.安全模式 系统启动时,NameNode会进入一个安全模式。此时不会出现数据块的写操作 5.数据完整性检测 HDFS客户端软件实现了对HDFS文件内容的校验和(Checksum)检查 保障可靠性的措施 6.空间回收 文件被用户或应用程序删除时,先把它移动到/trash目录里;只要还在这个目录里,文件就可以被迅速恢复 7.元数据磁盘失效 NameNode可以配置为支持维护映像文件和事务日志的多个副本,任何对映像文件或事务日志的修改,都将同步到它们的副本上 8.快照 快照支持存储某个时间的数据复制,当HDFS数据损坏时,可以回滚到过去一个已知正确的时间点。HDFS目前还不支持快照功能 提升性能的措施 提升性能 措施 副本选择 HDFS会尽量使用离程序最近的副本来满足用户请求,这样可以减少总带宽消耗和读延时 负载均衡 HDFS的架构支持数据均衡策略 客户端缓存 HDFS客户端先把数据缓存到本地的一个临时文件,程序的写操作透明地重定向到这个临时文件 流水线复制 DataNode从前一个节点接收数据的同时,即时把数据传给后面的节点,这就是流水线复制 提 纲 ? Hadoop简介 ? Hadoop分布式文件系统HDFS ? 分布式数据处理MapReduce ? 分布式结构化数据表HBase 逻辑模型 MapReduce处理的任务基本要求:待处理的数据集可以分解成许多小的数据集,而且每一个小数据集都可以完全并行地进行处理 映射阶段,用户输入的数据分割为M个片断,对应M个Map任务。每一个Map操作的输入是数据片断中的键值对K1,V1集合,Map操作调用用户定义的Map函数,输出一个中间态的键值对K2,V2 集合。接着,按照中间态的K2将输出的数据集进行排序,并生成一个新的K2,list(V2)元组,按照K2的范围将这些元组分割为R个片断 化简阶段,每一个Reduce操作的输入是一个K2,list(V2)片断,Reduce操作调用用户定义的R
文档评论(0)