论文部分内容阅读
分布式文件系统从最初的网络文件系统发展至今,逐渐形成现阶段的云存储。它是在云计算(Cloud Computing)概念上延伸和发展出来的一个新概念。在大集群、动态的分布式文件系统中,随着文件数量、文件访问次数的增加,中心节点将成为整个系统的性能瓶颈。因此,减少中心节点在分布式文件系统中的依赖性是很重要的问题。此外,还有一种基于分布式哈希表(DHT)的分布式文件系统,其中不存在中心节点,并且文件根据DHT算法,均匀分布于系统中。但是,伴随着文件修改、热点出现,系统将无法保持负载均衡状态。负载均衡在分布式文件系统中是很重要的问题。系统负载状态影响着集群存储利用率和网络吞吐量。同时,已均衡的集群能够有效避免热点的出现,提高系统响应速度。因此,本论文将对基于DHT的分布式文件系统负载再均衡问题进行深入的研究。通过对现有负载再均衡算法研究与分析,其执行过程中,由于负载信息获取的局部性,导致在数据迁移过程中出现抖动的现象,并且数据迁移过程中会导致额外高负载节点的出现,从而影响负载均衡效率。因此,本论文通过扩大随机样本节点的个数,使计算出的估计值更加贴近实际值;在选择后继节点的过程中,采取双向延伸的方式,找出满足条件的后继节点,以此减少多余的数据迁移操作。该算法有效地解决了抖动现象的发生,避免了额外高负载节点的出现。同时,副本管理和节点选择也是分布式文件系统中的重要问题。文件系统中的副本分发策略与DHT算法中的文件分发策略不兼容。本论文通过采用软链接方式将副本存放位置重定向,保证两种策略的兼容。结合负载再均衡算法提出节点选择策略,避免数据迁移过程中,多个低负载节点同时选择同一个高负载节点的冲突问题。在负载均衡算法的应用中,使用Space-filling Curve将节点物理位置与逻辑位置对应起来,同时利用节点容量使用率将异构节点集群转换为同构集群。综上所述,本论文提出一种ILR(Improved Load Rebalancing)算法。采用Matlab数学软件和Chord仿真程序对分布式文件系统的负载均衡算法进行实验仿真。仿真实验生成数据后,将本论文提出的ILR算法与现有的负载在均衡算法从累积分布函数、节点负载状态、数据迁移次数和负载信息交换次数四个方面进行比较与分析。结果验证了ILR算法的有效性。