著录项信息
专利名称 | 基于文件热度的动态副本管理方法 |
申请号 | CN201310048928.2 | 申请日期 | 2013-02-07 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2013-06-12 | 公开/公告号 | CN103150347A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/30 | IPC分类号 | G;0;6;F;1;7;/;3;0;;;H;0;4;L;2;9;/;0;8查看分类表>
|
申请人 | 浙江大学 | 申请人地址 | 浙江省杭州市浙大路38号浙大计算机学院曹光彪东楼505
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 浙江大学 | 当前权利人 | 浙江大学 |
发明人 | 尹建伟;蒋浩;邓水光;李莹;吴健;吴朝晖 |
代理机构 | 杭州裕阳专利事务所(普通合伙) | 代理人 | 应圣义 |
摘要
本发明涉及计算机应用领域,公开了一种基于文件热度的动态副本管理方法,包括主管理服务器、存储服务器集群,所述主管理服务器用于接受用户文件访问请求、更新被访问文件的访问记录,所述存储服务器集群包括多个用于储存文件的存储服务器,具体步骤包括:多频率文件热度计算机制、多队列文件热度更新机制、多频率副本执行机制。本发明的优点在于,有效解决了文件热度的统计周期与统计热度准确性之间的矛盾和用户的突发性访问问题,大幅度减少了系统开支,同时具有较高的可靠性。
1.一种基于文件热度的动态副本管理方法,其特征在于,包括主管理服务器(1)、存储服务器集群(2),所述主管理服务器(1)用于接受用户文件访问请求、更新被访问文件的访问记录,所述存储服务器集群(2)包括多个用于储存文件的存储服务器(3),具体步骤包括:
多频率文件热度计算机制:为每一个储存在所述存储服务器(3)上的文件建立热度,所述热度包括四元组(hI,n1,n2,n3)、状态二元组(N,S),其中,n1、n2、n3分别表示上一个统计周期T1、T2、T3中所述文件的被访问次数N,hI表示所述文件上一个统计周期T1的热度值,N表示所述文件的被访问次数,S表示所述文件的热度状态;所述主管理服务器(1)接收一个文件访问请求,将该文件的被访问次数N加1;每隔T1、T2和T3个统计周期,所述主管理服务器(1)更新所述四元组,其中hI的更新方法如下:计算
f1、f2、f3分别为统计周期T1、T2、T3内所述文件的访问频率,Δti表示当前时间与上一个统计周期T1的统计时刻的差值,Δt1表示当前时刻与零时的差值;分别计算用所述四元组的hI计算得
到h后,用所述h更新所述四元组的hI;
多队列文件热度更新机制:将所述存储服务器(3)中储存的文件Fi分为三个队列:低热度队列LQ、中热度队列MQ、高热度队列HQ,对不同的队列分别采用不同的更新周期进行更新,所述更新周期分别为TL、TM、TH,设定热度阈值Hl、Hh,所述文件Fi的热度值 小于Hl则该文件归入低热度队列LQ,所述文件Fi的热度值 大于Hl且小于Hh则该文件归入中热度队列MQ,所述文件Fi的热度值 大于Hh则该文件归入高热度队列HQ;
多频率副本执行机制:设定所述文件的最小副本数Nmin,计算所述文件的副本数量其中, 为所述
文件Fi的热度值,Ncur为所述文件当前的副本数量,Sptotal表示所述存储服务器(3)的总存储空间大小,Spused表示所述存储服务器(3)已经使用的存储空间;将负载较低的存储服务器(3)确认为副本放置服务器,将所述文件的副本放置在所述副本放置服务器中。
2.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,所述多队列文件热度更新机制还包括:所述热度状态S包括5个不同的状态等级,由低到高分别用状态标识{SL2}、{SL1}、{S0}、{SH1}、{SH2}表示;当所述主管理服务器(1)应用所述多队列文件热度更新机制时,如果 所述热度状态S的状态等级提升一级;如果 所述热
度状态S的状态等级降低一级;所述热度状态的状态等级改变时,如果改变前所述热度状态S为{SH2},则所述文件切换为中热度队列MQ或者高热度队列HQ,如果改变前所述热度状态S为{SL2},则所述文件切换为低热度队列LQ或者中热度队列MQ;所述热度状态S改变后的初始值为{S0}。
3.根据权利要求2所述基于文件热度的动态副本管理方法,其特征在于,所述低热度队列LQ中文件的热度状态S为{S0、SH1、SH2},高热度队列HQ中文件的S为{SL2、SL1、S0},中热度队列中MQ中文件的S为{SL2、SL1、S0、SH1、SH2}。
4.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,多频率副本执行机制还包括:计算所述存储服务器(3)的负载权值,所述存储服务器(3)的负载权值越大则该存储服务器(3)的负载越低。
5.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,多频率副本执行机制还包括:删除文件副本时,如果所述文件的副本分别储存在多个存储服务器(3)中,优先删除储存在负载权值较小的存储服务器(3)中的文件副本;增加文件副本时,所述主管理服务器(1)随机选定一个储存有文件副本的存储服务器(3),由该选定的存储服务器(3)向所述副本放置服务器发送所述文件副本。
6.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,所述统计周期T1、T2、T3为预设值,其中,T3>T2>T1。
7.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,所述更新周期TL、TM、TH为预设值,其中,TL>TM>TH。
8.根据权利要求1所述基于文件热度的动态副本管理方法,其特征在于,所述低热度队列LQ中文件的副本数为Nmin且保持不变。
基于文件热度的动态副本管理方法\n技术领域\n[0001] 本发明涉及计算机应用领域,特别涉及一种基于文件热度的动态副本管理方法。\n背景技术\n[0002] 传统的数据存储技术在可扩展性,高可用性等方面远远无法满足当今的数据存储需求,20世纪80年代,分布式文件存储的概念被提出。\n[0003] 分布式文件存储是指一些不一定直接连接在本地节点上的物理存储资源,通过计算机网络与节点相连,被存储系统统一管理,向用户提供统一的、对象化的访问接口,屏蔽对物理设备的直接操作和资源管理。分布式文件存储系统通过分布式的架构支持海量文件数据的存储。通过分布式文件存储,可以将各类存储设备结合使用,提供良好的可扩展的存储服务。相比传统的存储设备,其在扩展性,安全性,可靠性等方面,都有了很大的提升。\n[0004] 在分布式文件存储系统中,文件副本策略的提出,主要是为了解决两个关键的问题:1.保证存储系统的高可用性和高可靠性。2.提升系统的整体性能。\n[0005] 为了解决以上两个问题,系统需要进行两方面的决策:副本数量和副本存放位置。\n较高的副本数量不仅可以增加系统的可用性和可靠性,而且可以为高效的负载均衡提供有效的支持。但是会增加系统的负担,包括副本传输复制的代价,副本信息维护的代价以及占用系统的存储空间。较低的副本数量可能会降低系统可靠性,甚至有可能带来数据丢失,数据不可用的后果。合理的副本存放位置可以让负载请求均衡到较为空闲的服务器。不合理的副本存放位置可能引发大量的请求集中在某几个存储服务器,造成系统负载失衡。\n[0006] 近年来提出了很多的分布式架构下的文件存储副本管理方案。主要可以分为静态副本管理策略和动态副本管理策略。\n[0007] 静态副本管理策略是指文件在生成的时候就已经决定了文件的数量和文件的存放位置,当系统状态发生改变时,文件的数量和存放位置不会做相应的调整。\n[0008] 动态副本管理策略是指副本的策略会跟着系统的改变而做出相应的调整。这个调整可以是文件数量的调整,也可以是文件存储位置的调整。但是,如何进行动态调整,是增加还是减少副本数,副本的迁移策略以及如何在系统代价和系统性能、可靠性上得到均衡,另外,用户的访问行为有一定的突发性,即用户可以在短时间内大量的发起相似的请求,而且请求维持的时间非常短,在这种情况下,如果创建过多的副本,不但不能提升系统性能,而且还会增加系统的开销。这些都是副本策略的动态调整所面临的巨大挑战。\n发明内容\n[0009] 本发明针对现有技术中存在的副本数量和系统性能无法兼顾的缺点,提供了一种通过调整文件的热度来动态地管理文件副本的新型基于文件热度的动态副本管理方法。\n[0010] 为实现上述目的,本发明可采取下述技术方案:\n[0011] 基于文件热度的动态副本管理方法,包括主管理服务器、存储服务器集群,所述主管理服务器用于接受用户文件访问请求、更新被访问文件的访问记录,所述存储服务器集群包括多个用于储存文件的存储服务器,具体步骤包括:\n[0012] 多频率文件热度计算机制:为每一个储存在所述存储服务器上的文件建立热度,所述热度包括四元组(hI,n1,n2,n3)、状态二元组(N,S),其中,n1、n2、n3分别表示上一个统计周期T1、T2、T3中所述文件的被访问次数N,hI表示所述文件上一个统计周期T1的热度值,N表示所述文件的被访问次数,S表示所述文件的热度状态;所述主管理服务器接收一个文件访问请求,将该文件的被访问次数N加1;每隔T1、T2和T3个统计周期,所述主管理服务器更新所述四元组,其中hI的更新方法如下:计算 f1、f2、f3分别\n为统计周期T1、T2、T3内所述文件的访问频率,Δti表示当前时间与上一个统计周期T1的统计时刻的差值,Δt1表示当前时刻与零时的差值;分别计算\n[0013] \n[0014] ,用所述四元组的hI计算得到h后用所述h更新所述四元组的hI;\n[0015] 多队列文件热度更新机制:将所述存储服务器中储存的文件分为三个队列:低热度队列LQ、中热度队列MQ、高热度队列HQ,对不同的队列分别采用不同的更新周期进行更新,所述更新周期分别为TL、TM、TH,设定热度阈值Hl、Hh,所述文件Fi的热度值 小于Hl则该文件归入低热度队列LQ,所述文件Fi的热度值 大于Hl且小于Hh则该文件归入中热度队列MQ,所述文件Fi的热度值 大于Hh则该文件归入高热度队列HQ;\n[0016] 多频率副本执行机制:设定所述文件的最小副本数Nmin,计算所述文件的副本数量[0017] \n[0018] 其中, 为所述文件的热度值,Ncur为所述文件当前的副本数量,Sptotal表示所述存储服务器的总存储空间大小,Spused表示所述存储服务器已经使用的存储空间;将负载较低的存储服务器确认为副本放置服务器,将所述文件的副本放置在所述副本放置服务器中。\n[0019] 作为优选,所述多队列文件热度更新机制还包括:所述热度状态S包括5个不同的状态等级,由低到高分别用状态标识{SL2}、{SL1}、{S0}、{SH1}、{SH2}表示;当所述主管理服务器应用所述多队列文件热度更新机制时,如果 所述热度状态S的状态等级提升一级;如果 所述热度状态S的状态等级降低一级;所述热度状态的状态等级改变时,如果改变前所述热度状态S为{SH2},则所述文件切换为中热度队列MQ或者高热度队列HQ,如果改变前所述热度状态S为{SL2},则所述文件切换为低热度队列LQ或者中热度队列MQ;\n所述热度状态S改变后的初始值为{S0}。\n[0020] 作为优选,所述低热度队列LQ中文件的热度状态S为{S0、SH1、SH2},高热度队列HQ中文件的S为{SL2、SL1、S0},中热度队列中MQ中文件的S为{SL2、SL1、S0、SH1、SH2}。\n[0021] 作为优选,多频率副本执行机制还包括:计算所述存储服务器的负载权值,所述存储服务器的负载权值越大则该存储服务器的负载越低。\n[0022] 作为优选,多频率副本执行机制还包括:删除文件副本时,如果所述文件的副本分别储存在多个存储服务器中,优先删除储存在负载权值较小的存储服务器中的文件副本;\n增加文件副本时,所述主管理服务器随机选定一个储存有文件副本的存储服务器,由该选定的存储服务器向所述副本放置服务器发送所述文件副本。\n[0023] 作为优选,所述统计周期T1、T2、T3为预设值,其中,T3>T2>T1。\n[0024] 作为优选,所述更新周期TL、TM、TH为预设值,其中,TL>TM>TH。\n[0025] 作为优选,所述低热度队列LQ中文件的副本数为Nmin且保持不变。\n[0026] 本发明由于采用了以上技术方案,具有显著的技术效果:\n[0027] 本发明通过引入文件热度机制,有效解决了文件热度的统计周期与统计热度准确性之间的矛盾和用户的突发性访问问题。针对不同热度的文件执行不同的更新策略和副本执行策略,大幅度减少了系统开支,提升了系统性能。\n[0028] 进一步地,通过将文件划分为不同的热度队列,采用不同的更新周期,控制不同热度文件的更新频率,低热度的文件较少更新,高热度的文件则具有更高的更新频率,提高了系统性能。同时,限制低热度队列LQ和高热度队列HQ的热度状态S的状态等级,低热度队列LQ中文件的热度状态S为{S0、SH1、SH2},高热度队列HQ中文件的S为{SL2、SL1、S0},提高了切换文件队列的效率。\n[0029] 进一步地,通过计算存储服务器的负载权值来确定服务器的负载,可以保证文件副本储存在负载较低的服务器中,充分利用了系统闲置计算能力,降低了系统的整体反应时间。\n[0030] 在3个统计周期中,统计周期T1最短,统计频率最高,可以由此来计算并确定文件的热度值hI。\n[0031] 此外,将低热度队列LQ中文件的副本数量固定为Nmin,由于低热度队列LQ中文件的更新频率较低,因此,固定地确定文件副本的数量,可以减少计算文件副本数量所带来额外的计算量。同时,由于低热度队列LQ中文件更新频率较低,固定文件副本的数量对文件的安全性影响较小。\n附图说明\n[0032] 图1为本发明的分布式存储系统的拓扑结构示意图。\n[0033] 图2为本发明所述动态副本管理方法的流程示意图。\n[0034] 图3为文件热度队列的切换示意图。\n具体实施方式\n[0035] 下面结合实施例对本发明作进一步的详细描述。\n[0036] 实施例1\n[0037] 基于文件热度的动态副本管理方法,整个系统采用分布式架构,分布式文件存储系统如图1所示,包括主管理服务器1、存储服务器集群2,所述主管理服务器1用于接受用户文件访问请求、更新被访问文件的访问记录,所述存储服务器集群2包括多个用于储存文件的存储服务器3。分布式文件存储系统支持大规模的高并发访问与缓存服务器集群的动态扩展,主管理服务器1通过双机热备,可消除单点故障,主管理服务器1管理存储服务器集群2中的存储节点和存储系统中文件的元数据信息。存储服务器集群2实现动态加载和删除节点的功能,以提供动态可扩展的存储服务,其主要功能是负责数据文件的实际存储。客户端通过与主管理服务器1和存储服务器集群2的通信来实现对文件的操作[0038] 本发明的具体流程步骤如图2所示,包括:\n[0039] 多频率文件热度计算机制:\n[0040] 为每一个储存在所述存储服务器3上的文件建立热度,所述热度包括四元组(hI,n1,n2,n3)、状态二元组(N,S),其中,n1、n2、n3分别表示上一个统计周期T1、T2、T3中所述文件的被访问次数N,这里,统计周期T1、T2、T3为预设值,其中,T3>T2>T1,hI表示所述文件上一个统计周期T1的热度值,N表示所述文件的被访问次数,S表示所述文件的热度状态;所述主管理服务器1接收一个文件访问请求,将该文件的被访问次数N加1。\n[0041] 每隔T1、T2和T3个统计周期,所述主管理服务器1更新所述四元组,更新规则是根据不同的周期将N更新到n1,n2,n3中,其中hI的更新方法如下:计算\nf1、f2、f3分别为统计周期T1、T2、T3内所述文件的访问频率,Δti表示当前时间与上一个统计周期T1的统计时刻的差值,如T1=24小时,则最近统计时刻为零时,Δt1表示当前时刻与零时的差值。所以Δt1小于等于T1,Δt2小于等于T2,Δt3小于等于T3。N-ni则表示相应的上次统计时刻至当前时刻的文件的被访问次数。\n[0042] 分别计算\n[0043] \n[0044] 计算出当前时刻的N1,N2,N3值,即上一次统计至当前时刻的文件访问次数。计算出当前时刻距离最近一次T1统计时刻的差值与T1周期的比值μ。用所述h更新所述四元组的hI。\n[0045] 多队列文件热度更新机制:\n[0046] 在分布式文件存储系统中,所有的文件是一个集合,我们用F表示在此分布式文件存储系统中的所有文件Fi的集合。将所述存储服务器3中储存的文件Fi分为三个队列:\n低热度队列LQ、中热度队列MQ、高热度队列HQ,F=LQ ∪ MQ ∪ HQ。对不同的队列分别采用不同的更新周期进行更新,所述更新周期分别为TL、TM、TH,更新周期TL、TM、TH为预设值,其中,TL>TM>TH。需要说明的是,和统计周期不同,这里的更新周期不涉及文件热度值的计算,而是通过统计得到的热度值确定文件的归属队列。设定热度阈值Hl、Hh,所述文件Fi的热度值 小于Hl则该文件归入低热度队列LQ,所述文件Fi的热度值 大于Hl且小于Hh则该文件归入中热度队列MQ,所述文件Fi的热度值 大于Hh则该文件归入高热度队列HQ。\n[0047] 分布式文件存储系统中的文件在某一时刻只能属于一个队列,但是,文件可以在不同队列中进行切换,如图3所示,二元组(N,S)中的热度状态S是队列之间切换的主要标志。所述热度状态S包括5个不同的状态等级,由低到高分别用状态标识{SL2}、{SL1}、{S0}、{SH1}、{SH2}表示。其中,所述低热度队列LQ中文件的热度状态S为{S0、SH1、SH2},高热度队列HQ中文件的S为{SL2、SL1、S0},中热度队列中MQ中文件的S为{SL2、SL1、S0、SH1、SH2}。当所述主管理服务器1应用所述多队列文件热度更新机制时,如果 所述热度状态S的状态等级提升一级;如果 所述热度状态S的状态等级降低一级;所述热度状态的状态等级改变时,如果改变前所述热度状态S为{SH2},则所述文件切换为中热度队列MQ或者高热度队列HQ,如果改变前所述热度状态S为{SL2},则所述文件切换为低热度队列LQ或者中热度队列MQ;所述热度状态S改变后的初始值一律设定为{S0}。\n[0048] 多频率副本执行机制:\n[0049] 设定所述文件的最小副本数Nmin,低热度队列LQ中文件的副本数为Nmin且保持不变,计算所述文件的副本数量\n[0050] \n[0051] 其中, 为所述文件Fi的热度值,Ncur为所述文件当前的副本数量,Sptotal表示所述存储服务器3的总存储空间大小,Spused表示所述存储服务器3已经使用的存储空间,所以(Sptotal-Spused)/Sptotal表示系统当前剩余可用存储空间的百分比。Spused/Sptotal表示系统当前已使用的存储空间的百分比。\n[0052] 计算所述存储服务器3的负载权值,权值包括CPU、内存、磁盘读写能力、剩余存储空间、网络读写等因素,所述存储服务器3的负载权值越大则该存储服务器3的负载越低。\n将负载较低的存储服务器3确认为副本放置服务器,将所述文件的副本放置在所述副本放置服务器中。\n[0053] 删除文件副本时,如果所述文件的副本分别储存在多个存储服务器3中,优先删除储存在负载权值较小的存储服务器3中的文件副本。\n[0054] 增加文件副本时,所述主管理服务器1随机选定一个储存有文件副本的存储服务器3,由该选定的存储服务器3向所述副本放置服务器发送所述文件副本。\n[0055] 总之,以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所作的均等变化与修饰,皆应属本发明专利的涵盖范围。
法律信息
- 2018-05-11
专利实施许可合同备案的生效
IPC(主分类): G06F 17/30
合同备案号: 2018330000036
专利号: ZL 201310048928.2
申请日: 2013.02.07
让与人: 浙江大学
受让人: 新华三技术有限公司
发明名称: 基于文件热度的动态副本管理方法
申请公布日: 2013.06.12
授权公告日: 2015.10.21
许可种类: 普通许可
备案日期: 2018.04.17
- 2015-10-21
- 2013-07-31
实质审查的生效
IPC(主分类): G06F 17/30
专利申请号: 201310048928.2
申请日: 2013.02.07
- 2013-06-12
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2010-06-09
|
2008-10-14
| | |
2
| |
2011-05-11
|
2009-10-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |