一种分布式环境中的分级存储系统的制作方法

文档序号:7765000阅读:234来源:国知局
专利名称:一种分布式环境中的分级存储系统的制作方法
技术领域
本发明涉及一种网络存储技术,更具体的说,涉及一种分布式环境中的分级存储 系统。
背景技术
随着互联网以及相关的各种网络应用飞速发展,网络上的信息资源呈爆炸性增长 趋势,通过网络进行传输的信息量不断膨胀。信息技术的飞速发展,推动了信息存储的巨大 需求。无疑,这造成了对于存储系统的容量需求的大幅度增长。在传统的数据存储方式下,用户通过客户机的本地磁盘系统存储数据,或通过局 域网服务器在与服务器相连的中心存储系统中存储数据。在这种方式下,随着数据存储需 求的不断增大,对所述本地磁盘系统或所述中心存储系统的容量要求也越来越大,这将导 致本地磁盘系统或所述中心存储系统的硬件不断升级,同时也为所述数据存储系统的维护 工作带来繁重的负担。此外,为了实现对各式各样的信息进行保护、共享、管理、备份和恢复工作,企业面 对各式各样的软件和工具去完成这些繁琐而复杂的任务。人力、物力和财力开销巨大,企业 所受的压力越来越大,信息管理成为信息技术应用的一个巨大的挑战,成为企业亟待解决 的问题。随着信息价值所发生的变化,有必要将信息转移到不同的联机存储介质上,以最 低的成本提供适当级别的保护、复制和恢复。对许多企业来讲,它们面对的信息管理挑战不 仅仅是由于信息增长过快,而且信息比以前更具有价值,信息的价值随着时间在逐步变化。 这就对企业提出了诸多要求可扩展的管理资源;以最优的费用获得对关键信息资产的访 问和保护,按照信息的价值实施不同的信息管理策略。

发明内容
本发明的目的在于提供一种分布式环境中的分级存储系统,该系统提高了客户端 代理的访问性能,以及存储资源的整体性能。本发明提供的一种分布式环境中的分级存储系统,其特征在于,该系统包括至少 一个策略服务器、至少两种不同性能的网络存储单元以及至少两个客户端代理;所述网络存储单元为分级存储系统提供存储设备;所述客户端代理为用户提供访问分级存储系统的接口 ;所述策略服务器将担当客户端代理与网络存储单元之间的桥梁,一方面,管理网 络存储单元和客户端代理;另一方面,选择客户端代理进行数据迁移操作,将数据按照热度 的不同,分布在不同性能的网络存储单元上。本发明方法可以解决现有网络存储中的诸多问题,如硬件升级带来的资源管理 相对复杂;磁盘中存储的大部分数据访问率并不高,仍占用磁盘空间,导致存储性能下降。 通过分级管理,可以在性能和成本之间做出最好的平衡,此外,通过设定优化的策略规则,能使重要数据和常用数据在最短时间内访问到,使极少使用的数据备份在成本较低的存储 器中。因此,提高了客户端代理的访问性能,以及存储资源的整体性能。


图1为本发明系统的结构示意图;图2为本发明系统的工作流程图;图3为策略服务器工作流程图。
具体实施例方式以下将通过具体实施例对本发明的目的及特征进行详细说明,这些实施例是说明 性的,不具有限制性。本实例所基于的系统结构包括至少一个策略服务器、至少两种不同性能的网络存 储单元以及至少两个客户端代理(性能指由于网络存储单元的硬件差别,具有不同的读写 速度等)。所述策略服务器将担当客户端代理与网络存储单元之间的桥梁,一方面,管理网 络存储单元和客户端代理;另一方面,使用所述的策略,使满足策略规则的客户端代理进行 数据迁移操作,将数据按照热度(热度是指对负载信息进行分析,经过适当计算,得到的表 征访问负载信息的一个综合值)的不同,分布在不同性能的网络存储单元上,以提高客户 端代理的访问性能和网络存储单元的性能。当有多个网络存储单元时,所述的网络存储单 元可以为物理上分离的网络存储单元,并且通常所述的网络存储单元可以是使用不同的磁 盘技术,由不同的服务提供商提供。网络存储单元为分级存储系统提供存储设备。客户端 代理为用户提供访问分级存储系统的接口。策略服务器包括登记模块、负载接收模块、负载分析模块、心跳检测模块和策略服 务模块。登记模块用于登记客户端代理和网络存储单元的注册工作。网络存储单元向策略 服务器申请注册后,登记模块将网络存储单元的注册信息进行登记,将登记过的网络存储 单元加入存储池。客户端代理向策略服务器注册后,策略服务器登记客户端代理的注册信 息,并根据客户端代理的注册信息,为客户端代理分配合适性能和容量的存储设备,并将分 配的存储设备的相关信息发送给客户端代理。网络存储单元的注册信息包括设备名称、设备IP地址、设备容量、设备存储性 能、设备可用性。客户端代理的注册信息包括客户端代理IP地址、预计容量、预计设备性 能。负载接收模块是策略服务器与客户端代理之间的接口,接收客户端代理的负载信 息。客户端代理的负载信息包括随机访问/顺序访问,读/写,数据传输率、数据传输量。负载分析模块用于周期性地对负载接收模块收集的客户端代理的负载信息进行 整理,为策略服务模块制定迁移策略提供客户端代理的负载信息。执行过程为对于负载接收模块接收到的每条客户端代理的负载信息按以下公式计算客户端 代理热度Ti (n) = n*Ti(n-l) + (l-n)*(il*a i(n)+i2*3 i (n)+i3* γ i (n)+i4* δ i (η))(1)其中,i表示客户端代理的序号,Ti (η)为客户端代理i在第η次分析过程中的热 度,Ti (η-1)为第η-1次分析时的热度,η为热度历史参数,il, 2, 3, 4为热度参数,α i 为客户端代理i的随机访问/顺序访问的比率,β i为客户端代理i的读/写的比率,Yi 为客户端代理i的数据传输率,δ i为客户端代理i的数据传输量。其中Ti (0) = 0,引入历 史参数n,是为了对客户端代理的负载信息的分析,采用统计的方式进行,这样,可以有效 判断某个时间周期内的热数据,而不是某一次或某几次的热数据,可以提高系统的稳定性。 公式(1)中,l+i2+i3+i4 = 1,0 < η < 1,0 < il < 1,0 < i2 < 1,0 < i3 < 1,0 < i4 <1。n较大时,则对历史数据依赖性较大。n,il,i2,i3,i4的取值可以根据具体情况进 行预先设定。实例中,η = 0.8, il = 0. 4, 2 = 0. 1, 3 = 0. 1,i4 = 0. 4。Η(η) = μ* H (η + ∑n i1Ti(n) (2)公式⑵为高阈值H(n)的计算公式,其中,μ为公式(2)中的历史参数,τ为高 阈值参数,H(O) = 0。公式(2)中,0 < μ < 1,0 < τ < 1,μ较大时,则对历史数据依赖 性较大。通常,0< τ < 0.5,0. 5 < μ <1。其中,μ,τ的值可以根据具体情况进行预 先设定。实例中,μ =0.8,τ =0.3
η
L(n) = μ* L(n-I) +∑ Ti(n) (3)公式(3)为低阈值L(n)的计算公式,其中,μ为公式(3)中的历史参数,φ为低阈 值参数,L(O) = 0。公式(3)中,0 < μ < 1,0 < τ < 1,μ较大时,则对历史数据依赖性 较大。通常,0< τ < 0.5,0. 5 < μ <1。其中,μ,τ的值可以根据具体情况进行预先 设定。实例中,μ =0.8,τ =0.3。在第一次对客户端代理负载信息进行分析时,将所有客户按照热度值进行降序 排列。考虑到分布式环境中客户端代理比较多时,对所有客户端代理的热度进行排队,会 成为一件比较耗时且耗策略服务器性能的事,所以,为了减小工作量,除了第一次分析外, 只对Ti(n) >H(n)的客户端代理进行向上迁移的队列排序,构成向上迁移队列;对Ti (n) < L(n)的客户端代理进行向下迁移的队列排序,构成向下迁移队列。心跳检测模块是策略服务器与网络存储单元之间的接口,周期性的检测所有网络 存储单元的心跳信息,以判断网络存储单元的当前状态,如果是可用的,将网络存储单元的 心跳信息进行更新,如果是不可用的,将该网络存储单元在策略服务器中删除。为策略服务 模块提供网络存单元的心跳信息。策略服务模块是策略服务器的核心模块,根据负载分析模块和心跳检测模块的数 据结果,以及策略规则,制定分级策略,确定要执行迁移操作的客户端代理,向客户端代理 发送迁移命令。(1)第一次执行时,遍历负载分析模块整理过的客户端代理信息链表,对于Ti (n) >H(n)的客户端代理启动向上迁移,对于Ti (n) <L(n)的客户端代理启动向下迁移。以后,对向上迁移队列中的客户端代理启动向上迁移的管理操作,对向下迁移队 列中的客户端代理启动向下迁移的管理操作。(2)周期性监测网络存储资源的心跳,如果有新插入的网络存储单元,并且性能比当前最热数据所在的网络存储单元的性能高,则将当前的热数据向上迁移到新插入的网络 存储单元,以保证在线数据得到最佳的访问性能。向拥有热数据的客户端代理启动向上迁 移。同时,客户端代理包括初始化模块,访问模块,负载收集模块和迁移模块。初始化模块向策略服务器进行注册,在接收到策略服务器为客户端代理分配的存 储设备信息后,完成客户端代理的其它初始化工作。访问模块用于初始化工作完成后,提供用户访问分级存储系统的接口。负载收集模块针对用户的访问特征,来收集一段时间内(根据分布式系统的规 模,确定时间长度。实例中将时间段设置为24h)的客户端负载信息。客户端代理的负载信 息包括随机访问/顺序访问,读/写,数据传输率、数据传输量。迁移模块用于在接收到策略服务器的迁移命令后,执行迁移命令。网络存储单元包括初始化模块和心跳特征模块。初始化模块用于向策略服务器注册,并完成网络存储单元的初始化工作。心跳特征模块用于周期性检查本网络存储单元的状态,以判断该网络存储单元是 否可用。如果是活动的,即为可用,否则,为不可用。下面说明本发明系统的工作过程(1)网络存储单元向策略服务器注册,同时,网络存储单元周期性的向策略服务器 发送心跳信息。同时,网络存储资源可以在线插入,而不影响客户端代理的正常访问。(2)策略服务器登记已注册的网络存储单元,将其加入存储池(存储池由所有已 注册登记的网络存储单元形成)。同时,策略服务器周期性的检测网络存储资源的心跳信 息,判断网络存储单元是否可用,另外,将可不用的网络存储单元从存储池中进行删除。(3)客户端代理向策略服务器注册。(4)策略服务器登记已注册的客户端代理,根据客户端代理注册信息中的预计容 量和预计设备性能,将存储池中满足条件的网络存储单元分配给客户端代理。如果,当前存 储池中没有预计设备性能的网络存储单元,或是满足预计设备性能的网络存储单元的容量 总和小于预计容量,则策略服务器向客户端代理发送资源不可用的消息。(5)客户端代理利用分配的网络存储单元进行数据的读写访问。负载收集模块对 负载信息进行收集,同时周期性的将收集到的负载信息发送给策略服务器。(6)策略服务器周期性的对客户端代理负载信息进行分析,统计客户端代理的热 度;策略服务器在第一次对客户端代理负载信息进行分析时,将所有客户按照热度值 进行降序排列,遍历链表,对于Ti (η) >=Η(η)的客户端代理启动向上迁移,对于Ti (η) <=L(n)的客户端代理启动向下迁移。同时,策略服务器周期性监测网络存储资源的心 跳,如果有新插入的网络存储单元,并且性能比当前最热数据所在的网络存储单元的性能 高,则将当前的最热数据向上迁移到新插入的网络存储单元,以保证在线数据得到最佳的 访问性能。(7)客户端代理在接收到策略服务器的迁移命令后,迁移模块执行数据迁移操作。因此,从上述的实施例可以看出,通过本发明的分布式存储环境,可以解决现有存 储领域中的一些问题,如,硬件升级带来的资源管理相对复杂;磁盘中存储的大部分数据访问率并不高,仍占用磁盘空间,导致存储性能下降等问题,并且通过本发明,可以使分布式 环境中的资源管理变的更加简单,同时,使热数据分布在高性能的网络存储单元中,提高了 客户端代理的访问性能。 以上所述为本发明的较佳实施例而已,但本发明不应该局限于该实施例所公开的 内容。所以凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
权利要求
一种分布式环境中的分级存储系统,其特征在于,该系统包括至少一个策略服务器、至少两种不同性能的网络存储单元以及至少两个客户端代理;所述网络存储单元为分级存储系统提供存储设备;所述客户端代理为用户提供访问分级存储系统的接口;所述策略服务器将担当客户端代理与网络存储单元之间的桥梁,一方面,管理网络存储单元和客户端代理;另一方面,选择客户端代理进行数据迁移操作,将数据按照热度的不同,分布在不同性能的网络存储单元上。
2.根据权利要求1所述的分布式环境中的分级存储系统,其特征在于,所述客户端代 理包括初始化模块,访问模块,负载收集模块和迁移模块;初始化模块向策略服务器进行注册,在接收到策略服务器为客户端代理分配的存储设 备信息后,完成客户端代理的其它初始化工作;访问模块用于初始化工作完成后,提供用户访问分级存储系统的接口 ; 负载收集模块针对用户的访问特征,收集一段时间内的客户端负载信息,客户端代理 的负载信息包括随机访问/顺序访问,读/写,数据传输率、数据传输量; 迁移模块用于在接收到策略服务器的迁移命令后,执行迁移命令。
3.根据权利要求1所述的分布式环境中的分级存储系统,其特征在于,所述网络存储 单元包括初始化模块和心跳特征模块;初始化模块用于向策略服务器注册,并完成网络存储单元的初始化工作; 心跳特征模块用于周期性检查本网络存储单元的状态,以判断该网络存储单元是否可用。
4.根据权利要求1、2或3所述的分布式环境中的分级存储系统,其特征在于,所述策略服务器包括登记模块、负载接收模块、负载分析模块、心跳检测模块和策略服务模块;登记模块用于登记客户端代理和网络存储单元的注册工作,将登记过的网络存储单元加入存储池,为客户端代理分配合适性能和容量的存储设备,并将分配的存储设备的相关 信息发送给客户端代理;负载接收模块是策略服务器与客户端代理之间的接口,它接收客户端代理的负载信息,并提供给负载分析模块,客户端代理的负载信息包括随机访问/顺序访问,读/写,数 据传输率、数据传输量;负载分析模块用于周期性地对负载接收模块收集的客户端代理的负载信息进行整理,为策略服务模块制定迁移策略提供客户端代理的负载信息;心跳检测模块是策略服务器与网络存储单元之间的接口,周期性的检测所有网络存储单元的心跳信息,以判断网络存储单元的当前状态,并为策略服务模块提供网络存单元的 心跳信息;策略服务模块根据负载分析模块和心跳检测模块的数据结果,以及策略规则,制定分 级策略,确定要执行迁移操作的客户端代理,向客户端代理发送迁移命令;策略服务模块还 周期性监测网络存储资源的心跳,如果有新插入的网络存储单元,并且性能比当前最热数 据所在的网络存储单元的性能高,则将当前的热数据向上迁移到新插入的网络存储单元, 以保证在线数据得到最佳的访问性能;向拥有热数据的客户端代理启动向上迁移。
5.根据权利要求4所述的分布式环境中的分级存储系统,其特征在于,负载分析模块按在第一次对客户端代理负载信息进行分析时,将所有客户按照热度Ti (η)值进行降序排 列;之后只对Ti (η) >Η(η)的客户端代理进行向上迁移的队列排序,构成向上迁移队列; 对Ti (n) <L(n)的客户端代理进行向下迁移的队列排序,构成向下迁移队列;
全文摘要
本发明公开了一种分布式环境中的分级存储系统,包括至少一个策略服务器、至少两种不同性能的网络存储单元以及至少两个客户端代理;客户端代理为用户提供访问分级存储系统的接口;策略服务器将担当客户端代理与网络存储单元之间的桥梁,管理网络存储单元和客户端代理,并选择客户端代理进行数据迁移操作,将数据按照热度的不同,分布在不同性能的网络存储单元上。本发明可以解决现有网络存储中的诸多问题。通过分级管理,可以在性能和成本之间做出最好的平衡,此外,通过设定优化的策略规则,能使重要数据和常用数据在最短时间内访问到,使极少使用的数据备份在成本较低的存储器中。因此,提高了客户端代理的访问性能,以及存储资源的整体性能。
文档编号H04L29/08GK101989999SQ201010540729
公开日2011年3月23日 申请日期2010年11月12日 优先权日2010年11月12日
发明者伍开文, 曹强, 谢长生, 韩红根, 黄建忠 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1