一种数据云存储系统及方法与流程

文档序号:11386343阅读:314来源:国知局
一种数据云存储系统及方法与流程

本发明涉及数据云处理技术领域,尤其涉及一种数据云存储系统及方法。



背景技术:

随着信息技术的不断发展,以社交网络为代表的在线数据密集型应用迅速发展并普遍被人们接受。在线密集型数据对数据的实时性、交互性、准确性等均有较高的要求,而现有的采用磁盘访问的数据云存储系统具有较高的延迟,已经称为大数据时代影响计算机性能的瓶颈。nosql等新型数据库系统以及云计算的出现,虚拟化和分布式的处理方式的产生均大大提升了计算机系统的服务性能,但都未能从根本上解决计算机磁盘的延迟问题。

随着硬件技术的发展,内存快速传输的特点称为了取代磁盘的选择之一,云系统的存储技术也得以发展。常用的云系统存储技术ramcloud内存云技术中,云系统的数据中心被从磁盘迁移至内存(即动态随机存储器dram)中,并且利用固态硬盘(ssd)或者机械硬盘(hdd)作为数据备份的载体,从而能够实现数据在内存系统中的快速访问。但是这种内存云系统的构建受到内存高昂价格的影响,并且内存容量较低,功耗较大,使得大规模的内存云集群成本过高,并且无法大规模应用在海量的在线密集型应用的数据存储中。同时,随着用户量和用户数据量的增长以及时间的推移,必须使用更多的dram来放置和处理数据。例如,第一年需要使用1pb的dram处理数据,以及需要使用2pb的ssd/hdd进行数据备份,假设每年增加的用户量以及用户数据量相同,那么到第五年,当用户增加的时候,仍然需要添加1pb的dram以及2pb的ssd/hdd。

另外一种云存储方案是在内存云的基础上,采用分级存储管理的方式,引入ssd作为二级存储介质,并通过各种处理策略对存储空间内的数据的重要性或者访问频繁程度进行排名,选取重要性最高或者访问最频繁的部分数据(例如15%的数据)迁移至内存中,次之的部分数据(例如45%的数据)迁移至ssd中,其余数据被保存到hdd中,然后在hdd中再对所有数据进行备份。这种解决方法虽然在一定程度上解决了内存云的成本和功耗等问题,但是会因为被放入ssd或者hdd中的数据存在较长的读取延时而给用户体验带来较大的影响。并且,上述对数据进行重要性或者访问频繁程度的统计和排名通常只是短时期的分析,分析结果均为易失性的(因为处理器和内存均是易失性的),因此这种统计分析并不能很好地真正反映用户的访问特征。同时,为了满足用户量以及用户数据量的不断增长,同样需要搭建更庞大的存储结构。例如,第一年需要使用1pb的dram、1pb的ssd以及1pb的hdd,假设每年用户量以及数据量的增长固定,则到了第五年,当用户增加的时候,仍然需要分别添加1pb的dram、ssd以及hdd。并且随着时间的推移以及使用次数的增加,ssd的寿命在降低,无效的存储块越来越多,从而使得可用的ssd容量越来越小,这同样使得整个存储架构中需要添加更多的ssd来满足用户的需求。



技术实现要素:

根据现有技术中存在的上述问题,现提供一种数据云存储系统及方法的技术方案,旨在扩大数据中心的数据存储容量,通过长期自学习统计提升数据存储的可靠性和合理性,满足用户的需求,保证用户体验。

上述技术方案具体包括:

一种数据云存储系统,应用于数据中心的服务器中;其中,包括:

数据存储单元,用于保存数据;

数据迁移单元,连接所述数据存储单元,用于将所述数据存储单元中保存的部分数据迁移至连接所述数据迁移单元的一数据备份单元中进行保存;

保存于所述数据存储单元中的数据的实时性要求高于保存于所述数据备份单元中的数据的实时性要求;

自学习单元,连接所述数据存储单元,用于持续统计使用者对所述数据存储单元中的数据的操作状态,并根据所述操作状态统计得到用于表示所述使用者对所述数据存储单元中保存的数据的实时性要求的统计结果,所述自学习单元将所述统计结果保存于一连接所述自学习单元的结果存储单元中;

所述数据迁移单元还连接所述结果存储单元,用于从所述结果存储单元中获取所述统计结果,并根据所述统计结果选择将部分数据迁移至所述数据备份单元中进行保存;

所述自学习单元持续更新所述结果存储单元中的所述统计结果;

所述结果存储单元被设置在非易失性存储器中。

优选的,该数据云存储系统,其中,所述数据存储单元包括至少一个动态随机存储器。

优选的,该数据云存储系统,其中,所述数据备份单元包括至少一个固态硬盘存储器和/或至少一个机械硬盘存储器。

优选的,该数据云存储系统,其中,所述自学习单元进一步包括:

数据采集模块,用于持续采集得到所述使用者对所述数据存储单元中保存的数据进行操作的操作状态,并输出操作状态信息;

时段设定模块,用于设定一数据采集周期;

自学习模块,分别连接所述数据采集模块和所述时段设定模块,用于根据每个所述数据采集周期内采集得到的所述操作状态信息不断处理得到所述统计结果;

更新模块,连接所述自学习模块,用于根据所述统计结果对所述结果存储单元进行更新。

优选的,该数据云存储系统,其中,所述操作状态信息中包括用于表示使用者对所述数据存储单元中的数据是否存在延时的反馈信息。

优选的,该数据云存储系统,其中,所述数据迁移单元和所述自学习单元被设置于所述服务器的处理器中。

优选的,该数据云存储系统,其中,于所述服务器中设置一可配置多功能数据处理单元,所述可配置多功能数据处理单元设置在南桥以下;

于所述可配置多功能数据处理单元中包括至少一个应用处理器,所述数据迁移单元和所述自学习单元被设置于所述应用处理器中。

优选的,该数据云存储系统,其中,于每个所述应用处理器下分别连接至少一个辅助处理单元,所述数据迁移单元和所述自学习单元同样被设置于所述辅助处理单元中。

优选的,该数据云存储系统,其中,采用现场可编程门阵列实现所述数据迁移单元和所述自学习单元的功能。

一种数据云存储方法,应用于数据中心的服务器中;其中,采用一数据存储单元保存所述服务器中的数据,还包括:

步骤s1,采用一自学习单元持续统计使用者对所述数据存储单元中的数据的操作状态,并根据所述操作状态统计得到用于表示所述使用者对所述数据存储单元中保存的数据的实时性要求的统计结果;

步骤s2,采用一数据迁移单元根据所述统计结果,将所述数据存储单元中的部分数据迁移至一数据备份单元中保存;

所述数据存储单元中保存的数据的实时性要求高于所述数据备份单元中保存的数据的实时性要求;

所述统计结果被保存在一非易失性存储器中,并采用所述自学习单元持续更新所述非易失性存储器中保存的所述统计结果。

优选的,该数据云存储方法,其中,所述数据存储单元中包括至少一个动态随机存储器;

所述数据备份单元中包括至少一个固态硬盘存储器和/或至少一个机械硬盘存储器。

上述技术方案的有益效果是:

1)提供一种数据云存储系统,能够扩大数据中心的数据存储容量,通过长期自学习统计提升数据存储的可靠性和合理性,满足用户的需求,保证用户体验;

2)提供一种数据云存储方法,能够支持上述数据云存储系统工作。

附图说明

图1是本发明的较佳的实施例中,一种数据云存储系统的总体结构示意图;

图2是本发明的较佳的实施例中,自学习模块的结构示意图;

图3是本发明的较佳的实施例中,一种数据云存储方法的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。

根据现有技术中存在的上述问题,现提供一种数据云存储系统,该系统应用在数据中心的服务器中,具体地应用在云存储系统中。该系统的结构具体如图1中所示,包括:

数据存储单元1,用于保存数据;

数据迁移单元2,连接数据存储单元1,用于将数据存储单元1中保存的部分数据迁移至连接数据迁移单元2的一数据备份单元3中进行保存;

保存于数据存储单元中1的数据的实时性要求高于保存于数据备份单元3中的数据的实时性要求;

自学习单元4,连接数据存储单元1,用于持续统计使用者对数据存储单元1中的数据的操作状态,并根据操作状态统计得到用于表示使用者对数据存储单元中保存的数据的实时性要求的统计结果,自学习单元将统计结果保存于一连接自学习单元的结果存储单元5中;

数据迁移单元2还连接结果存储单元5,用于从结果存储单元5中获取统计结果,并根据统计结果选择将部分数据迁移至数据备份单元3中进行保存;

自学习单元4持续更新结果存储单元中的统计结果;

结果存储单元5被设置在非易失性存储器中。

具体地,本实施例中,上述数据云存储系统应用在数据中心的服务器中,因此相对于用户端而言,该数据云存储系统实际为一个云存储和数据云处理的系统。

上述数据云存储系统中首先包括一个数据处理单元1,该数据处理单元1用于保存数据。

相应地,在上述数据云存储系统中还包括一个数据备份单元3,该数据备份单元3同样用于保存数据。

则在上述数据存储单元1和数据备份单元3之间设置一个数据迁移单元2,该数据迁移单元2的作用在于将数据存储单元1中保存的数据迁移至数据备份单元3中。

本实施例中,上述保存于数据存储单元1中的数据的实时性要求需要高于保存在数据备份单元3中的数据的实时性要求,即对于一些实时性要求比较高的数据,数据迁移单元2将其迁移到数据存储单元1中,而对于一些实时性要求较低的数据,数据迁移单元2将其迁移到数据备份单元3中。因此,为了保证数据处理的实时性,上述数据存储单元1应当包括至少一个动态随机存储器(dynamicrandomaccessmemory,dram),即将上述实时性要求较高的数据保存在服务器的内存中。而相应地,上述数据备份单元2应当包括至少一个固态硬盘存储器(solidstatedisk,ssd),优选的实施例中还可以包括一个或多个机械硬盘存储器(harddiskdrive,hdd)。

本实施例中,还包括一个自学习单元4,该自学习单元4通过长期持续采集使用者针对数据存储单元1中数据的操作状态,判断使用者对于不同数据的实时性要求,该自学习单元4之后将用于表示使用者对于不同数据的实时性要求的统计结果保存入一连接自学习单元的结果存储单元5中,并且根据持续采集的使用者对数据的操作状态持续进行统计分析,以持续得到分析结果并保存在结果存储单元5中,即对结果存储单元5中的统计结果进行持续更新。

随后,本实施例中,上述数据迁移单元2连接结果存储单元5,并从结果存储单元5中读取统计结果,根据统计结果将数据存储单元3中实时性要求较低的数据迁移至数据备份单元4中。具体地,可以采用预先设定阈值的方式判断数据的实时性要求的高低,或者采用预先设定阈值范围的方式来进行判断,具体的判断方式在下文中会详述。

本实施例中,为了保证统计分析的长期性,上述结果存储单元5可以被设置在非易失性存储器中,即上述统计结果可以被保存在非易失性存储器中,从而保证系统掉电不丢失。

则本实施例中,上述自学习单元4可以根据一预设的更新周期对结果存储单元5中的统计结果进行更新,上述更新周期可以为每天、每周或者每月等,并且可以由使用者自行设定,并且由于存储介质掉电不丢失,整个统计分析过程的持续时间可以以年来计算,从而弥补现有技术中只能实现短期统计分析导致无法完全反映用户需求的缺陷。

本发明的较佳的实施例中,如图2中所示,上述自学习单元4进一步包括:

数据采集模块41,用于持续采集得到使用者对数据存储单元1中保存的数据进行操作的操作状态,并输出操作状态信息;

时段设定模块42,用于设定一数据采集周期;

自学习模块43,分别连接数据采集模块41和时段设定模块42,用于根据每个数据采集周期内采集得到的操作状态信息不断处理得到统计结果;

更新模块44,连接自学习模块43,用于根据统计结果对结果存储单元5进行更新。

具体地,本实施例中,上述数据采集模块41持续获取使用者对数据存储单元1中保存的隶属于不同的应用程序的不同的应用数据的实时性要求的操作状态信息并不断处理得到统计结果。

进一步地,上述操作状态信息中包括用于表示使用者对所述数据存储单元中的数据是否存在延时的反馈信息。具体地,上述反馈信息为使用者反馈的是否在意数据延时的信息。例如,使用者在观看视频时,对于视频信息的延时比较在意,则使用者会向系统发送一个反馈信息,该反馈信息用于表示使用者对该视频信息的实时性要求较高。该反馈信息的表示方式可以为使用者投诉该视频信息延时的投诉信息。

相应地,可以设定一个投诉信息的次数阈值,当使用者对于同一个应用程序下相同类型的应用数据的投诉的次数达到上述阈值,则表示使用者对于该应用数据的实时性要求较高,该应用数据需要保留在数据存储单元1中。相反地,当使用者对于同一个应用程序下相同类型的应用数据的投诉的次数未达到上述阈值,则可以将其迁移至数据备份单元3中保存。

或者

可以设定一个投诉信息的次数阈值范围,当使用者对于同一个应用程序下相同类型的应用数据的投诉的次数处于该范围内时,则表示使用者对于该应用数据的实时性要求较高,该应用数据需要保留在数据存储单元1中。相反地,当使用者对于同一个应用程序下相同类型的应用数据的投诉的次数处于该范围外时,则可以将其迁移至数据备份单元3中保存。

当然,数据迁移单元2还可以将数据备份单元3中的数据迁移回数据存储单元1中。例如,使用者初始对于某个应用数据的实时性要求不高,该数据被迁移至数据备份单元3中保存。但随着时间的变化,统计结果显示使用者转而开始关注该应用数据的实时性,此时就需要将保存在数据备份单元3中的数据迁移回数据存储单元1中。

本发明的较佳的实施例中,上述统计结果是针对一定时间周期(例如一年)内的同一个应用程序的相同应用数据进行实时性要求统计后得到的结果。

本发明的一个较佳的实施例中,上述数据迁移单元2和自学习单元4可以被设置在服务器的处理器中。即采用服务器的处理器(cpu和/或gpu)来实现上述数据迁移单元2和自学习单元4的功能。

本发明的另一个较佳的实施例中,上述数据迁移单元2和自学习单元4还可以被设置在处于南桥以下的一可配置多功能数据处理单元中。

具体地,该可配置多功能数据处理单元中设置有至少一个应用处理器,可以采用该应用处理器来处理应用数据,并且采用该应用处理器来实现上述数据迁移单元2和自学习单元4的功能。

并且,由于上述可配置多功能数据处理单元设置在南桥以下,因此当服务器处于空闲时段(即服务器中的处理器和内存均关闭时),依然可以执行自学习的统计分析处理和数据迁移处理。

本发明的另一个较佳的实施例中,于上述设置在南桥以下的可配置多功能数据处理单元中配置至少一个应用处理器,以及于每个应用处理器下再配置多个辅助处理单元。上述数据迁移单元2和自学习单元4同样被设置在辅助处理单元中。因此,可以采用应用处理器和辅助处理单元共同实现数据迁移单元2和自学习单元4的功能,增强数据处理的能力。

具体地,上述辅助处理单元中可以包括一现场可编程门阵列(fieldprogrammablegatearray,fpga)。则可以采用fpga来实现上述数据迁移单元2和自学习单元4的功能。优选的,上述现场可编程门阵列可以为非易失性的现场可编程门阵列(nvfpga),因此,上述自学习单元4是基于新型存储器实现的自学习单元。

则本发明的较佳的实施例中,上述自学习并进行统计分析的过程可以是在线(on-line)的,即通过服务器的处理器实现;也可以是离线(off-line)的,即通过设置在南桥以下的可配置多功能数据处理单元实现。

本发明的一个较佳的实施例中,在数据中心的服务器中,初始设置1pb的dram作为数据存储单元,以及设置2pb容量的ssd作为数据备份单元。则经过一定时间(例如经过一年)的自学习之后发现用户a在时间t1内对应用程序a_x的数据a_x_y的延时并不关心,即用户a可以接受将数据a_x_y放入ssd中,那么数据迁移单元2就可以将数据a_x_y放入ssd中。同样地,通过统计分析发现用户b在时间t2内对应用程序b_x的数据b_x_y的延时并不关心,则也可以将数据b_x_y放入ssd中。经过长时间的自学习后,越来越多不同用户的数据被放入ssd中,那么原来的dram就可以放入更多新的数据进行处理。假设经过一定时间的自学习后,放入ssd中的数据为0.5pb,那么就相当于dram的容量变相增加了0.5pb,从而变成1.5pb。

并且,随着时间的推移,在第二年及以后,当用户量以及用户数据量增加的时候,只需要再增加0.5pb的dram就可以满足用户需求,这与现有技术中的云存储解决方案相比大大降低了增加dram带来的成本和功耗。

本发明的较佳的实施例中,基于上文中所述的数据云存储系统,现提供一种数据云存储方法,该方法同样应用在数据中心的服务器中,于服务器中首先设置一数据存储单元,该数据存储单元用于保存服务器中的数据。

则该方法具体如图3所述,包括:

步骤s1,采用一自学习单元持续统计使用者对数据存储单元中的数据的操作状态,并根据操作状态统计得到用于表示使用者对数据存储单元中保存的数据的实时性要求的统计结果;

步骤s2,采用一数据迁移单元根据统计结果,将数据存储单元中的部分数据迁移至一数据备份单元中保存;

数据存储单元中保存的数据的实时性要求高于数据备份单元中保存的数据的实时性要求;

统计结果被保存在一非易失性存储器中,并采用自学习单元持续更新非易失性存储器中保存的统计结果。

本发明的较佳的实施例中:

数据存储单元中包括至少一个动态随机存储器;

数据备份单元中包括至少一个固态硬盘存储器和/或至少一个机械硬盘存储器。

以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1