一种基于海量数据的数据分配方法、装置及系统的制作方法

文档序号:6492493阅读:132来源:国知局
一种基于海量数据的数据分配方法、装置及系统的制作方法
【专利摘要】本发明公开了一种基于海量数据的数据分配方法、装置及系统,该方法包括:确定系统中各在线存储设备的设备性能优先级及各待存储数据的数据优先级;针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,所述优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。通过该方案,能够自动根据各数据及各存储设备的优先级,将各数据存储到与其优先级相匹配的存储设备中,解决了现有技术中无法根据数据的重要性及存储设备的当前存储情况对数据进行自动划分和存储、导致设备利用率较低及存储效果并不佳的问题。
【专利说明】一种基于海量数据的数据分配方法、装置及系统
【技术领域】
[0001]本发明涉及数据处理【技术领域】,尤其涉及一种基于海量数据的数据分配方法、装置及系统。
【背景技术】
[0002]目前,业界在进行海量数据的存储时,常采用根据数据业务情况事先规划存储的方式,即为分属于不同业务的数据事先分配不同的存储设备,数据生成后直接按照事先分配的存储设备进行存储。
[0003]具体地,在采用上述方式进行海量数据的存储时,一般需要单独部署数据主控服务器来进行(所述数据主控服务器中预先存储了事先规划的数据存储规则),当系统中的数据增加到一定规模,导致系统中某一个或多个存储设备中存储了大量的数据从而导致相应的存储设备性能降低、无法满足数据存储需求时,需要由系统规划人员根据当前业务数据及存储设备的实际情况以人工方式对各存储设备的参数、性能、容量等进行调整或者由系统规划人员根据自身经验以及系统当前实际情况,重新为该系统制定相应的数据存储规则。
[0004]也就是说,在采用上述方式进行海量数据的存储时,只能够按照事先规划的数据存储规则对各数据进行存储,无法根据数据的重要性以及存储设备的当前存储情况对各数据进行自动划分和存储,无法进行存储设备的动态调整,从而导致存储设备的设备利用率较低、存储效果并不佳。

【发明内容】

[0005]本发明实施例提供了一种基于海量数据的数据分配方法、装置及系统,用以解决现有技术中存在的无法根据数据的重要性以及存储设备的当前存储情况对数据进行自动划分和存储,导致存储设备的设备利用率较低、存储效果并不佳的问题。
[0006]一种基于海量数据的数据分配方法,所述方法包括:
[0007]确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级;
[0008]针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中;
[0009]其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0010]一种基于海量数据的数据分配装置,所述装置包括:
[0011]设备管理模块,用于确定系统中各在线存储设备的设备性能优先级;
[0012]数据管理模块,用于确定系统中各待存储数据的数据优先级;
[0013]数据分配模块,用于针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0014]一种基于海量数据的数据分配系统,所述系统包括至少一个数据分配装置以及至少一个存储设备:
[0015]所述数据分配装置,用于确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级,并针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0016]本发明有益效果如下:
[0017]本发明实施例提供了一种基于海量数据的数据分配方法、装置及系统,所述方法包括:确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级,针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。通过本发明所述技术方案,能够自动根据各数据的数据优先级以及各存储设备的设备性能优先级,将各数据存储到具备与其优先级相匹配的优先级的存储设备中,从而解决了现有技术中存在的无法根据数据的重要性以及存储设备的当前存储情况对数据进行自动划分和存储、导致存储设备的设备利用率较低以及存储效果并不佳的问题。
【专利附图】

【附图说明】
[0018]图1所示为本发明实施例一中所述基于海量数据的数据分配方法的流程示意图;
[0019]图2所示为本发明实施例二中所述基于海量数据的数据分配装置的结构示意图;
[0020]图3所示为本发明实施例三中所述基于海量数据的数据分配系统的结构示意图。
【具体实施方式】
[0021]本发明实施例提供了一种基于海量数据的数据分配方法、装置及系统,所述方法包括:确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级,针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。通过本发明所述技术方案,能够自动根据各待存储数据的数据优先级以及各在线存储设备的设备性能优先级,将各待存储数据存储到具备与其优先级相匹配的设备性能优先级的在线存储设备中,从而解决了现有技术中存在的无法根据数据的重要性以及存储设备的当前存储情况对数据进行自动划分和存储、导致存储设备的设备利用率较低以及存储效果并不佳的问题。
[0022]下面结合说明书附图对本发明实施例作进一步说明,但本发明不局限于下面的实施例。[0023]实施例一:
[0024]如图1所示,其为本发明实施例一中所述基于海量数据的数据分配方法的流程示意图,所述方法包括以下步骤:
[0025]步骤101:确定系统中各在线存储设备的设备性能优先级。
[0026]具体地,本发明实施例一中各步骤的执行主体可以为具有数据分配能力的服务器等数据分配装置,本发明实施例对此不作任何限定;另外,本发明实施例中所述存储设备可以包括文件服务器存储设备、数据库服务器存储设备或者内存数据库存储设备等,本发明实施例对此也不作任何限定。
[0027]具体地,所述数据分配装置可以对系统中的各存储设备进行集群管理,确定系统中的各在线存储设备,并确定系统中各在线存储设备的设备性能优先级。
[0028]具体地,所述数据分配装置可以通过配置存储设备群集配置数据库的方式来对系统中的各存储设备进行集群管理,例如:当有新的存储设备接入群集时,注册该新接入存储设备的配置信息,并将该新接入存储设备的配置信息添加到存储设备群集配置数据库中;当存储设备离线时,注销该离线存储设备的配置信息,并从存储设备群集配置数据库中删除该离线存储设备的配置信息;同时,所述数据分配装置还可以将所述存储设备群集配置数据库的信息实时发送给系统中的各在线存储设备,即系统中的各在线存储设备均可以从数据分配装置中获取最新的存储设备群集配置数据库副本,以便与所述数据分配装置中配置的存储设备群集配置数据库保持一致。
[0029]具体地,在本步骤101中,所述数据分配装置可以通过以下方式来确定系统中各在线存储设备的设备性能优先级:
[0030]针对任一在线存储设备,获取该在线存储设备的各性能加权指标,并根据设定的各性能加权指标的权重系数,对该在线存储设备的各性能加权指标进行加权运算,得到该在线存储设备的性能加权值;
[0031]根据该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值,确定该在线存储设备的设备性能优先级;
[0032]其中,该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值越高,该在线存储设备的设备性能优先级也越闻。
[0033]其中,所述性能加权指标可以至少包括以下信息中的一种或多种:存储设备的可用容量、存储设备的处理器速度、存储设备的内存大小等,本发明实施例对此不作任何限定。
[0034]另外,各性能加权指标的权重系数需要根据实际情况进行设定;例如,当存储设备的可用容量对存储设备性能的影响较大时,可以为存储设备的可用容量这一性能加权指标分配较高的权重系数,当存储设备的可用容量对存储设备性能的影响较小时,可以为存储设备的可用容量这一性能加权指标分配较低的权重系数,本发明实施例对此不作任何限定。
[0035]另外需要说明的是,在本发明实施例一中,在为系统中的任一在线存储设备的各项性能加权指标分配相应的权重系数时,该在线存储设备的各性能加权指标的权重系数之和需为I。[0036]具体地,在本步骤101中,假设针对系统中某一设备类型为文件服务器的在线存储设备Al,所述数据分配装置可以在确定该在线存储设备Al的设备类型以及取得该在线存储设备Al的设备权限之后,通过向该在线存储设备Al发送相关指令的方式来获取该在线存储设备Al的各项性能加权指标,所获取到的该在线存储设备Al的各项性能加权指标可以为:存储设备的可用容量为X,存储设备的处理器速度为Y,存储设备的内存大小为Z
坐寸ο
[0037]进一步地,在获取到该在线存储设备Al的各项性能加权指标之后,所述数据分配装置可以根据事先设定的各项性能加权指标的权重系数(假设事先设定的存储设备的可用容量这一性能加权指标的权重系数为0.6,存储设备的处理器速度这一性能加权指标的权重系数为0.3,存储设备的内存大小这一性能加权指标的权重系数为0.1),对该在线存储设备Al的各性能加权指标进行加权运算,得到该在线存储设备Al的性能加权值Ql ;具体地,所得到的该在线存储设备的性能加权值Ql可以表示为:Q1=0.6X+0.3Y+0.1Z。
[0038]进一步地,在得到该在线存储设备Al的性能加权值之后,可以根据该在线存储设备Al的性能加权值确定该在线存储设备Al的设备性能优先级。
[0039]例如:若所得到的该在线存储设备Al的性能加权值Ql大于设定的第一阈值,则可以认为该在线存储设备Al的设备性能优先级为高,若所得到的该在线存储设备Al的性能加权值Ql大于设定的第二阈值且小于设定的第一阈值,则可以认为该在线存储设备Al的设备性能优先级为中,若所得到的该在线存储设备Al的性能加权值Ql小于设定的第二阈值,则可以认为该在线存储设备Al的设备性能优先级为低,其中,所述第一阈值大于第二阈值,且所述第一阈值以及所述第二阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;或者,
[0040]若系统中除了该在线存储设备Al之外,还包括3个在线存储设备,分别为在线存储设备A2、在线存储设备A3以及在线存储设备A4,且在线存储设备A2、在线存储设备A3以及在线存储设备A4所对应的性能加权值分别为Q2、Q3以及Q4,则当Ql大于Q2、Q3、Q4时,可以认为该在线存储设备Al的设备性能优先级为高;当Ql小于Q2、Q3、Q4时,可以认为该在线存储设备Al的设备性能优先级为低;当Ql大于Q2、Q3以及Q4中的一个数值且小于Q2、Q3以及Q4中的另外两个数值,或Ql大于Q2、Q3以及Q4中的两个数值且小于Q2、Q3以及Q4中的另外一个数值时,可以认为该在线存储设备Al的设备性能优先级为中;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据得到的性能加权值确定在线存储设备的设备性能优先级,本发明实施例对此不作任何限定。
[0041]较优地,在本发明各实施例中,在得到在线存储设备的性能加权值之后,所述数据分配装置还可以根据该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值,来确定该在线存储设备的设备性能优先级。
[0042]例如,仍以系统中存在4个在线存储设备(分别为在线存储设备Al、在线存储设备A2、在线存储设备A3以及在线存储设备A4,且在线存储设备Al、在线存储设备A2、在线存储设备A3以及在线存储设备A4所对应的性能加权值分别为Ql、Q2、Q3以及Q4)为例,可以根据Ql/ (Q1+Q2+Q3+Q4)的大小来确定在线存储设备Al的设备性能优先级,如若Ql/(Q1+Q2+Q3+Q4)的数值大于设定的第三阈值,则可以认为该在线存储设备Al的设备性能优先级为高,若Ql/ (Q1+Q2+Q3+Q4)的数值大于设定的第四阈值且小于设定的第三阈值,则可以认为该在线存储设备Al的设备性能优先级为中,若Ql/ (Q1+Q2+Q3+Q4)的数值小于设定的第四阈值,则可以认为该在线存储设备Al的设备性能优先级为低,其中,所述第三阈值大于第四阈值且所述第三阈值以及所述第四阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;或者,
[0043]当Ql/ (Q1+Q2+Q3+Q4)的数值大于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及Q4/ (Q1+Q2+Q3+Q4)时,可以认为该在线存储设备Al的设备性能优先级为高;当Ql/(Q1+Q2+Q3+Q4)小于 Q2/(Q1+Q2+Q3+Q4)、 Q3/ (Q1+Q2+Q3+Q4)、 Q4/ (Q1+Q2+Q3+Q4)时,可以认为该在线存储设备Al的设备性能优先级为低;当Q1/(Q1+Q2+Q3+Q4)大于Q2/(Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的一个数值且小于 Q2/(Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的另外两个数值,或 Ql/(Q1+Q2+Q3+Q4)大于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的两个数值且小于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的另外一个数值时,可以认为该在线存储设备Al的设备性能优先级为中。
[0044]需要说明的是,在本发明实施例中,可以将系统中的各在线存储设备的设备性能优先级划分为N个等级,所述N为正整数且其数值不大于系统中所包含的在线存储设备的数量总值,本发明实施例对此不作任何限定。
[0045]较优地,在本发明各实施例中,可以按照系统中的各在线存储设备的性能加权值或各在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值从大到小的顺序,对各在线存储设备进行排序,并分别为每一在线存储设备分配相应的性能优先级等级,即,对应的性能加权值不同的任意两个在线存储设备的性能优先级等级也不同,或者对应的在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值不同的任意两个在线存储设备的性能优先级等级也不同。
[0046]进一步地,在本发明实施例一中,所述数据分配装置还可以采用多维稀疏MAP (所述多维稀疏MAP可以由KEY和VALUE组成,其索引可以为行关键字、列关键字和时间戳)的形式将各在线存储设备的设备性能优先级(或各在线存储设备的性能加权值)与对应的在线存储设备的设备信息(如存储设备的MAC地址、存储设备的名称等)进行存储。
[0047]具体地,在进行上述信息的存储时,每一在线存储设备均可以看作为一设备元,每一在线存储设备对应的设备信息和设备性能优先级等信息均可以看作设备元数据;进一步地,在进行各设备元数据的存储时,可以将存储设备的MAC地址作为行关键字,将存储设备的名称和存储设备的设备性能优先级(或存储设备的性能加权值)作为列,加权计算的时间戳作为标识,进而,所得到的设备元数据具体可以表示为MAP〈存储设备的MAC地址,存储设备性能DATA〉,其中,存储设备性能DATA为一数组,其中包括存储设备的名称、存储设备的设备性能优先级(或存储设备的性能加权值)等信息,并且,针对任一设备元数据,该设备元数据中DATA数组的标识为该设备元对应的设备性能加权值的加权计算时间。
[0048]需要说明的是,为了保证系统中所存储的各设备元数据的准确性,所述数据分配装置可以根据保存的存储设备群集配置数据库来完成各存储设备对应的设备元以及设备元数据的注册、更新以及注销等操作。
[0049]步骤102:确定系统中各待存储数据的数据优先级。
[0050]具体地,在本步骤102中,数据分配装置在接收到来自外界的待存储数据时,可以采用以下方式来确定各待存储数据的数据优先级:
[0051]针对任一待存储数据,获取该待存储数据的各数据加权指标,并根据设定的各数据加权指标的权重系数,对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值;
[0052]根据该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,确定该待存储数据的数据优先级;
[0053]其中,该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值越高,该待存储数据的数据优先级也越高。
[0054]具体地,所述数据加权指标可以至少包括以下信息中的一种或多种:数据的重要度、数据的访问量以及数据的大小等,本发明实施例对此不作任何限定。
[0055]具体地,各数据加权指标的权重系数需要根据实际情况进行设定,例如:当数据的重要度对数据优先级的影响较大时,可以为数据的重要度这一加权指标分配较高的权重系数,当数据的访问量对数据的优先级的影响较大时,可以为数据的访问量这一加权指标分配相对较高的权重系数,本发明实施例对此不作任何限定。
[0056]另外需要说明的是,在本发明实施例一中,在为系统中的任一待存储数据的各项数据加权指标分配相应的权重系数时,该待存储数据的各数据加权指标的权重系数之和需为I。
[0057]具体地,在本步骤102中,所述数据分配装置可以通过向外界提供数据装载服务接口的方式来对来自外界的各待存储数据进行装载,例如,对于文件数据,所述数据分配装置可以向外界提供文件数据装载服务接口的方式来对该文件数据进行装载。
[0058]进一步地,来自外界的各待存储数据可以采用数据块的形式进入所述数据分配装置,其中,各数据块中可以包括数据块关键字、数据块名称、数据的重要度,数据的访问量,数据的大小等信息,本发明实施例对此不作任何限定;进一步地,所述数据分配装置可以从各数据块中包含的信息中获取各待存储数据的各项数据加权指标。
[0059]具体地,针对任一待存储数据,在获取到该待存储数据的的各项数据加权指标(如数据的重要度为M,数据的访问量为N,数据的大小为P)之后,所述数据分配装置可以根据事先设定的各项数据加权指标的权重系数(假设事先设定的数据的重要度这一数据加权指标的权重系数为0.6,数据的访问量这一数据加权指标的权重系数为0.3,数据的大小这一数据加权指标的权重系数为0.1),对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值R,具体地,所得到的该待存储数据的数据加权值R可以表示为:R=0.6M+0.3N+0.1P0
[0060]进一步地,在得到该待存储数据的数据加权值之后,所述数据分配装置可以根据该待存储数据的数据加权值确定该待存储数据的数据优先级。
[0061]例如:若所得到的该在待存储数据的数据加权值大于设定的第五阈值,则认为该待存储数据的数据优先级为高,若所得到的该待存储数据的数据加权值大于设定的第六阈值且小于设定的第五阈值,则可以认为该待存储数据的数据优先级为中,若所得到的该待存储数据的数据加权值小于设定的第六阈值,则可以认为该待存储数据的数据优先级为低,其中,所述第五阈值大于所述第六阈值,且所述第五阈值以及第六阈值的数值可以根据实际情况进行设定,本发明实施例对此不作任何限定;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据得到的数据加权值确定待存储数据的数据优先级,本发明实施例对此不作任何限定。
[0062]进一步地,在本发明各实施例中,在得到待存储数据的数据加权值之后,还可以根据该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,来确定该待存储数据的数据优先级。
[0063]例如,针对系统中的任一待存储数据XI,可以根据该待存储数据Xl的数据加权值Rl以及系统中所有待存储数据的数据加权值之和R,6的比值来确定该待存储数据Xl的数据优先级,如若R1/R&的数值大于设定的第七阈值,则可以认为该待存储数据Xl的数据优先级为高,若町/1^的数值大于设定的第八阈值且小于设定的第七阈值,则可以认为该待存储数据Xl的数据优先级为中,若若R1/R&的数值小于设定的第八阈值,则可以认为该待存储数据Xl的数据优先级为低,其中,所述第七阈值大于第八阈值且所述第七阈值以及所述第八阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据根据待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值来确定该待存储数据的数据优先级,本发明实施例对此不作任何限定。
[0064]需要说明的是,在本发明实施例中,待存储数据的数据优先级可以有多个不同的等级,本发明实施例对此不作任何限定;另外,针对任一数据优先级等级,属于该数据优先级等级的待存储数据可以为一个或多个,本发明实施例对此也不作任何限定。
[0065]进一步地,在本发明实施例一中,所述数据分配装置还可以采用多维稀疏MAP (所述多维稀疏MAP可以由KEY和VALUE组成,其索引可以为行关键字、列关键字和时间戳)的形式将各待存储数据的数据优先级(或各待存储数据的数据加权值)与对应的待存储数据的数据信息(如待存储数据的数据块关键字、待存储数据的数据块名称等)进行存储。
[0066]具体地,在进行上述信息的存储时,每一待存储数据均可以看作为一数据元,每一待存储数据对应的 数据信息和数据优先级等信息均可以看作数据元数据;进一步地,在进行各数据元数据的存储时,可以将待存储数据的数据块关键字作为行关键字,将待存储数据的数据块名称和待存储数据的数据优先级(或待存储数据的数据加权值)作为列,加权计算的时间戳作为标识,进而,所得到的数据元数据具体可以表示为MAP〈待存储数据的数据块关键字,待存储数据的加权DATA〉,其中,待存储数据的加权DATA为一数组,其中包括待存储数据的数据块名称、待存储数据的数据优先级(或待存储数据的数据加权值)等信息,并且,针对任一数据元数据,该数据元数据中DATA数组的标识为该数据元对应的待存储数据加权值的加权计算时间。
[0067]步骤103:针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0068]具体地,在本步骤103中,针对任一待存储数据,可以将确定的该待存储数据的数据优先级与确定的各在线存储设备的设备性能优先级进行优先级匹配,筛选出所具备的设备性能优先级与该待存储数据的数据优先级一致的在线存储设备,并将该待存储数据存储到所筛选出的在线存储设备中。[0069]也就是说,针对系统中的各待存储数据,所述数据分配装置可以将数据优先级高的待存储数据存储到设备性能优先级高的在线存储设备中,将数据优先级次之的待存储数据存储到设备性能优先级次之的在线存储设备中,直至将接收到的各待存储数据依次存储到与其优先级相匹配的在线存储设备中。
[0070]较优地,在本发明实施例中,为待存储数据所划分的数据优先级等级可以不大于为系统中的各在线存储设备所划分的设备性能优先级等级,以便于在接收到来自外界的待存储数据时,能够为各待存储数据分配到相匹配的某一在线存储设备中,实现待存储数据的自动划分和存储。
[0071]进一步地,在执行完上述步骤IOf步骤103之后,所述方法还可以包括以下步骤:
[0072]在设定时长到达时,重新确定各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级;
[0073]根据重新确定后的各在线存储设备的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
[0074]具体地,所述设定时长可以根据实际情况进行调整,例如:当对系统中的存储数据以及存储设备的优先级的动态实时性要求较高时,所述设定时长可以为一较小数值,当对系统中的存储数据以及存储设备的优先级的动态实时性要求较低时,所述设定时长可以为一较大数值,本发明实施例对此不作任何限定;进一步地,所述设定阈值也可以根据实际情况进行调整,本发明实施例对此也不作任何限定。
[0075]需要说明的是,在重新确定各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级之后,还需要根据重新确定的各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级,对以多维稀疏MAP形式保存的设备元数据以及数据元数据进行相应调整。
[0076]本发明实施例一提供了一种基于海量数据的数据分配方法,所述方法包括:确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级,针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。通过本发明所述技术方案,能够自动根据各待存储数据的数据优先级以及各在线存储设备的设备性能优先级,将各待存储数据存储到具备与其优先级相匹配的优先级的在线存储设备中,从而解决了现有技术中存在的无法根据数据的重要性以及存储设备的当前存储情况对数据进行自动划分和存储、导致存储设备的设备利用率较低以及存储效果并不佳的问题。
[0077]另外,在本发明实施例一所述方案中,还可以在设定时长到达时,重新确定各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级,并根据重新确定的各优先级,对各在线存储设备中已存储的数据进行分配调整,并将优先级低于设定阈值的数据进行离线存储,从而实现了将具备较高优先级的数据存储到具备较高性能优先级的存储设备中的目的,进一步提高了存储设备的设备利用率,提高了数据的存储效果。
[0078]实施例二:
[0079]如图2所示,其为本发明实施例二中所述基于海量数据的数据分配装置的结构示意图,所述数据分配装置可以为服务器等具备数据分配能力的独立装置,也可以为其它具备数据分配能力的集成装置等,本发明实施例对此不作任何限定;具体地,所述数据分配装置包括设备管理模块11、数据管理模块12以及数据分配模块13,其中:
[0080]所述设备管理模块11用于确定系统中各在线存储设备的设备性能优先级;具体地,所述存储设备可以包括文件服务器存储设备、数据库服务器存储设备以及内存数据库存储设备等,本发明实施例对此不作任何限定。
[0081]具体地,所述设备管理模块11用于针对任一在线存储设备,获取该在线存储设备的各性能加权指标,并根据设定的各性能加权指标的权重系数,对该在线存储设备的各性能加权指标进行加权运算,得到该在线存储设备的性能加权值,以及,根据该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值,确定该在线存储设备的设备性能优先级,其中,该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值越高,该在线存储设备的设备性能优先级也越高。
[0082]其中,所述性能加权指标可以至少包括以下信息中的一种或多种:存储设备的可用容量、存储设备的处理器速度、存储设备的内存大小等;另外,各性能加权指标的权重系数需要根据实际情况进行设定,例如:当存储设备的可用容量对存储设备性能的影响较大时,可以为存储设备的可用容量这一性能加权指标分配较高的权重系数,当存储设备的可用容量对存储设备性能的影响较小时,可以为存储设备的可用容量这一性能加权指标分配较低的权重系数,本发明实施例对此不作任何限定。
[0083]另外需要说明的是,在本发明实施例中,在为系统中的任一在线存储设备的各项性能加权指标分配相应的权重系数时,该在线存储设备的各性能加权指标的权重系数之和需为I。
[0084]具体地,假设针对系统中某一设备类型为文件服务器的在线存储设备Al,所述设备管理模块11可以在确定该在线存储设备Al的设备类型以及取得该在线存储设备Al的设备权限之后,通过向该在线存储设备Al发送相关指令的方式来获取该在线存储设备Al的各项性能加权指标,所获取到的该在线存储设备Al的各项性能加权指标可以为:存储设备的可用容量为X,存储设备的处理器速度为Y,存储设备的内存大小为Z等。
[0085]进一步地,在获取到该在线存储设备的各项性能加权指标之后,所述设备管理模块11可以根据事先设定的各项性能加权指标的权重系数(假设事先设定的存储设备的可用容量这一性能加权指标的权重系数为0.6,存储设备的处理器速度这一性能加权指标的权重系数为0.3,存储设备的内存大小这一性能加权指标的权重系数为0.1 ),对该在线存储设备Al的各性能加权指标进行加权运算,得到该在线存储设备Al的性能加权值Ql ;具体地,所得到的该在线存储设备的性能加权值Ql可以表示为:Q1=0.6X+0.3Y+0.1Z。
[0086]进一步地,在得到该在线存储设备Al的性能加权值之后,所述设备管理模块11可以根据该在线存储设备Al的性能加权值确定该在线存储设备的设备性能优先级;例如,若所得到的该在线存储设备Al的性能加权值Ql大于设定的第一阈值,则可以认为该在线存储设备Al的设备性能优先级为高,若所得到的该在线存储设备Al的性能加权值Ql大于设定的第二阈值且小于设定的第一阈值,则可以认为该在线存储设备Al的设备性能优先级为中,若所得到的该在线存储设备Al的性能加权值Ql小于设定的第二阈值,则可以认为该在线存储设备Al的设备性能优先级为低,其中,所述第一阈值大于第二阈值,且所述第一阈值以及所述第二阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;或者,
[0087]若系统中除了该在线存储设备Al之外,还包括3个在线存储设备,分别为在线存储设备A2、在线存储设备A3以及在线存储设备A4,且在线存储设备A2、在线存储设备A3以及在线存储设备A4所对应的性能加权值分别为Q2、Q3以及Q4,则当Ql大于Q2、Q3、Q4时,可以认为该在线存储设备Al的设备性能优先级为高;当Ql小于Q2、Q3、Q4时,可以认为该在线存储设备Al的设备性能优先级为低;当Ql大于Q2、Q3以及Q4中的一个数值且小于Q2、Q3以及Q4中的另外两个数值,或Ql大于Q2、Q3以及Q4中的两个数值且小于Q2、Q3以及Q4中的另外一个数值时,可以认为该在线存储设备Al的设备性能优先级为中;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据得到的性能加权值确定在线存储设备的设备性能优先级,本发明实施例对此不作任何限定。
[0088]较优地,在得到在线存储设备Al的性能加权值之后,所述设备管理模块11还可以根据该在线存储设备Al的性能加权值与系统中各在线存储设备的性能加权值之和的比值,来确定该在线存储设备Al的设备性能优先级;例如,仍以系统中存在4个在线存储设备(分别为在线存储设备Al、在线存储设备A2、在线存储设备A3以及在线存储设备A4,且在线存储设备Al、在线存储设备A2、在线存储设备A3以及在线存储设备A4所对应的性能加权值分别为Q1、Q2、Q3以及Q4)为例,可以根据Ql/ (Q1+Q2+Q3+Q4)的大小来确定在线存储设备Al的设备性能优先级,如若Ql/ (Q1+Q2+Q3+Q4)的数值大于设定的第三阈值,则可以认为该在线存储设备Al的设备性能优先级为高,若Ql/ (Q1+Q2+Q3+Q4)的数值大于设定的第四阈值且小于设定的第三阈值,则可以认为该在线存储设备Al的设备性能优先级为中,若Ql/ (Q1+Q2+Q3+Q4)的数值小于设定的第四阈值,则可以认为该在线存储设备Al的设备性能优先级为低,其中,所述第三阈值大于第四阈值且所述第三阈值以及所述第四阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;或者,
[0089]当Ql/ (Q1+Q2+Q3+Q4)的数值大于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及Q4/ (Q1+Q2+Q3+Q4)时,可以认为该在线存储设备Al的设备性能优先级为高;当Ql/(Q1+Q2+Q3+Q4)小于 Q2/(Q1+Q2+Q3+Q4)、 Q3/ (Q1+Q2+Q3+Q4)、 Q4/ (Q1+Q2+Q3+Q4)时,可以认为该在线存储设备Al的设备性能优先级为低;当Q1/(Q1+Q2+Q3+Q4)大于Q2/(Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的一个数值且小于 Q2/(Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的另外两个数值,或 Ql/(Q1+Q2+Q3+Q4)大于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的两个数值且小于 Q2/ (Q1+Q2+Q3+Q4)、Q3/ (Q1+Q2+Q3+Q4)以及 Q4/ (Q1+Q2+Q3+Q4)中的另外一个数值时,可以认为该在线存储设备Al的设备性能优先级为中。
[0090]需要说明的是,在本发明实施例中,可以将系统中的各在线存储设备的设备性能优先级划分为N个等级,所述N为正整数且其数值不大于系统中所包含的在线存储设备的数量总值,本发明实施例对此不作任何限定。
[0091]较优地,在本发明实施例中,所述设备管理模块11可以按照系统中的各在线存储设备的性能加权值或各在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值从大到小的顺序,对各在线存储设备进行排序,并分别为每一在线存储设备分配相应的性能优先级等级,即,对应的性能加权值不同的任意两个在线存储设备的性能优先级等级也不同,或者对应的在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值不同的任意两个在线存储设备的性能优先级等级也不同。
[0092]进一步地,所述设备管理模块11还可以用于对系统中的各存储设备进行集群管理,如可以通过配置存储设备群集配置数据库的方式来对系统中的各存储设备进行集群管理,当有新的存储设备接入群集时,注册该新接入存储设备的配置信息,并将该新接入存储设备的配置信息更新到存储设备群集配置数据库中,当有存储设备离线时,注销该离线存储设备的配置信息,并从存储设备群集配置数据库中删除该离线存储设备的配置信息;同时,所述设备管理模块11还可以将最新的存储设备群集配置数据库信息发送给各在线存储设备,从而使得各在线存储设备均能够保存有最新的存储设备群集配置数据库副本,以便与所述设备管理模块11中配置的存储设备群集配置数据库保持一致。
[0093]所述数据管理模块12用于确定系统中各待存储数据的数据优先级。
[0094]具体地,所述数据管理模块12用于针对任一待存储数据,获取该待存储数据的各数据加权指标,并根据设定的各数据加权指标的权重系数,对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值,以及,根据该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,确定该待存储数据的数据优先级,其中,该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值越高,该待存储数据的数据优先级也越高。
[0095]其中,所述数据加权指标可以至少包括以下信息中的一种或多种:数据的重要度、数据的访问量以及数据的大小等;另外,各数据加权指标的权重系数需要根据实际情况进行设定,例如:当数据的重要度对数据优先级的影响较大时,可以为数据的重要度这一加权指标分配较高的权重系数,当数据的访问量对数据的优先级的影响较大时,可以为数据的访问量这一加权指标分配相对较高的权重系数,本发明实施例对此不作任何限定。
[0096]具体地,针对任一待存储数据,在获取到该待存储数据的的各项数据加权指标(如数据的重要度为M,数据的访问量为N,数据的大小为P)之后,所述数据管理模块12可以根据事先设定的各项数据加权指标的权重系数(假设事先设定的数据的重要度这一数据加权指标的权重系数为0.6,数据的访问量这一数据加权指标的权重系数为0.3,数据的大小这一数据加权指标的权重系数为0.1),对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值R,具体地,所得到的该待存储数据的数据加权值R可以表示为:R=0.6M+0.3N+0.1P0
[0097]进一步地,在得到该待存储数据的数据加权值之后,所述数据管理模块12可以根据该待存储数据的数据加权值确定该待存储数据的数据优先级。
[0098]例如:若所得到的该在待存储数据的数据加权值大于设定的第五阈值,则认为该待存储数据的数据优先级为高,若所得到的该待存储数据的数据加权值大于设定的第六阈值且小于设定的第五阈值,则可以认为该待存储数据的数据优先级为中,若所得到的该待存储数据的数据加权值小于设定的第六阈值,则可以认为该待存储数据的数据优先级为低,其中,所述第五阈值大于所述第六阈值,且所述第五阈值以及第六阈值的数值可以根据实际情况进行设定,本发明实施例对此不作任何限定;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据得到的数据加权值确定待存储数据的数据优先级,本发明实施例对此不作任何限定。
[0099]进一步地,在本发明各实施例中,在得到待存储数据的数据加权值之后,所述数据管理模块12还可以根据该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,来确定该待存储数据的数据优先级。
[0100]例如,针对系统中的任一待存储数据XI,可以根据该待存储数据Xl的数据加权值Rl以及系统中所有待存储数据的数据加权值之和Rg的比值来确定该待存储数据Xl的数据优先级,如若R1/R&的数值大于设定的第七阈值,则可以认为该待存储数据Xl的数据优先级为高,若町/1^的数值大于设定的第八阈值且小于设定的第七阈值,则可以认为该待存储数据Xl的数据优先级为中,若若R1/R&的数值小于设定的第八阈值,则可以认为该待存储数据Xl的数据优先级为低,其中,所述第七阈值大于第八阈值且所述第七阈值以及所述第八阈值的数值可以根据实际情况进行调整,本发明实施例对此不作任何限定;需要说明的是,在本发明实施例中,还可以采用其他的数值范围划分方法来根据根据待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值来确定该待存储数据的数据优先级,本发明实施例对此不作任何限定。
[0101]需要说明的是,在本发明实施例中,待存储数据的数据优先级可以有多个不同的等级,本发明实施例对此不作任何限定;另外,针对任一数据优先级等级,属于该数据优先级等级的待存储数据可以为一个或多个,本发明实施例对此也不作任何限定。
[0102]所述数据分配模块13用于针对任一待存储数据,按照预先设定的优先级匹配原贝U,确定具备与该待存储数·据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0103]具体地,针对任一待存储数据,所述数据分配模块13可以将确定的该待存储数据的数据优先级与确定的各在线存储设备的设备性能优先级进行优先级匹配,筛选出所具备的设备性能优先级与该待存储数据的数据优先级一致的在线存储设备,并将该待存储数据存储到所筛选出的在线存储设备中。
[0104]也就是说,针对系统中的各待存储数据,所述数据分配模块13可以将数据优先级高的待存储数据存储到设备性能优先级高的在线存储设备中,将数据优先级次之的待存储数据存储到设备性能优先级次之的在线存储设备中,直至将接收到的各待存储数据依次存储到与其优先级相匹配的在线存储设备中。
[0105]较优地,在本发明实施例中,为系统中的待存储数据所划分的数据优先级等级可以不大于为系统中的各在线存储设备所划分的设备性能优先级等级,以便于在接收到来自外界的待存储数据时,能够为各待存储数据分配到相匹配的某一在线存储设备中,从而实现待存储数据的自动划分和存储。
[0106]进一步地,所述数据分配装置还可以包括设备元存储模块14以及数据元存储模块15,其中:
[0107]所述设备元存储模块14用于将确定的各在线存储设备的设备性能优先级(或各在线存储设备的性能加权值)进行存储;具体地,所述设备元存储模块14可以维持与设备管理模块11的心跳通讯,并根据设备管理模块11中配置的存储设备群集配置数据库来完成各存储设备对应的设备元以及设备元数据的注册、更新以及注销等操作。
[0108]进一步地,所述设备元存储模块14可以采用多维稀疏MAP (所述多维稀疏MAP可以由KEY和VALUE组成,其索引可以为行关键字、列关键字和时间戳)的形式将各在线存储设备的设备性能优先级(或各在线存储设备的性能加权值)与对应的在线存储设备的设备信息(如存储设备的MAC地址、存储设备的名称等)进行存储。
[0109]进一步地,所述设备元存储模块14在进行各设备元数据的存储时,可以将存储设备的MAC地址作为行关键字,将存储设备的名称和存储设备的设备性能优先级(或存储设备的性能加权值)作为列,加权计算的时间戳作为标识,进而,所得到的设备元数据具体可以表示为MAP〈存储设备的MAC地址,存储设备性能DATA〉,其中,存储设备性能DATA为一数组,其中包括存储设备的名称、存储设备的设备性能优先级(或存储设备的性能加权值)等信息,并且,针对任一设备元数据,该设备元数据中DATA数组的标识为该设备元对应的设备性能加权值的加权计算时间。
[0110]所述数据元存储模块15用于将确定的各待存储数据的数据优先级(或各待存储数据的数据加权值)进行存储;具体地,所述数据元存储模块15可以通过维持与数据管理模块12的心跳通讯的方式来完成各待存储数据对应的数据元以及数据元数据的注册、更新以及注销等操作。
[0111]进一步地,所述数据元存储模块15可以采用多维稀疏MAP的形式将各待存储数据的数据优先级(或各待存储数据的数据加权值)与对应的待存储数据的数据信息(如待存储数据的数据块关键字、待存储数据的数据块名称等)进行存储;进一步地,在进行各数据元数据的存储时,可以将待存储数据的数据块关键字作为行关键字,将待存储数据的数据块名称和待存储数据的数据优先级(或待存储数据的数据加权值)作为列,加权计算的时间戳作为标识,进而,所得到的数据元数据具体可以表示为MAP〈待存储数据的数据块关键字,待存储数据的加权DATA〉,其中,待存储数据的加权DATA为一数组,其中包括待存储数据的数据块名称、待存储数据的数据优先级(或待存储数据的数据加权值)等信息,并且,针对任一数据元数据,该数据元数据中DATA数组的标识为该数据元对应的待存储数据加权值的加权计算时间。
[0112]进一步地,所述设备管理模块11还用于在设定时长到达时,重新确定各在线存储设备的设备性能优先级;
[0113]所述数据管理模块12还用于在设定时长到达时,重新确定各在线存储设备中已存储的存储数据的数据优先级;
[0114]所述数据分配模块13还用于根据重新确定后的各在线存储设备的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
[0115]具体地,所述设定时长可以根据实际情况进行调整,例如:当对系统中的存储数据以及存储设备的优先级的动态实时性要求较高时,所述设定时长可以为一较小数值,当对系统中的存储数据以及存储设备的优先级的动态实时性要求较低时,所述设定时长可以为一较大数值,本发明实施例对此不作任何限定;进一步地,所述设定阈值也可以根据实际情况进行调整,本发明实施例对此也不作任何限定。
[0116]进一步地,所述设备元存储模块14还用于根据所述设备管理模块11重新确定的各在线存储设备的设备性能优先级,更新本地存储的各设备元数据;所述数据元存储模块15还用于根据所述数据管理模块12重新确定的各已存储数据的数据优先级,更新本地存储的各数据元数据。
[0117]进一步地,所述数据分配模块13还可以与所述设备管理模块11以及数据管理模块12保持心跳通讯,并根据所述设备管理模块11重新确定后的各在线存储设备的设备性能优先级以及所述数据管理模块12重新确定后的各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当任一已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
[0118]或者,所述数据分配模块13还可以与所述设备元存储模块14以及数据元存储模块15保持心跳通讯,并根据所述设备元存储模块14中存储的更新后的设备元数据以及所述数据元存储模块15中存储的更新后的数据元数据,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
[0119]实施例三:
[0120]如图3所示,其为本发明实施例三中所述基于海量数据的数据分配系统的结构示意图,所述数据分配系统包括至少一个数据分配装置21以及与任一数据分配装置21相对应的至少一个存储设备22,其中:
[0121]所述数据分配装置21用于确定系统中各在线存储设备22的设备性能优先级以及系统中各待存储数据的数据优先级,并针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备22,并将该待存储数据存储到所确定的在线存储设备22中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
[0122]具体地,所述数据分配装置21用于针对任一在线存储设备22,获取该在线存储设备22的各性能加权指标,并根据设定的各性能加权指标的权重系数,对该在线存储设备22的各性能加权指标进行加权运算,得到该在线存储设备22的性能加权值,以及,根据该在线存储设备22的性能加权值或者该在线存储设备22的性能加权值与系统中各在线存储设备22的性能加权值之和的比值,确定该在线存储设备22的设备性能优先级,其中,该在线存储设备22的性能加权值或者该在线存储设备22的性能加权值与系统中各在线存储设备22的性能加权值之和的比值越高,该在线存储设备22的设备性能优先级也越高。
[0123]其中,所述性能加权指标可以至少包括以下信息中的一种或多种:存储设备的可用容量、存储设备的处理器速度、存储设备的内存大小等,本发明实施例对此不作任何限定。
[0124]进一步地,所述数据分配装置21用于针对任一待存储数据,获取该待存储数据的各数据加权指标,并根据设定的各数据加权指标的权重系数,对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值,以及,根据该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,确定该待存储数据的数据优先级,其中,该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值越高,该待存储数据的数据优先级也越高。
[0125]其中,所述数据加权指标可以至少包括以下信息中的一种或多种:数据的重要度、数据的访问量以及数据的大小等,本发明实施例对此不作任何限定。
[0126]进一步地,所述数据分配装置21还可以用于对系统中的各存储设备22进行集群管理,如可以通过配置存储设备群集配置数据库的方式来对系统中的各存储设备22进行集群管理,当有新的存储设备22接入群集时,注册该新接入存储设备22的配置信息,并将该新接入存储设备22的配置信息更新到存储设备群集配置数据库中,当有存储设备22离线时,注销该离线存储设备22的配置信息,并从存储设备群集配置数据库中删除该离线存储设备22的配置信息;同时,所述数据分配装置21还可以将最新的存储设备群集配置数据库信息发送给各在线存储设备22,从而使得各在线存储设备22均能够保存有最新的存储设备群集配置数据库副本,以便与所述数据分配装置21中配置的存储设备群集配置数据库保持一致。
[0127]进一步地,所述数据分配装置21还用于将确定的各在线存储设备22的设备性能优先级(或各在线存储设备22的设备性能加权值)进行存储;具体地,所述数据分配装置21可以根据保存的存储设备群集配置数据库来完成各存储设备22对应的设备元以及设备元数据的注册、更新以及注销等操作。
[0128]进一步地,所述数据分配装置21可以采用多维稀疏MAP (所述多维稀疏MAP可以由KEY和VALUE组成,其索引可以为行关键字、列关键字和时间戳)的形式将各在线存储设备22的设备性能优先级(或各在线存储设备的性能加权值)与对应的在线存储设备22的设备信息(如存储设备的MAC地址、存储设备的名称等)进行存储。
[0129]进一步地,所述数据分配装置21在进行各设备元数据的存储时,可以将存储设备的MAC地址作为行关键字,将存储设备的名称和存储设备的设备性能优先级(或存储设备的性能加权值)作为列,加权计算的时间戳作为标识,进而,所得到的设备元数据具体可以表示为MAP〈存储设备的MAC地址,存储设备性能DATA〉,其中,存储设备性能DATA为一数组,其中包括存储设备的名称、存储设备的设备性能优先级(或存储设备的性能加权值)等信息,并且,针对任一设备元数据,该设备元数据中DATA数组的标识为该设备元对应的设备性能加权值的加权计算时间。
[0130]进一步地,所述数据分配装置21还可以用于将确定的各待存储数据的数据优先级(或各待存储数据的数据加权值)进行存储。
[0131 ] 进一步地,所述数据分配装置21可以采用多维稀疏MAP的形式将各待存储数据的数据优先级(或各待存储数据的数据加权值)与对应的待存储数据的数据信息(如待存储数据的数据块关键字、待存储数据的数据块名称等)进行存储;进一步地,在进行各数据元数据的存储时,可以将待存储数据的数据块关键字作为行关键字,将待存储数据的数据块名称和待存储数据的数据优先级(或待存储数据的数据加权值)作为列,加权计算的时间戳作为标识,进而,所得到的数据元数据具体可以表示为MAP〈待存储数据的数据块关键字,待存储数据的加权DATA〉,其中,待存储数据的加权DATA为一数组,其中包括待存储数据的数据块名称、待存储数据的数据优先级(或待存储数据的数据加权值)等信息,并且,针对任一数据元数据,该数据元数据中DATA数组的标识为该数据元对应的待存储数据加权值的加权计算时间。
[0132]进一步地,所述数据分配装置21还用于在设定时长到达时,重新确定各在线存储设备22的设备性能优先级以及各在线存储设备22中已存储的存储数据的数据优先级,并根据重新确定后的各在线存储设备22的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备22中,以及,当任一已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
[0133]具体地,所述设定时长可以根据实际情况进行调整,例如:当对系统中的存储数据以及存储设备的优先级的动态实时性要求较高时,所述设定时长可以为一较小数值,当对系统中的存储数据以及存储设备的优先级的动态实时性要求较低时,所述设定时长可以为一较大数值,本发明实施例对此不作任何限定;进一步地,所述设定阈值也可以根据实际情况进行调整,本发明实施例对此也不作任何限定。
[0134]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种基于海量数据的数据分配方法,其特征在于,所述方法包括: 确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级; 针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中; 其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
2.如权利要求1所述的数据分配方法,其特征在于,确定系统中各在线存储设备的设备性能优先级,具体包括: 针对任一在线存储设备,获取该在线存储设备的各性能加权指标,并根据设定的各性能加权指标的权重系数,对该在线存储设备的各性能加权指标进行加权运算,得到该在线存储设备的性能加权值; 根据该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值,确定该在线存储设备的设备性能优先级; 其中,该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值越高,该在线存储设备的设备性能优先级也越高。
3.如权利要求2所述的数据分配方法,其特征在于, 所述性能加权指标至少包括以下信息中的一种或多种:存储设备的可用容量、存储设备的处理器速度、存储设备的内存大小。
4.如权利要求1所述的数据分配方法,其特征在于,确定系统中各待存储数据的数据优先级,具体包括: 针对任一待存储数据,获取该待存储数据的各数据加权指标,并根据设定的各数据加权指标的权重系数,对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据的数据加权值; 根据该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,确定该待存储数据的数据优先级; 其中,该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值越高,该待存储数据的数据优先级也越高。
5.如权利要求4所述的数据分配方法,其特征在于, 所述数据加权指标至少包括以下信息中的一种或多种:数据的重要度、数据的访问量以及数据的大小。
6.如权利要求1所述的数据分配方法,其特征在于,所述方法还包括: 在设定时长到达时,重新确定各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级; 根据重新确定后的各在线存储设备的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中;以及, 当已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
7.一种基于海量数据的数据分配装置,其特征在于,所述装置包括:设备管理模块,用于确定系统中各在线存储设备的设备性能优先级; 数据管理模块,用于确定系统中各待存储数据的数据优先级; 数据分配模块,用于针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
8.如权利要求7所述的数据分配装置,其特征在于, 所述设备管理模块,具体用于针对任一在线存储设备,获取该在线存储设备的各性能加权指标,并根据设定的各性能加权指标的权重系数,对该在线存储设备的各性能加权指标进行加权运算,得到该在线存储设备的性能加权值,以及,根据该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值,确定该在线存储设备的设备性能优先级,其中,该在线存储设备的性能加权值或者该在线存储设备的性能加权值与系统中各在线存储设备的性能加权值之和的比值越高,该在线存储设备的设备性能优先级也越高。
9.如权利要求8所述的数据分配装置,其特征在于, 所述性能加权指标至少包括以下信息中的一种或多种:存储设备的可用容量、存储设备的处理器速度、存储设备的内存大小。
10.如权利要求7所述的数据分配装置,其特征在于, 所述数据管理模块,具体用于针对任一待存储数据,获取该待存储数据的各数据加权指标,并根据设定的各数据加权指标的权重系数,对该待存储数据的各数据加权指标进行加权运算,得到该待存储数据·的数据加权值,以及,根据该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值,确定该待存储数据的数据优先级,其中,该待存储数据的数据加权值或者该待存储数据的数据加权值与系统中各待存储数据的数据加权值之和的比值越高,该待存储数据的数据优先级也越高。
11.如权利要求10所述的数据分配装置,其特征在于, 所述数据加权指标至少包括以下信息中的一种或多种:数据的重要度、数据的访问量以及数据的大小。
12.如权利要求7所述的数据分配装置,其特征在于, 所述设备管理模块,还用于在设定时长到达时,重新确定各在线存储设备的设备性能优先级; 所述数据管理模块,还用于在设定时长到达时,重新确定各在线存储设备中已存储的存储数据的数据优先级; 所述数据分配模块,还用于根据重新确定后的各在线存储设备的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当已存储数据的数据优先级低于设定的阈值时,将该已存储数据进行离线存储。
13.一种基于海量数据的数据分配系统,其特征在于,所述系统包括至少一个数据分配装置以及至少一个存储设备: 所述数据分配装置,用于确定系统中各在线存储设备的设备性能优先级以及各待存储数据的数据优先级,并针对任一待存储数据,按照预先设定的优先级匹配原则,确定具备与该待存储数据的数据优先级相匹配的设备性能优先级的在线存储设备,并将该待存储数据存储到所确定的在线存储设备中,其中,所述预先设定的优先级匹配原则为数据优先级越高,与其相匹配的设备性能优先级也越高。
14.如权利要求13所述的数据分配系统,其特征在于, 所述数据分配装置,还用于在设定时长到达时,重新确定各在线存储设备的设备性能优先级以及各在线存储设备中已存储的存储数据的数据优先级,并根据重新确定后的各在线存储设备的设备性能优先级以及各已存储数据的数据优先级,将任一已存储数据重新分配到具备与其对应的数据优先级相匹配的设备性能优先级的在线存储设备中,以及,当已存储数据的数据优先级低于设 定的阈值时,将该已存储数据进行离线存储。
【文档编号】G06F3/06GK103853500SQ201210523636
【公开日】2014年6月11日 申请日期:2012年12月7日 优先权日:2012年12月7日
【发明者】宋桂祥, 杜怀忠, 李明, 崔洪涛, 邵杰, 何廷强, 李 远, 白琳, 魏兵, 朱建浩 申请人:中国移动通信集团河南有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1