Hadoop架构及其生态圈.ppt

Hadoop架构及其生态圈 Hadoop核心架构 Hadoop简介 HDFS、MapReduce、YARN Hadoop生态圈 Hadoop生态圈分层结构 Zookeeper、Hbase、Pig、Hive  Oozie、Flume、Mahout UDH产品介绍 Hadoop核心架构   ——Hadoop简介 Hadoop简介 Hadoop是一个分布式系统基础架构,由Apache基金会开发。 2006年2月从Nutch项目中分离出来,正式成为Apache顶级项目之一。 作者:Doug Cutting 官方网站 产品Logo Hadoop之父 Doug Cutting Hadoop发展历程 挣扎在如何使Nutch满足Web-Scale要求 2002 发表GFS论文 2003 参考GFS论文,在Nutch中实现NDFS 2004 2004 发表MapReduce论文 参考MapReduce论文,实现并移植Nutch 2005 加入Yahoo!并扩充,建立Hadoop项目 发表BigTable、Chubby论文 2006 2006 Hadoop成为Apache顶级项目 2008 Doug Cutting(Hadoop作者) Hadoop发展历程 Hadoop VS. Google 技术架构的比较 数据结构化管理组件:Hbase→BigTable 并行计算模型:MapReduce→MapReduce 分布式文件系统:HDFS→GFS Hadoop缺少分布式锁服务Chubby HBase MapReduce HDFS BigTable MapReduce GFS Hadoop云计算应用 Chubby Google云计算应用 Hadoop特点 扩容能力(Scalable):能可靠地(reliably)存储和处理千兆字节(PB)数据。 成本低(Economical):可以通过普通机器组成的服务器群来分发以及处理数据。这些服务器群总计可达数千个节点。 高效率(Efficient):通过分发数据,hadoop可以在数据所在的节点上并行地(parallel)处理它们,这使得处理非常的快速。 可靠性(Reliable):hadoop能自动地维护数据的多份复制,并且在任务失败后能自动地重新部署(redeploy)计算任务。 谁在用Hadoop Hadoop核心架构   —— HDFS HDFS简介 HDFS为了做到可靠性(reliability)创建了多份数据块(data blocks)的复制(replicas),并将它们放置在服务器群的计算节点中(compute nodes),MapReduce就可以在它们所在的节点上处理这些数据了。 适合于: 存储并管理PB级数据 处理非结构化数据 注重数据处理的吞吐量(latency不敏感) 应用模式为:write-once-read-many存取模式 不适合: 存储小文件 (不建议使用) 大量的随机读 (不建议使用) 需要对文件的修改 (不支持) HDFS主要组件的功能 NameNode DataNode 存储元数据 存储文件内容 元数据保存在内存中 文件内容保存在磁盘 保存文件,block ,datanode之间的映射关系 维护了block id到datanode本地文件的映射关系 HDFS架构 HDFS核心功能 功能 说明 Namespace HDFS支持传统的层次型文件组织,与大多数其他文件系统类似,用户可以创建目录,并在其间创建、删除、移动和重命名文件。 Shell命令 Hadoop包括一系列的类shell的命令,可直接和HDFS以及其他Hadoop支持的文件系统进行交互。 数据复制 每个文件的block大小和replication因子都是可配置的。Replication因子可以在文件创建的时候配置,以后也可以改变。HDFS中的文件是write-one,并且 严格要求在任何时候只有一个writer。 机架感知 在大多数情况下,replication因子是3,HDFS的存放策略是将一个副本存放 在本地机架上的节点,一个副本放在同一机架上的另一个节点,最后一个副本影响到数据的可靠性和有效性。放在不同机架上的一个节点。机架的错误远远比节点的错误少。 Editlog FSEditLog类是整个日志体系的核心,提供了一大堆方便的日志写入API,以及日志的恢复存储等功能。 集群均衡 如果某个DataNode节点上的空闲空间低于特定的临界点,那么就会启动一个计划自动地将数据从一个DataNode搬移到空闲的DataNode。 空间的回收 删除文件并没有立刻从 HDFS 中删除 , HDFS 将这个文件重命名, 并转移到/trash目录,用于恢复,/trash可设置保存时间。 HDFS关键运行机制--保障可靠

文档评论(0)

1亿VIP精品文档

相关文档