免费论文查重: 大雅 万方 维普 turnitin paperpass

研讨单点基于Paxos算法HDFS高可用性与设计如何

最后更新时间:2024-04-01 作者:用户投稿原创标记本站原创 点赞:27295 浏览:122425
论文导读:
摘要:Hadoop框架已经成为目前进行大数据量处理的首选框架,甚至被誉为“连接21世界海量数据处理的金钥匙”。HDFS是Hadoop的基础模块,为用户提供了一个分布式的文件系统。然而HDFS的中心服务器Namenode却是单点。由于Namenode服务器的单点失效而造成的整个文件系统的崩溃,已经成为困扰HDFS的棘手不足。针对HDFS中有着的单点故障,目前业界也有着多种HDFS的高可用性案例。它们的核心思想都是采取备机的方式来预防中心服务器的失效。这样的案例虽然可以在HDFS发生单点失效时,用备机为客户提供读服务。然而往往需要人工的干预,及有着数据丢失的可能。由此,需要一个全新的思路来解决HDFS中的单点故障不足。本论文设计并实现了基于双中心服务器的HDFS的架构。该HDFS的高可用性案例不但可以有效的解决有着的单点不足,同时也弥补了采取备机思路进行高可用案例的不足。具体而言,本论文主要的工作如下:(1)探讨当前流行的HDFS基于备机方式的高可用性案例,这些案例也分为热备和冷备,指出了它们共有的不足;探讨HDFS的架构,结合中心服务器在HDFS中的地位与作用,提出了基于双中心服务器的HDFS架构;(2)探讨分布式一致性算法Paxos,设计出了作用在三机环境下的三机Paxos算法;并且依据该算法设计了数据同步框架Quorum,规范了该框架的读写操作的数据流程;同时指出该框架即使在节点失效的情况下,依然可以对外提供正确的读写访问;(3)探讨HDFS的源码实现,深度剖析了HDFS中的代码结构;对HDFS的代码进行修改,让它符合Quorum框架的规范;实现了双中心服务器,将Quorum框架对外提供的保证也移植到HDFS之上;(4)通过对基于双中心服务器的HDFS的测试,验证了该可用性案例的可行性和有效性。本论文为HDFS的高可用性提供了新的思路和策略参考,同时本论文设计的三机Paxos算法及数据同步框架Quorum也兼有论述和现实作用,具有广泛的的运用价值。关键词:HDFS论文单点故障论文高可用性论文Paxos论文数据同步论文双中心服务器论文
本论文由www.7ctime.com,需要论文可以联系人员哦。摘要5-6
Abstract6-10
第一章 绪论10-16

1.1 探讨背景10-12

1.2 主要探讨内容和探讨作用12-15

1.2.1 课题探讨内容及革新性12-13

1.2.2 国内外近况13-14

1.2.3 课题探讨作用14-15

1.3 论文结构15

1.4 本章小结15-16

第二章 关键技术与算法的设计16-26

2.1 HDFS HA 案例16-19

2.

1.1 AvatarNode 案例[8]16-17

2.

1.2 DRBD 案例17-18

2.

1.3 上面陈述的案例的不足18-19

2.2 双中心服务器架构19-21

2.1 Namenode 服务器19

2.2 双中心服务器架构19-21

2.3 与双机热备的比较21

2.3 Paxos 算法21-24

2.3.1 分布式一致性21-22

2.3.2 经典 Paxos 算法22-24

2.3.3 三机 Paxos 算法设计24

2.4 本章小结24-26

第三章 数据同步框架 Quorum 的设计26-47

3.1 设计目标26

3.2 模块设计26-28

3.3 数据流程设计28-39

3.1 写操作28-31

3.2 读操作31-34

3.3 同步操作34-37

3.4 版本冲突场景浅析37-39

3.5 效率优化39

3.4 节点失效39-45

3.4.1 数据节点失效40-41

3.4.2 仲裁节点失效41

3.4.3 节点失效时的受限读写41-42

3.4.4 失效时的同步操作42-44

3.4.5 脏数据出现理由浅析44-45

3.5 Quorum 同 ZooKeeper 的比较45-46

3.6 本章小结46-47

第四章 HDFS 源码剖析与改造47-66

4.1 改造点浅析及改造目标47-50

4.

1.1 改造点浅析47-49

4.

1.2 改造目标49-50

4.2 双中心服务器的实现50-61
4.

2.1 Namenode 内存数据50-53

4.

2.2 基础类 QuorumImpl53-60

4.

2.3 启动历程60-61

4.3 客户端通信的实现61-65
4.

3.1 DatanodeProtocol62-63

4.

3.2 CpentProtocol63-65

4.4 本章小结65-66
第五章 测试及其结果浅析66-74

5.1 测试目的66

5.2 测试环境66-67

5.3 测试流程67-72

5.4 实验浅析72-73

5.5 本章小结73-74

第六章 结论及进一步工作74-76
参考文献76-78
攻读硕士学位期间取得的探讨成果78-79
致谢79