赞
踩
Apahce Hadoop 软件库是一个框架,它允许使用简单的编程模型跨计算机集群分布式处理大型数据集,用户可以在不了解分布式底层细节的情况下开发分布式应用程序,它支持单个服务器扩展到上千个服务器,可以很好的支持大型数据集处理。
Apache Hadoop 自发布至今主要经历了三个大版本的更新,即:Hadoop 1.x,Hadoop 2.x,Hadoop 3.x 三个版本。
Apache Hadoop 1.x 版本的发布主要解决了两个问题 - 海量数据的存储(HDFS),海量数据的计算(MapReduce)
HDFS1 是一个主从式架构,主节点只有一个为 Namenode, 从节点由多个为 Datanode
HDFS1 中的 MapReduce 也从 MRV1 ,是一个主从式架构,主节点为 JonTracker 负责集群的资源管理和处理客户端的请求,从节点 TaskTracker 负责资源管理和任务的执行。
存在的问题:
HDFS2 架构和 HDFS1 架构基本一致,也是主从结构,主节点为 NameNode,从节点为DataNode
但是它解决了 HDFS1 存在的单点故障和内存受限两个问题
HDFS 增加了 JournalNode 组件进行 FsImage 和 EditLog 的合并与备份,同时在 NameNode 里面新增了 ZKFC 实现了 NameNode 的故障自动切换
联邦方案的解决思路为:在同一个集群中添加多组 NameNode ,每组 NameNode 上存储部分数据的元数据信息,管理部分的 DataNode。
在 Hadoop 2.x 开始,将 MRv1 的资源管理调度和数据的处理计算分成了两部分:MapReduce 和 Yarn。
HDFS3 的架构与 HDFS2 的架构是一致的,只不过在 HDFS2 的基础上对 HA 方案进行了增强,支持多个 NameNode 作为 StandyNameNode,同时引入了纠删码技术用来节省数据的存储空间。
NameNode 作为集群的 Master 节点,需要管理集群中的所有 Slave 节点即 DataNode,负责 DataNode 的心跳状态检查、上下线和整个集群的所有文件操作(读、写、删除)以及所有的用户操作。所以对于 NameNode 来说,在保证自己高可用的情况下还需要可以支撑超大流量的并发操作。
注:运行在Hadoop集群的任务都会产生很多个请求,这些所有的请求都打到 NameNode 这儿 (更新元数据目录树)
HDFS 元数据的逻辑展现形式为树状结构,为了保证相应速度 NameNode 会将元数据全部加载至内存进行存放,所以所有的请求处理都是内存操作响应速度很快。
相关组件或服务:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。