CN104281533B - 一种存储数据的方法及装置 - Google Patents

一种存储数据的方法及装置 Download PDF

Info

Publication number
CN104281533B
CN104281533B CN201410479933.3A CN201410479933A CN104281533B CN 104281533 B CN104281533 B CN 104281533B CN 201410479933 A CN201410479933 A CN 201410479933A CN 104281533 B CN104281533 B CN 104281533B
Authority
CN
China
Prior art keywords
data
storage
access
algorithm
correcting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410479933.3A
Other languages
English (en)
Other versions
CN104281533A (zh
Inventor
程茂
张勤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Toyou Feiji Electronics Co., Ltd.
Original Assignee
SHENZHEN ZHONGBO KECHUANG INFORMATION TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN ZHONGBO KECHUANG INFORMATION TECHNOLOGY Co Ltd filed Critical SHENZHEN ZHONGBO KECHUANG INFORMATION TECHNOLOGY Co Ltd
Priority to CN201410479933.3A priority Critical patent/CN104281533B/zh
Publication of CN104281533A publication Critical patent/CN104281533A/zh
Application granted granted Critical
Publication of CN104281533B publication Critical patent/CN104281533B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种存储数据的方法及装置,方法包括在接收到访问第一数据的访问请求时,记录所述第一数据的访问次数和访问时间,并根据所述访问次数和访问时间计算第一数据的访问频率;判断所述访问频率是否超过第一预定值,以及判断所述第一数据的存储类型是纠删码存储还是副本存储;若所述访问次数超过第一预定值,并且所述第一数据的存储类型为纠删码存储,则根据副本算法重新存储所述第一数据,并将所述第一数据的存储类型标记为副本存储。通过上述方式,本发明能够既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。

Description

一种存储数据的方法及装置
技术领域
本发明涉及数据存储技术领域,特别是涉及一种存储数据的方法及装置。
背景技术
随着计算机技术和网络技术的发展,数据正以爆炸式的速度增长,根据某研究机构的研究数字显示,2009年网络上存储的数据已经达到0.8ZB,预计在2020年将达到35.2ZB。海量的存储数据对数据存储系统提出更高要求,为了保证海量的存储数据的可用性,通常使用集群系统根据冗余技术来存储数据,其中,冗余技术包括多副本技术或者纠删码技术。
多副本技术是指将数据复制N份,分别存储在集群系统中的不同节点,若其中一个节点中的数据损坏,可从其他节点恢复被损坏数据。虽然多副本技术保证了数据的可用性,但是由于复制N份数据,数据占用空间将会是原始数据的N倍,存储利用率低,并增加了数据管理的复杂度。
纠删码技术(erasure coding,EC)是指将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置,比如磁盘、存储节点或者其它地理位置。纠删码会创建一个数学函数来描述一组数字,这样就可以检查它们的准确性,而且一旦其中一个数字丢失,还可以恢复。纠删码虽然提高了可用性的同时提高了存储利用率,但是纠删码技术需要复杂的计算,文件访问速度相比多副本技术要慢。
另外,数据也有生命周期,不同时期具有不同的意义,例如:数据刚生成时,访问频率比较高,数据价值也最高,而随着时间的推移,访问频率下降,数据的价值也随之下降,但现有技术中的集群系统都是采用单一冗余技术存储数据,集群系统的利用率不高。
发明内容
本发明主要解决的技术问题是提供一种存储数据的方法及装置,能够根据数据的访问频率调整数据在存储数据装置中的存储类型,以及根据不同数据的不同访问频率,选择不同的存储算法进行存储,既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种存储数据的方法,包括:在接收到访问第一数据的访问请求时,记录所述第一数据的访问次数和访问时间,并根据所述访问次数和访问时间计算第一数据的访问频率;判断所述访问频率是否超过第一预定值,以及判断所述第一数据的存储类型是纠删码存储还是副本存储;若所述访问次数超过第一预定值,并且所述第一数据的存储类型为纠删码存储,则根据副本算法重新存储所述第一数据,并将所述第一数据的存储类型标记为副本存储。
其中,删除先前根据所述纠删码算法所存储的所述第一数据。
其中,将所述第一数据加入LRU链表;根据LRU算法从所述LRU链表中获取访问频率最低的第二数据;判断所述第二数据的访问频率是否低于第二预定值;若所述第二数据的访问频率低于第二预定值,则根据纠删码算法重新存储第二数据,并将所述第二数据的存储类型标记为纠删码存储;从所述LRU链表中删除所述第二数据,以及删除先前根据所述副本算法所存储的第二数据。
其中,若第一数据的存储类型为副本存储,则根据LRU算法从所述LRU链表中获取访问频率最低的第三数据;判断所述第三数据的访问频率是否低于第二预定值;若所述第三数据的访问频率低于第二预定值,则根据纠删码算法重新存储第三数据,并将所述第三数据的存储类型标记为纠删码存储;从所述LRU链表中删除所述第三数据,以及删除先前根据所述副本算法所存储的第三数据。
其中,在所述接收访问第一数据的访问请求的步骤之前,还包括:接收存储所述第一数据的存储请求;根据分类策略模型对所述第一数据进行分类,并根据所述第一数据的类型选择存储算法对第一数据进行存储,以及将所述第一数据的存储类型标记为所选存储算法对应的存储类型。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种存储数据装置,包括计算模块,用于在接收访问第一数据的访问请求时,记录所述第一数据的访问次数和访问时间,并根据所述访问次数和访问时间计算所述第一数据的访问频率;第一判断模块,用于判断所述访问频率是否超过第一预定值,以及判断所述第一数据的存储类型是纠删码存储还是副本存储;第一存储模块,用于在所述第一判断模块判断到所述访问次数超过第一预定值,并且所述第一数据的存储类型为纠删码存储时,根据副本算法重新存储所述第一数据,并将所述第一数据的存储类型标记为副本存储。
其中,所述装置还包括第一删除模块;所述第一删除模块用于删除先前根据所述纠删码算法所存储的所述第一数据。
其中,所述装置还包括:加入模块,用于将所述第一数据加入近期最少使用算法LRU链表;第一获取模块,用于根据LRU算法从所述LRU链表中获取访问频率最低的第二数据;第二判断模块,用于判断所述第二数据的访问频率是否低于第二预定值;第二存储模块,用于在所述第二判断模块判断到所述第二数据的访问频率低于第二预定值时,根据纠删码算法重新存储第二数据,并将所述第二数据的存储类型标记为纠删码存储;第二删除模块,用于从所述LRU链表中删除所述第二数据,以及删除先前根据所述副本算法所存储的第二数据。
其中,所述装置还包括:第二获取模块,用于第一判断模块判断到所述第一数据的存储类型为副本存储时,根据LRU算法从所述LRU链表中获取访问频率最低的第三数据;第三判断模块,用于判断所述第三数据的访问频率是否低于第二预定值;存储模块,用于在所述第三判断模块判断到所述第三数据的访问频率低于第二预定值,根据纠删码算法重新存储第三数据,并将所述第三数据的存储类型标记为纠删码存储;第三删除模块,用于从所述LRU链表中删除所述第三数据,以及删除先前根据所述副本算法所存储的第三数据。
其中,所述装置还包括接收模块,用于接收存储所述第一数据的存储请求;分类模块,用于根据分类策略模型对所述第一数据进行分类;选择存储模块,用于根据所述第一数据的类型选择存储算法,并根据所选择的存储算法对第一数据进行存储,以及将所述第一数据的存储类型标记为所选存储算法对应的存储类型。
本发明的有益效果是:区别于现有技术的情况,本发明将访问频率上升,最近被经常的访问的数据的存储类型调整为副本存储,而副本存储的数据访问速度较快,有利提高数据的访问速度;而访问频率下降,最近不被经常的访问的数据的存储类型调整为纠删码存储,而纠删码存储的数据的访问速度不快,但可靠性更高,有利于提高数据的可靠性,简而言之,本发明根据数据的访问频率调整数据在存储数据装置中的存储类型,以及根据不同数据的不同访问频率,选择不同的存储算法进行存储,既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。
附图说明
图1是本发明存储数据装置实施方式的示意图;
图2是本发明存储数据方式第一实施方式的流程图;
图3是本发明存储数据方式第二实施方式的流程图。
具体实施方式
下面结合附图和实施方式对本发明进行详细说明。
请参阅图1,存储数据装置20包括计算模块202、第一判断模块203和第一存储模块204。
计算模块202在接收访问第一数据的访问请求,记录第一数据的访问次数和访问时间,并根据访问次数和访问时间计算第一数据的访问频率,例如:以0时~24时为期限,记录在此时间段内,第一数据的访问次数,则访问次数除以24小时,获得到第一数据每小时的访问频率,对于计算第一数据的访问频率的具体期限,可根据实际情况设定。访问请求可来源于客户端,例如:计算机、移动终端等等,也可以是用户直接在存储数据装置20上进行操作,访问第一数据。
第一判断模块203判断访问频率是否超过第一预定值,以及判断第一数据的存储类型是纠删码存储还是副本存储。存储类型包括纠删码存储和副本存储,纠删码存储所对应的存储算法为纠删码存储算法,副本存储所对应的存储算法为副本存储算法。
在第一判断模块203判断到访问频率超过第一预定值,并且第一数据的存储类型为纠删码存储时,第一存储模块204根据副本算法重新存储第一数据,并将第一数据的存储类型标记为副本存储。对于存储数据装置20内所存储的数据可通过元数据进行维护,例如:每一个数据都配置一个元数据,元数据是一个二维数据,其中,一维记录数据的存储地址,另一维记录数据的存储类型,所有的元数据集中管理,因此,第一数据的存储类型标记为副本存储可具体为:将第一数据所对应的元数据中的存储类型标记为副本存储。
需要说明的是:通过副本存储的数据在访问速度明显优于通过纠删码存储的数据,在数据的访问频率上升,并超过第一预定值时,将根据副本算法重新存储该数据,有利于提高访问数据的速度,提高存储数据装置20的利用率。
存储数据装置20还包括删除模块205、加入模块206、第一获取模块207、第二判断模块208、第二存储模块209、第二删除模块210、第二获取模块211、第三判断模块212、第三存储模块213、第三删除模块214、接收模块215、分类模块216和选择存储模块217。
删除模块205删除先前根据纠删码算法所存储的第一数据,避免出现同一份数据在存储数据装置20存储两份的情况。
在第一数据重新存储完成后,将第一数据加入LRU(Least Recently Used,近期最少使用算法)链表中。LRU链表维护根据副本算法所存储的数据,LRU链表是根据LRU算法将频率过低的数据置换出LRU链表。第一获取模块207根据LRU算法从LRU链表中获取访问频率最低的第二数据。第二判断模块208判断第二数据的访问频率是否低于第二预定值。在第二判断模块208判断到第二数据的访问频率低于第二预定值时,第二存储模块209根据纠删码算法重新存储第二数据,并将第二数据的存储类型标记为纠删码存储。
值得说明的是:相比于通过副本存储的数据,通过纠删码存储的数据可靠性更高,但是访问速度较慢,而将访问频率低的数据,将数据从LRU链表中删除,并且根据纠删码算法重新存储该数据,有利于降低存储数据装置20的总体拥有成本,提高存储数据装置20的利用率。
进一步的,第二删除模块210从LRU链表中删除第二数据,以及删除先前根据所副本算法所存储的第二数据,避免出现同一份数据存储有两份的情况。
在第一判断模块203判断到所述访问频率没有超过第一预定值时,存储数据装置20不进行处理。在第一判断模块203判断到第一数据的存储类型为副本存储时,第二获取模块211根据LRU算法从LRU链表中获取访问频率最低的第三数据。第三判断模块212判断第三数据的访问频率是否低于第二预定值。在第三判断模块212判断到第三数据的访问频率低于第二预定值时,存储删除模块213根据纠删码算法重新存储第三数据,并将第三数据的存储类型标记为纠删码存储。第三删除模块214从LRU链表中删除第三数据,以及删除先前根据副本算法所存储的第三数据。
值得说明的是:为了提高存储数据装置20的运行速度,可设置一个重新存储数据的时间点,在该时间点以外的其它时间里面,存储数据装置20仅记录数据的访问次数和访问频率,不执行记录数据的访问次数和访问时间后续的处理步骤;只有在该时间点时,存储数据装置20才执行记录数据的访问次数和访问时间后续的处理步骤。
接收模块215接收存储第一数据的存储请求。分类模块216根据分类策略模型对第一数据进行分类。选择存储模块217根据第一数据的类型选择存储算法,并根据所选择的存储算法对第一数据进行存储,以及将第一数据的存储类型标记为所选存储算法对应的存储类型。存储算法包括副本算法和纠删码算法。
不同的行业和应用场景对数据,其读写的频率都是不一样的,因此,在初次存储时,对数据进行分类,根据其分类选择存储算法进行存储。对于数据分类可根据数据的后缀名进行分类,1)将压缩文件(数据的后缀名包括tar.gz、rar、zip、tar、jar)、图片文件(数据的后缀名包括jpg、png、jpeg、gif)、音视频文件(数据的后缀名包括mp3、wma、mp4、avi、mkv、rmvb、wav、3gp、flv)、二进制文件(数据的后缀名包括dll、exe、so、sys等)和文本文件(数据的后缀名包括pdf、chm)归为第一类,由于第一类的数据通常用于归档和只读,很少被修改,因此,第一类型对应纠删码算法;2)将工程文件(数据的后缀名包括qdf、ses、ezp)、文本文件(数据的后缀名包括docx、ppt、xls、txt、log、rtf)和数据库文件(数据的后缀名包括dbf、dat、mdb)归入第二类,第二类数据可能会被经常修改,因此,第二类数据对应副本算法。数据的后缀为其它类型的,默认采用多副本算法进行存储。当然,对文件进行类型时,也可根据其它方式进行分类,例如:根据数据的来源进行分类,根据数据名进行分类等等。
需要说明的是:存储数据装置20并不是仅指单一的一个设备,它也可以为由多个节点组成的数据集群系统;本发明的数据也可以为文件。
在本发明实施方式中,将访问频率上升,最近被经常的访问的数据的存储类型调整为副本存储,而副本存储的数据访问速度较快,有利提高数据的访问速度;而访问频率下降,最近不被经常的访问的数据的存储类型调整为纠删码存储,而纠删码存储的数据的访问速度不快,但可靠性更高,有利于提高数据的可靠性,简而言之,本发明根据数据的访问频率调整数据在存储数据装置中的存储类型,以及根据不同数据的不同访问频率,选择不同的存储算法进行存储,既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。
本发明又提供存储数据的方法实施方式。请参阅图2,方法包括:
步骤S301:在接收到访问第一数据的访问请求时,记录第一数据的访问次数和访问时间,以及根据访问次数和访问时间计算第一数据的访问频率;
访问频率是指一段时间内访问数据的次数,不同时间段内同一数据的访问不一定相同。
步骤S302:判断访问频率是否超过第一预定值,以及判断第一数据的存储类型是纠删码存储还是副本存储,若访问次数超过第一预定值,并且第一数据的存储类型为纠删码存储,则进入步骤S303,若第一数据的存储类型为副本存储,则进入步骤S304;
访问频率超过第一预定值,说明第一数据最近经常被访问,但纠删码存储的数据访问速度较慢,并不适合经常被访问的数据。
步骤S303:根据副本算法重新存储第一数据,并将第一数据的存储类型标记为副本存储;
副本存储的数据的访问速度比较快,对于最近经常被访问的数据采用副本存储,能够有效提高访问速度。
步骤S304:根据LRU算法从LRU链表中获取访问频率最低的第三数据;
对于使用副本存储的数据加入LRU链表,由LRU链表进行维护,随着时间的推移,若数据的访问频率下降,或者,很少被访问时,可将数据存储为纠删码存储,提高数据的可靠性。
步骤S305:判断第三数据的访问频率是否低于第二预定值,若第三数据的访问频率是否低于第二预定值,则进入步骤S306,否则进入步骤S307;
第二预定值是第三数据是否被置换出LRU链表的阈值,若第三数据的访问频率低于第二预定值,则说明第三数据不经常被访问,可将第三数据的存储类型调整为纠删码存储,以提高存储数据装置的可靠性。
步骤S306:根据纠删码算法重新存储第三数据,并将第三数据的存储类型标记为纠删码存储,以及,从LRU链表中删除第三数据,以及删除先前根据副本算法所存储的第三数据。
将第三数据从LRU链表中删除第三数据,以及删除先前根据副本算法所存储的第三数据,能够有效避免同一份数据存储两份情况,浪费存储数据装置的存储资源。
步骤S307:不处理。
在本发明实施方式中,将访问频率上升,最近被经常的访问的数据的存储类型调整为副本存储,而副本存储的数据访问速度较快,有利提高数据的访问速度;而访问频率下降,最近不被经常的访问的数据的存储类型调整为纠删码存储,而纠删码存储的数据的访问速度不快,但可靠性更高,有利于提高数据的可靠性,简而言之,本发明根据数据的访问频率调整数据在存储数据装置中的存储类型,以及根据不同数据的不同访问频率,选择不同的存储算法进行存储,既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。
请参阅图3,方法包括:
步骤S402:在接收到访问第一数据的访问请求时,记录第一数据的访问次数和访问时间,以及根据访问次数和访问时间计算第一数据的访问频率;
访问频率是指一段时间内访问数据的次数。
步骤S403:判断访问频率是否超过第一预定值,以及判断第一数据的存储类型是纠删码存储还是副本存储,若访问次数超过第一预定值,并且第一数据的存储类型为纠删码存储,则进入步骤S404;
访问频率超过第一预定值,说明第一数据最近经常被访问,纠删码存储的数据访问速度较慢,并不适合经常被访问的数据。
步骤S404:根据副本算法重新存储第一数据,并将第一数据的存储类型标记为副本存储;
副本存储的数据的访问速度比较快,对于经常被访问的数据采用副本存储,能够有效提高访问速度。
步骤S405:删除先前根据纠删码算法所存储的第一数据;
根据副本算法重新存储第一数据,是指在存储数据装置中存储多一份第一数据,而先前根据纠删码算法所存储的另一份第一数据仍然保留在存储数据装置中,为了避免浪费存储数据装置的存储资源,还需把先前存储的另一份第一数据删除掉。
步骤S406:将第一数据加入LRU链表;
LRU链表维护根据副本算法所存储的数据。LRU链表的原则是指将最近最少使用的数据置换出LRU链表,将最近最常用的数据加入LRU链表。
步骤S407:根据LRU算法从LRU链表中获取访问频率最低的第二数据;
需要说明的是:此处的访问频率是指一个单位时间的访问次数,数据在不同的单位时间,其访问频率不一定相同,例如:以小时为单位,数据的在13点~14点之间的访问频率与在15点~16点之间的访问频率不一定相同。
步骤S408:判断第二数据的访问频率是否低于第二预定值,若第二数据的访问频率低于第二预定值,则进入步骤S409,否则,不进行处理。
第二数据的访问频率低于第二预定值,则说明第二数据最近很少被访问。若第二数据的访问频率高于第二预定值,则说明第二数据最近被经常使用,无需将第二数据置换出LRU链表。
步骤S409:根据纠删码算法重新存储第二数据,并将第二数据的存储类型标记为纠删码存储,以及,从LRU链表中删除第二数据,以及删除先前根据副本算法所存储的第二数据;
对最近很少被访问的数据,根据纠删码算法重新存储,有利于提高数据的可靠性。
进一步的,若步骤S403中判断到第一数据的存储类型为副本存储,则方法还包括:
步骤S410:根据LRU算法从LRU链表中获取访问频率最低的第三数据;
LRU链表用于进行维护根据副本算法所存储的数据。
步骤S411:判断第三数据的访问频率是否低于第二预定值,若第三数据的访问频率是否低于第二预定值,则进入步骤S412,否则不处理;
第二预定值是第三数据是否被置换出LRU链表的阈值,若第三数据的访问频率低于第二预定值,则说明第三数据最近不经常被访问,可将第三数据的存储类型调整为纠删码存储,以提高存储数据装置的可靠性。
步骤S412:根据纠删码算法重新存储第三数据,并将第三数据的存储类型标记为纠删码存储,以及,从LRU链表中删除第三数据,以及删除先前根据副本算法所存储的第三数据。
将第三数据从LRU链表中删除第三数据,以及删除先前根据副本算法所存储的第三数据,能够有效避免同一份数据存储两份情况,浪费存储数据装置的存储资源。
进一步的,在步骤S402之前,方法还包括:
步骤S400:接收存储第一数据的存储请求;
存储请求用于请求在存储数据装置上存储第一数据,当然,存储数据装置接收到存储请求后,还可检查自身的存储空间是否已经存储了相同的数据,若存储有相同数据,则直接返回存储完成信息。
步骤S401:根据分类策略模型对第一数据进行分类,并根据第一数据的类型选择存储算法对第一数据进行存储,以及将第一数据的存储类型标记为所选存储算法对应的存储类型;
存储算法包括副本算法和纠删码算法,副本算法对应的存储类型为副本存储,纠删码算法对应的存储类型为纠删码存储。
不同的行业和应用场景对数据,其读写的频率都是不一样的,因此,在初次存储时,对数据进行分类,根据其分类选择存储算法进行存储。对于数据分类可根据数据的后缀名进行分类,1)将压缩文件(数据的后缀名包括tar.gz、rar、zip、tar、jar)、图片文件(数据的后缀名包括jpg、png、jpeg、gif)、音视频文件(数据的后缀名包括mp3、wma、mp4、avi、mkv、rmvb、wav、3gp、flv)、二进制文件(数据的后缀名包括dll、exe、so、sys等)和文本文件(数据的后缀名包括pdf、chm)归为第一类,由于第一类的数据通常用于归档和只读,很少被修改,因此,第一类型对应纠删码算法;2)将工程文件(数据的后缀名包括qdf、ses、ezp)、文本文件(数据的后缀名包括docx、ppt、xls、txt、log、rtf)和数据库文件(数据的后缀名包括dbf、dat、mdb)归入第二类,第二类数据可能会被经常修改,因此,第二类数据对应副本算法。数据的后缀为其它类型的,默认采用多副本算法进行存储。当然,对文件进行类型时,也可根据其它方式进行分类,例如:根据数据的来源进行分类,根据数据名进行分类等等。
在本发明实施方式中,将访问频率上升,最近被经常的访问的数据的存储类型调整为副本存储,而副本存储的数据访问速度较快,有利提高数据的访问速度;而访问频率下降,最近不被经常的访问的数据的存储类型调整为纠删码存储,而纠删码存储的数据的访问速度不快,但可靠性更高,有利于提高数据的可靠性,简而言之,本发明根据数据的访问频率调整数据在存储数据装置中的存储类型,以及根据不同数据的不同访问频率,选择不同的存储算法进行存储,既保证数据存储装置的访问速度,又保证数据存储装置的可靠性,提高数据存储装置的利用率。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种存储数据的方法,其特征在于,包括:
在接收到访问第一数据的访问请求时,记录所述第一数据的访问次数和访问时间,并根据所述访问次数和访问时间计算第一数据的访问频率;
设置一个重新存储数据的时间点,在该时间点以外的其它时间里面,仅记录数据的访问次数和访问频率,不执行记录数据的访问次数和访问时间后续的处理步骤,只有在该时间点时,才执行记录数据的访问次数和访问时间后续的处理步骤;
判断所述访问频率是否超过第一预定值,以及判断所述第一数据的存储类型是纠删码存储还是副本存储;
若所述访问次数超过第一预定值,并且所述第一数据的存储类型为纠删码存储,则根据副本算法重新存储所述第一数据,并将所述第一数据的存储类型标记为副本存储;
删除先前根据纠删码算法所存储的所述第一数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述第一数据加入LRU链表;
根据LRU算法从所述LRU链表中获取访问频率最低的第二数据;
判断所述第二数据的访问频率是否低于第二预定值;
若所述第二数据的访问频率低于第二预定值,则根据纠删码算法重新存储第二数据,并将所述第二数据的存储类型标记为纠删码存储;
从所述LRU链表中删除所述第二数据,以及删除先前根据所述副本算法所存储的第二数据。
3.根据权利要求2所述的方法,其特征在于,
若第一数据的存储类型为副本存储,则根据LRU算法从所述LRU链表中获取访问频率最低的第三数据;
判断所述第三数据的访问频率是否低于第二预定值;
若所述第三数据的访问频率低于第二预定值,则根据纠删码算法重新存储第三数据,并将所述第三数据的存储类型标记为纠删码存储;
从所述LRU链表中删除所述第三数据,以及删除先前根据所述副本算法所存储的第三数据。
4.根据权利要求1所述的方法,其特征在于,在所述接收访问第一数据的访问请求的步骤之前,还包括:
接收存储所述第一数据的存储请求;
根据分类策略模型对所述第一数据进行分类,并根据所述第一数据的类型选择存储算法对第一数据进行存储,以及将所述第一数据的存储类型标记为所选存储算法对应的存储类型。
5.一种存储数据装置,其特征在于,包括:
计算模块,用于在接收到访问第一数据的访问请求时,记录所述第一数据的访问次数和访问时间,并根据所述访问次数和访问时间计算所述第一数据的访问频率,在重新存储数据的时间点以外的时间,仅记录数据的访问次数和访问频率;
第一判断模块,用于判断所述访问频率是否超过第一预定值,以及判断所述第一数据的存储类型是纠删码存储还是副本存储;
第一存储模块,用于在所述第一判断模块判断到所述访问次数超过第一预定值,并且所述第一数据的存储类型为纠删码存储时,根据副本算法重新存储所述第一数据,并将所述第一数据的存储类型标记为副本存储;
第一删除模块,用于删除先前根据纠删码算法所存储的所述第一数据。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
加入模块,用于将所述第一数据加入近期最少使用算法LRU链表;
第一获取模块,用于根据LRU算法从所述LRU链表中获取访问频率最低的第二数据;
第二判断模块,用于判断所述第二数据的访问频率是否低于第二预定值;
第二存储模块,用于在所述第二判断模块判断到所述第二数据的访问频率低于第二预定值时,根据纠删码算法重新存储第二数据,并将所述第二数据的存储类型标记为纠删码存储;
第二删除模块,用于从所述LRU链表中删除所述第二数据,以及删除先前根据所述副本算法所存储的第二数据。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于第一判断模块判断到所述第一数据的存储类型为副本存储时,根据LRU算法从所述LRU链表中获取访问频率最低的第三数据;
第三判断模块,用于判断所述第三数据的访问频率是否低于第二预定值;
存储模块,用于在所述第三判断模块判断到所述第三数据的访问频率低于第二预定值,根据纠删码算法重新存储第三数据,并将所述第三数据的存储类型标记为纠删码存储;
第三删除模块,用于从所述LRU链表中删除所述第三数据,以及删除先前根据所述副本算法所存储的第三数据。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括
接收模块,用于接收存储所述第一数据的存储请求;
分类模块,用于根据分类策略模型对所述第一数据进行分类;
选择存储模块,用于根据所述第一数据的类型选择存储算法,并根据所选择的存储算法对第一数据进行存储,以及将所述第一数据的存储类型标记为所选存储算法对应的存储类型。
CN201410479933.3A 2014-09-18 2014-09-18 一种存储数据的方法及装置 Active CN104281533B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410479933.3A CN104281533B (zh) 2014-09-18 2014-09-18 一种存储数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410479933.3A CN104281533B (zh) 2014-09-18 2014-09-18 一种存储数据的方法及装置

Publications (2)

Publication Number Publication Date
CN104281533A CN104281533A (zh) 2015-01-14
CN104281533B true CN104281533B (zh) 2018-03-20

Family

ID=52256427

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410479933.3A Active CN104281533B (zh) 2014-09-18 2014-09-18 一种存储数据的方法及装置

Country Status (1)

Country Link
CN (1) CN104281533B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095352B (zh) * 2015-06-19 2019-03-05 曙光信息产业股份有限公司 应用于分布式系统的数据处理方法及装置
CN106649406B (zh) 2015-11-04 2020-04-28 华为技术有限公司 一种自适应存储文件的方法和装置
CN105677742B (zh) * 2015-12-30 2019-07-05 深圳市瑞驰信息技术有限公司 一种存储文件的方法及装置
CN106095807B (zh) * 2016-05-31 2019-08-16 中广天择传媒股份有限公司 一种分布式文件系统纠删码缓存装置及其缓存方法
CN107817947B (zh) * 2016-09-14 2021-03-26 北京金山云网络技术有限公司 一种数据存储方法、装置及系统
CN106775459B (zh) * 2016-11-28 2020-06-02 北京同有飞骥科技股份有限公司 一种基于ft-1500a处理器的安全分布式文件系统
CN109150792B (zh) 2017-06-15 2022-03-08 杭州海康威视数字技术股份有限公司 一种提高数据存储安全性方法及装置
CN107357685B (zh) * 2017-07-11 2019-06-18 清华大学 一种数据存储的容错冗余方法及设备
CN107506284B (zh) * 2017-08-31 2021-06-15 麒麟合盛网络技术股份有限公司 日志处理方法及装置
CN108196795B (zh) * 2017-12-30 2020-09-04 惠龙易通国际物流股份有限公司 一种数据存储方法、设备及计算机存储介质
CN112748868A (zh) * 2019-10-31 2021-05-04 北京白山耘科技有限公司 数据存储方法和装置
CN111858497A (zh) * 2020-07-31 2020-10-30 北京金山云网络技术有限公司 一种存储类型转换方法、装置及设备
CN113111032B (zh) * 2021-04-20 2022-03-08 河南水利与环境职业学院 一种档案管理系统数据归档方法和系统
CN114936188A (zh) * 2022-05-30 2022-08-23 重庆紫光华山智安科技有限公司 数据处理方法、装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102270161A (zh) * 2011-06-09 2011-12-07 华中科技大学 一种基于纠删码的多等级容错数据存储、读取和恢复方法
CN103118133A (zh) * 2013-02-28 2013-05-22 浙江大学 基于文件访问频次的混合云存储方法
CN103631666A (zh) * 2012-08-24 2014-03-12 中兴通讯股份有限公司 数据冗余容错的适配管理设备、服务设备、系统及方法
CN103838860A (zh) * 2014-03-19 2014-06-04 华存数据信息技术有限公司 一种基于动态副本策略的文件存储系统及其存储方法
CN103942116A (zh) * 2014-04-24 2014-07-23 深圳市中博科创信息技术有限公司 一种对数据进行容错处理的方法及数据处理系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103858116B (zh) * 2011-08-09 2015-09-02 Lsi公司 I/o设备及计算主机互操作

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102270161A (zh) * 2011-06-09 2011-12-07 华中科技大学 一种基于纠删码的多等级容错数据存储、读取和恢复方法
CN103631666A (zh) * 2012-08-24 2014-03-12 中兴通讯股份有限公司 数据冗余容错的适配管理设备、服务设备、系统及方法
CN103118133A (zh) * 2013-02-28 2013-05-22 浙江大学 基于文件访问频次的混合云存储方法
CN103838860A (zh) * 2014-03-19 2014-06-04 华存数据信息技术有限公司 一种基于动态副本策略的文件存储系统及其存储方法
CN103942116A (zh) * 2014-04-24 2014-07-23 深圳市中博科创信息技术有限公司 一种对数据进行容错处理的方法及数据处理系统

Also Published As

Publication number Publication date
CN104281533A (zh) 2015-01-14

Similar Documents

Publication Publication Date Title
CN104281533B (zh) 一种存储数据的方法及装置
JP6373328B2 (ja) メモリ管理での重複排除のための参照ブロックの参照セットへの集約
CA2910211C (en) Object storage using multiple dimensions of object information
US8799238B2 (en) Data deduplication
US9454321B1 (en) Workload-driven storage configuration management
CN107102819B (zh) 向固态硬盘写入数据的方法及设备
US20160085469A1 (en) Storage system
US11093387B1 (en) Garbage collection based on transmission object models
US8396840B1 (en) System and method for targeted consistency improvement in a distributed storage system
US11232070B2 (en) Metadata compaction in a distributed storage system
US20150227603A1 (en) Asynchronous namespace maintenance
US11151030B1 (en) Method for prediction of the duration of garbage collection for backup storage systems
US9185188B1 (en) Method and system for determining optimal time period for data movement from source storage to target storage
US8468134B1 (en) System and method for measuring consistency within a distributed storage system
US20180150472A1 (en) Method and apparatus for file compaction in key-value store system
CN103377137A (zh) 使用增强的频繁块检测进行存储去重的方法和系统
US20170123678A1 (en) Garbage Collection for Reference Sets in Flash Storage Systems
US8849768B1 (en) Systems and methods for classifying files as candidates for deduplication
EP3532938A1 (en) Systems and methods for random to sequential storage mapping
US20200034040A1 (en) Data Architecture Based on Sub-allocation and References from Fragmented Data Blocks
WO2021145915A1 (en) Memory health tracking for differentiated data recovery configurations
US9020902B1 (en) Reducing head and tail duplication in stored data
US11176034B2 (en) System and method for inline tiering of write data
US20210240666A1 (en) Displaying an alert and options when deleting a file that is associated with a sequence of files
CN103810114A (zh) 分配存储空间的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190904

Address after: 100089 Floor 1-4, No. 2 Building, No. 9 Courtyard, Dijin Road, Haidian District, Beijing

Patentee after: Beijing Toyou Feiji Electronics Co., Ltd.

Address before: 518057 Room 1402, Feiyada Science and Technology Building, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: Shenzhen Zhongbo Kechuang Information Technology Co., Ltd.