当前位置:主页 > 科技论文 > 计算机论文 >

基于Pick-KX算法的分布式存储系统设计与实现

发布时间:2017-07-15 10:04

  本文关键词:基于Pick-KX算法的分布式存储系统设计与实现


  更多相关文章: 分布式存储 HBase Redis 文本差异检测


【摘要】:随着计算机网络技术的发展和普及,出现了越来越多的像”新浪”,“淘宝”等众多的大型门户网站和电子商务网站,这类网站都保存了大量的数据资源。由于受客户端浏览器的限制,无法从一台服务器上面下载所有的数据资源,因此即使服务器有很高的带宽,用户的访问速度还是会受到很大的影响,另外,由于数据保存在物理硬盘上面,访问数据会进行频繁的I/O操作,因此当并发用户数越来越多时,I/O操作就会成为整个系统的性能瓶颈。针对以上的问题,本文提出了一种基于Pick-KX算法的分布式存储解决方案,构建一个易于扩展,具有良好的性价比和容错能力的分布式存储系统,并且允许大量的客户端并发访问,而不会出现客户端的请求得不到响应的问题。本文的主要工作和贡献可以归纳为以下几点:1.研究了HBase数据库的工作原理、读写流程和容错机制,通过对HBase数据库的整体架构和工作机制进行分析,系统利用HBase数据库对文件进行分布式存储和数据备份。2.研究了Redis内存数据库的工作机制、存储数据结构、持久化机制和读写分离机制,通过对Redis源码的阅读和分析,系统采用Redis对数据读取进行优化,将用户频繁访问的数据存入Redis中,同时利用Redis的过期机制将长期未被访问的数据从Redis中移除,提高内存使用效率。3.研究了ZooKeeper的工作原理,在系统中利用ZooKeeper实现自动化配置管理和集群管理,减少开发和维护人员的工作量,同时让系统主节点实时得知工作节点上线和下线状态,调整任务分配策略,提高系统的可靠性。4.通过对Pick-KX算法的研究,系统利用Pick-KX算法实现各处理节点的负载均衡,避免某些处理节点长期空闲和忙死的情况,实验表明该算法能够有效地实现系统负载均衡。5.研究了文本差异检测算法,当用户对当前文件进行修改时,利用该算法将差异同步到服务器上面,避免用户的修改数据丢失,保证系统的完整性,另外,系统利用布隆过滤器避免相同的文件重复上传。
【关键词】:分布式存储 HBase Redis 文本差异检测
【学位授予单位】:电子科技大学
【学位级别】:硕士
【学位授予年份】:2014
【分类号】:TP333;TP311.13
【目录】:
  • 摘要5-6
  • ABSTRACT6-11
  • 第一章 绪论11-16
  • 1.1 课题背景11
  • 1.2 网络存储的发展现状11-13
  • 1.3 课题的研究目的和特色13-14
  • 1.3.1 课题的研究目的13
  • 1.3.2 论文特色13-14
  • 1.4 论文结构14-15
  • 1.5 本课题的来源15
  • 1.6 本章小结15-16
  • 第二章 系统所用关键技术研究16-28
  • 2.1 HBase数据库研究16-20
  • 2.1.1 HBase基本概念16
  • 2.1.2 HBase的数据模型16-18
  • 2.1.2.1 行健17
  • 2.1.2.2 列族17
  • 2.1.2.3 时间戳17-18
  • 2.1.3 HBase物理存储18-19
  • 2.1.4 HBase的系统架构19-20
  • 2.2 Redis缓存技术20-22
  • 2.2.1 Redis的基本概念20
  • 2.2.2 Redis的数据结构20-21
  • 2.2.3 Redis的持久化和同步机制21-22
  • 2.3 ZooKeeper分布式服务框架22-24
  • 2.3.1 ZooKeeper分布式应用配置项管理原理介绍22-23
  • 2.3.2 ZooKeeper集群管理原理介绍23-24
  • 2.4 TCMalloc内存分配机制24-27
  • 2.4.1 TCMalloc概述24-25
  • 2.4.2 小对象内存分配过程25-26
  • 2.4.3 大对象内存分配过程26-27
  • 2.5 本章小结27-28
  • 第三章 分布式存储系统设计与实现28-60
  • 3.1 系统设计目标28
  • 3.2 系统功能需求分析28-29
  • 3.3 系统架构设计29-31
  • 3.4 分布式存储系统管理模块设计31-34
  • 3.4.1 系统重要的配置项介绍31
  • 3.4.2 系统配置管理31-33
  • 3.4.3 系统集群管理33-34
  • 3.5 存储系统模块设计与实现34-59
  • 3.5.1 服务器总体设计34-39
  • 3.5.1.1 服务器工作流程34-35
  • 3.5.1.2 服务器重要的数据结构35-39
  • 3.5.2 服务器心跳机制实现39-40
  • 3.5.3 文件管理模块的设计40-42
  • 3.5.4 注册登录模块的设计与实现42-44
  • 3.5.4.1 用户表的设计43
  • 3.5.4.2 用户注册模块实现过程43-44
  • 3.5.4.3 用户登录模块实现过程44
  • 3.5.5 文件处理模块的实现44-48
  • 3.5.5.1 文件并行上传实现44-47
  • 3.5.5.2 文件并行下载实现47-48
  • 3.5.5.3 文件删除实现48
  • 3.5.6 文件同步设计与实现48-53
  • 3.5.6.1 文件同步需求分析48-49
  • 3.5.6.2 文本差异检测算法49-51
  • 3.5.6.3 系统文件差异检测实现51-52
  • 3.5.6.4 系统文件同步实现52-53
  • 3.5.6.5 客户端文件更新实现53
  • 3.5.7 HBase存储模块设计与实现53-56
  • 3.5.7.1 行健的设计53-54
  • 3.5.7.2 数据存储表的设计54
  • 3.5.7.3 HBaseService服务实现54-56
  • 3.5.8 数据缓存策略的设计56-58
  • 3.5.9 系统日志的设计58-59
  • 3.6 本章小结59-60
  • 第四章 Pick-KX负载均衡算法研究和改进60-67
  • 4.1 Pick-KX负载均衡算法基本原理60-61
  • 4.2 改进的Pick-KX负载均衡算法61-66
  • 4.2.1 算法的设计思想61-62
  • 4.2.2 算法相关参数的计算方法62-63
  • 4.2.3 系统负载均衡实现63-64
  • 4.2.4 算法性能测试64-66
  • 4.3 本章小结66-67
  • 第五章 系统测试与分析67-74
  • 5.1 测试软硬件环境67-68
  • 5.2 系统功能测试68-73
  • 5.2.1 用户注册功能测试68-69
  • 5.2.2 用户登录功能测试69
  • 5.2.3 文件并行上传功能测试69-70
  • 5.2.4 文件并行下载功能测试70-71
  • 5.2.5 文件删除功能测试71-72
  • 5.2.6 文件同步功能测试72-73
  • 5.3 系统性能测试73
  • 5.4 本章小结73-74
  • 第六章 全文总结和展望74-76
  • 6.1 全文总结74-75
  • 6.2 论文展望75-76
  • 致谢76-77
  • 参考文献77-80
  • 攻读硕士学位期间取得的成果80-81

【参考文献】

中国期刊全文数据库 前1条

1 薛军,李增智,王云岚;负载均衡技术的发展[J];小型微型计算机系统;2003年12期



本文编号:543359

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/543359.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户f863c***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com