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

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

Info

Publication number
CN106170757B
CN106170757B CN201480016989.3A CN201480016989A CN106170757B CN 106170757 B CN106170757 B CN 106170757B CN 201480016989 A CN201480016989 A CN 201480016989A CN 106170757 B CN106170757 B CN 106170757B
Authority
CN
China
Prior art keywords
data
flash
memory
address
storage
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
CN201480016989.3A
Other languages
English (en)
Other versions
CN106170757A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN106170757A publication Critical patent/CN106170757A/zh
Application granted granted Critical
Publication of CN106170757B publication Critical patent/CN106170757B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers

Abstract

本发明公开了一种数据存储方法及装置,涉及电子信息领域,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。具体方案为:从内存中获取数据及第一Flash地址,根据第一Flash地址将数据由内存迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存。本发明用于数据存储。

Description

一种数据存储方法及装置
技术领域
本发明涉及电子信息领域,尤其涉及一种数据存储方法及装置。
背景技术
Flash(Flash Memory,闪存)存储器属于内存器件的一种,是一种不挥发性内存,在没有电流供应的条件下也能够长久地保持数据。Flash存储器可以用作缓存或分级存储。
当Flash存储器用作分级存储时,因为分级存储的迁移周期较长,一般为一天,这样使得数据不能实现实时迁移。
而当Flash存储器用作缓存时,将HDD(Hard Disk,硬盘)中的热数据进行实时迁移,迁移至Flash存储器中,当Flash中的数据变冷时,将Flash中的数据迁移至硬盘,如果要访问的数据存储在Flash存储器中,则可以直接在Flash存储器中读取或写入,相比于从HDD中读取或写入数据,速度有所提高,但这种应用场景中,因为数据要实现实时迁移,因此Flash存储器的写次数较多,对Flash存储器的使用寿命损耗较高。
发明内容
本发明的实施例提供一种数据存储方法及装置,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种数据存储方法,包括:
从内存中获取数据及第一闪存Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间;
根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器;
当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据;
当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
结合第一方面,在第一种可能的实现方式中,所述将所述数据由所述Flash存储器迁移至硬盘,包括:
为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的;
根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间。
结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
对所述数据进行去重压缩,根据所述第一Flash地址将去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
结合第一方面或第一方面的第一种可能的实现方式,在第三种可能的实现方式中,从内存中获取数据及第一闪存Flash地址之前,还包括:
判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
结合第一方面至第一方面的第三种可能的实现方式中任一实现方式,在第四种可能的实现方式中,所述方法还包括:
当所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
第二方面,本发明实施例提供一种数据存储装置,包括:
获取单元,用于从内存中获取数据及第一闪存Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间;
迁移单元,用于根据所述第一Flash地址将所述获取单元获取的所述数据由所述内存批量迁移至所述Flash存储器;当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据;
所述迁移单元,还用于当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
结合第二方面,在第一种可能的实现方式中,
所述迁移单元,具体用于为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的。
结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,
所述数据存储装置还包括数据处理单元,用于在所述内存中将所述数据进行去重压缩处理;
所述迁移单元,还用于根据所述第一Flash地址将所述数据处理单元去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
结合第二方面或第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述数据存储装置还包括判断单元;
所述判断单元,用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述迁移单元,还具体用于当所述判断单元的判断结果为所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
结合第二方面至第二方面的第三种可能的实现方式中任一实现方式,在第四种可能的实现方式中,
所述迁移单元,还用于当所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
第三方面,本发明实施例提供一种数据处理装置,包括处理器、存储器及总线,所述处理器及所述存储器通过所述总线相互连接,所述存储器包括内存、闪存Flash存储器及硬盘;
其中,所述处理器,用于从内存中获取数据及第一闪存Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据,当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
结合第三方面,在第一种可能的实现方式中,
所述处理器,具体用于为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的。
结合第三方面或第三方面的第一种可能的实现方式中任一实现方式,在第二种可能的实现方式中,
所述数据存储装置还包括数据处理单元,用于在所述内存中将所述数据进行去重压缩处理;
所述迁移单元,还用于根据所述第一Flash地址将所述数据处理单元去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
结合第三方面或第三方面的第一种可能的实现方式中任一实现方式,在第三种可能的实现方式中,
所述处理器,还用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值,当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
结合第三方面至第三方面的第三种可能的实现方式中任一实现方式,在第四种可能的实现方式中,
所述处理器,还用于当所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
本发明实施例提供的一种数据存储方法及装置,通过使用Flash地址对数据存储装置中的Flash存储器的存储空间及硬盘的存储空间进行统一编址,从内存中获取数据及第一Flash地址,根据第一Flash地址将数据由内存迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据存储方法流程示意图;
图2为本发明实施例提供的一种数据传输流向示意图;
图3为本发明实施例提供的一种数据存储装置结构示意图;
图4为本发明实施例提供的另一种数据存储装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据存储方法,应用于数据存储装置,可选的,该数据存储装置可以是电脑等电子设备,本发明对此不做限制。参照图1所示,本实施例提供的数据存储方法包括以下步骤:
101、从内存中获取数据及第一Flash(闪存)地址。
该第一Flash地址对应为该数据分配的Flash存储器中的存储空间。优选的,在本实施例中,数据存储装置包括内存、Flash存储器及硬盘,其中,Flash存储器的存储空间及硬盘的存储空间统一用Flash地址进行编址,相当于将硬盘和Flash存储器一起看做一个整体的Flash存储空间进行Flash编址,数据写入数据存储装置的内存中后,为数据分配Flash地址,数据默认地存储在Flash存储器中。
可选的,内存中可以分为热数据区及冷数据区,将读写频繁的数据保留在热数据区,将读写不频繁的数据存储在冷数据区。
102、根据第一Flash地址将数据由内存迁批量移至Flash存储器。
可选的,可以统计数据在内存中第三预设时间内的读写次数,判断数据在第三预设时间内的读写次数是否小于第三阈值,当数据在第三预设时间内的读写次数小于第三阈值时,代表该数据读写次数减少了,需要将其迁移至Flash存储器中,将内存中的空间留给读写次数较高的数据,此时,根据第一Flash地址将数据由内存批量迁移至Flash存储器,这样批量迁移,减少了Flash存储器的写次数。
优选的,结合步骤101中的描述,如果数据读写次数降低,将数据从热数据区迁移至冷数据区时,可以对数据进行去重压缩处理,例如,该数据包括数据块A、数据块B及数据块A,去重压缩处理后,数据块A只需要存储一次就可以,这样,当数据需要迁移至Flash存储器时,因为该数据经过去重压缩处理,原本需要存储多次的相同数据只需要存储一次,这样在数据写入Flash存储器时能够节省Flash存储器中的空间,而且也可以减少Flash存储器介质的写次数,提高Flash存储器的使用寿命。
103、当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据。
优选的,因为数据存储装置中的Flash存储器及硬盘是统一编址的,可以为数据分配第二Flash地址,第二Flash地址对应硬盘中的存储空间,根据第二Flash地址将数据由Flash存储器迁移至硬盘中第二Flash地址对应的存储空间。
可选的,可以统计数据在Flash存储器中第一预设时间内的读写次数,判断该数据在第一预设时间内的读写次数是否小于第一阈值,当该数据在第一预设时间内的读写次数大于或等于第一阈值时,代表该数据的访问频率较高,依旧让该数据存储在Flash存储器中,便于用户进行快速读写,提高数据访问的速度,当该数据在第一预设时间内的读写次数小于第一阈值时,代表该数据访问频率降低了,进一步优选的,如果该数据的写次数大于0,说明对数据进行了修改,则需要将该数据迁移至硬盘中,并且在Flash存储器中删除该数据;如果该数据的写次数为0,说明没有对该数据进行修改,可以直接在Flash存储器中删除该数据,将Flash存储器中的空间留给其他访问频率较高的数据。结合步骤102,第一阈值小于或等于第三阈值,这样就可以使得内存中存储的是访问频率最高的数据,Flash存储器中存储的是访问频率较高的数据,硬盘中存储的是访问频率最低的数据,保证了数据较快得读写速度。
104、当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存。
这样,步骤101-104就可以构成一个循环,数据初次写入数据存储装置时,存储在内存中,如果数据读写次数降低,则将该数据迁移至Flash存储器中,数据的读写次数再次降低,则将该数据迁移至硬盘中,如果数据在硬盘中的读写次数增加,则将该数据迁移至内存中,数据在数据存储装置中保持内存→Flash存储器→硬盘→内存的顺序,按照现有技术中数据的存储方式,当数据在硬盘中读写次数较高时需要将数据迁移至Flash存储器,当数据读写次数较低时,又需要将数据迁移至硬盘,需要不断的在Flash存储器与硬盘之间进行数据迁移,增加了Flash的写次数,对Flash存储器的使用寿命损耗较高。参照图2所示,相比于现有技术,将数据去重压缩后批量写入Flash存储器,而不是随机的写入,也进一步减少了Flash存储器的写次数,增加了Flash存储器的使用寿命,利用Flash存储器读写速度快的特点保证了较高的数据读写速度,将数据写入硬盘中也是批量写入,并不是随机的,因为硬盘读写速度慢,这样批量写入也保证了存储装置的读写性能,并且充分发挥了硬盘吞吐量好的特点;而且相比于将Flash存储器用作缓存的方式,减少了Flash存储器的写次数,减缓了Flash存储器使用寿命的损耗,相比于分级存储的方式,又实现了数据实时迁移,结合了两者的优点。
通过步骤101-104的数据存储方法,当需要访问数据时,如果数据在内存中,则直接对数据进行读写操作,如果数据不在内存中,则根据Flash地址直接在Flash存储器及硬盘中获取数据,保证了较高的读写效率。
本实施例提供的数据存储方法可以应用于两个同步的电子设备,两个电子设备的存储空间当第一个电子设备对数据执行写操作的同时,指示对端设备执行同样的写操作,基于本实施例的数据存储方法,可以使得两个电子设备可以降低两个电子设备之间的时延。当然,本发明实施例提供的数据存储方法,也可以应用于其他场景,对于本发明的应用场景,在此不作限制。
本发明实施例提供的数据存储方法,通过使用Flash地址对数据存储装置中的Flash存储器的存储空间及硬盘的存储空间进行统一编址,从内存中获取数据及第一Flash地址,根据第一Flash地址将数据由内存迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。
结合上述图1对应的实施例,本发明的实施例提供一种数据存储装置,用于执行上述图1对应的实施例中所描述的数据存储方法,参照图3所示,该数据存储装置30包括获取单元301及迁移单元302。
其中,获取单元301,用于从内存中获取数据及第一闪存Flash地址,第一Flash地址对应为该数据分配的Flash存储器中的存储空间。
迁移单元302,用于根据第一Flash地址将获取单元301获取的数据由内存批量迁移至Flash存储器。当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据。
迁移单元302,还用于当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存。
优选的,迁移单元302,具体用于为数据分配第二Flash地址,第二Flash地址对应硬盘中的存储空间,根据第二Flash地址将数据由Flash存储器迁移至硬盘中第二Flash地址对应的存储空间,硬盘的存储空间与Flash存储器的存储空间是统一用Flash地址编址的。
可选的,数据存储装置30还包括判断单元303。
判断单元303,用于在内存中获取数据之前,判断数据在第三预设时间内的读写次数是否小于第三阈值。
迁移单元302,还具体用于当判断单元303的判断结果为数据在第三预设时间内的读写次数小于第三阈值时,根据第一Flash地址将数据由内存批量迁移至Flash存储器,第三阈值大于或等于第一阈值。
可选的,数据存储装置30还包括数据处理单元304,用于在内存中将数据进行去重压缩处理。
迁移单元302,还用于根据第一Flash地址将数据处理单元304去重压缩后的数据由内存批量迁移至Flash存储器。
迁移单元302,还用于当数据在Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据。
本发明实施例提供的数据存储装置,通过使用Flash地址对数据存储装置中的Flash存储器的存储空间及硬盘的存储空间进行统一编址,从内存中获取数据及第一Flash地址,根据第一Flash地址将数据由内存迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。
基于上述图1对应的方法实施例,本发明的实施例提供另一种数据存储装置40,用于执行上述图1对应的实施例中所描述的数据存储方法,参照图4所示,该装置可以嵌入或本身就是微处理计算机,比如:通用计算机、客户定制机、手机终端或平板机等便携设备,该数据存储装置40包括:至少一个处理器401、存储器402及总线403,该至少一个处理器401及存储器402通过总线403连接并完成相互间的通信。
该总线403可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(Peripheral Component Interconnect,外部设备互连)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准体系结构)总线等。该总线403可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中:
处理器401用于执行本发明方案的应用程序代码,执行本发明方案的应用程序代码保存在存储器中,并由处理器401来控制执行。在本实施例中,该存储器包括内存、Flash存储器及硬盘。
该存储器可以是只读存储器ROM或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器EEPROM、只读光盘CD-ROM或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。这些存储器通过总线与处理器相连接。
处理器401可能是一个中央处理器401(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
处理器401,用于调用存储器402中的程序代码,在一种可能的实施方式中,当上述应用程序被处理器401执行时,实现如下功能。
处理器401,用于从内存中获取数据及第一Flash地址,第一Flash地址对应为该数据分配的Flash存储器中的存储空间,根据第一Flash地址将数据由内存批量迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存。
可选的,处理器401,具体用于为数据分配第二Flash地址,第二Flash地址对应硬盘中的存储空间,根据第二Flash地址将数据由Flash存储器迁移至硬盘中第二Flash地址对应的存储空间,硬盘的存储空间与Flash存储器的存储空间是统一用Flash地址编址的。
可选的,处理器401,还用于在内存中获取数据之前,判断数据在第三预设时间内的读写次数是否小于第三阈值,当数据在第三预设时间内的读写次数小于第三阈值时,根据第一Flash地址将数据由内存批量迁移至Flash存储器,第三阈值大于或等于第一阈值。
可选的,处理器401,还用于在内存中将数据进行去重压缩处理,根据第一Flash地址将去重压缩后的数据由内存批量迁移至Flash存储器。
可选的,处理器401,还用于当数据在Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据。
本发明实施例提供的数据存储装置,通过使用Flash地址对数据存储装置中的Flash存储器的存储空间及硬盘的存储空间进行统一编址,从内存中获取数据及第一Flash地址,根据第一Flash地址将数据由内存迁移至Flash存储器,当数据在第一预设时间内的读写次数小于第一阈值时,将数据由Flash存储器迁移至硬盘并在Flash存储器中删除数据,当数据在第二预设时间内的读写次数大于或等于第二阈值时,将数据由硬盘迁移至内存,能够在实现数据实时迁移的同时,减缓Flash存储器使用寿命的损耗。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM(Random Access Memory,随机存储器)、ROM(Read Only Memory,只读内存)、EEPROM(Electrically Erasable Programmable ReadOnly Memory,电可擦可编程只读存储器)、CD-ROM(Compact Disc Read Only Memory,即只读光盘)或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、DSL(Digital Subscriber Line,数字用户专线)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘和碟包括CD(Compact Disc,压缩光碟)、激光碟、光碟、DVD碟(Digital Versatile Disc,数字通用光)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (22)

1.一种数据存储方法,其特征在于,包括:
从内存中获取数据及第一Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间;
根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器;
当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据;
当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
2.根据权利要求1所述的方法,其特征在于,所述将所述数据由所述Flash存储器迁移至硬盘,包括:
为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的;
根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
对所述数据进行去重压缩,根据所述第一Flash地址将去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
4.根据权利要求2所述的方法,其特征在于,所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
对所述数据进行去重压缩,根据所述第一Flash地址将去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
5.根据权利要求1所述的方法,其特征在于,从内存中获取数据及第一Flash地址之前,还包括:
判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
6.根据权利要求2所述的方法,其特征在于,从内存中获取数据及第一Flash地址之前,还包括:
判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,包括:
当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据,包括:
当确定所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
8.一种数据存储装置,其特征在于,包括:
获取单元,用于从内存中获取数据及第一Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间;
迁移单元,用于根据所述第一Flash地址将所述获取单元获取的所述数据由所述内存批量迁移至所述Flash存储器;当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据;
所述迁移单元,还用于当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
9.根据权利要求8所述的装置,其特征在于,
所述迁移单元,具体用于为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的。
10.根据权利要求8所述的装置,其特征在于,
所述数据存储装置还包括数据处理单元,用于在所述内存中将所述数据进行去重压缩处理;
所述迁移单元,还用于根据所述第一Flash地址将所述数据处理单元去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
11.根据权利要求9所述的装置,其特征在于,
所述数据存储装置还包括数据处理单元,用于在所述内存中将所述数据进行去重压缩处理;
所述迁移单元,还用于根据所述第一Flash地址将所述数据处理单元去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
12.根据权利要求8所述的装置,其特征在于,所述数据存储装置还包括判断单元;
所述判断单元,用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述迁移单元,还具体用于当所述判断单元的判断结果为所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
13.根据权利要求9所述的装置,其特征在于,所述数据存储装置还包括判断单元;
所述判断单元,用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值;
所述迁移单元,还具体用于当所述判断单元的判断结果为所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
14.根据权利要求8-13任一项所述的装置,其特征在于,
所述迁移单元,还用于当所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
15.一种数据处理装置,其特征在于,包括处理器、存储器及总线,所述处理器及所述存储器通过所述总线相互连接,所述存储器包括内存、闪存Flash存储器及硬盘;
其中,所述处理器,用于从内存中获取数据及第一Flash地址,所述第一Flash地址对应为所述数据分配的Flash存储器中的存储空间,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,当所述数据在第一预设时间内的读写次数小于第一阈值时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据,当所述数据在第二预设时间内的读写次数大于或等于第二阈值时,将所述数据由所述硬盘迁移至所述内存。
16.根据权利要求15所述的装置,其特征在于,
所述处理器,具体用于为所述数据分配第二Flash地址,所述第二Flash地址对应所述硬盘中的存储空间,根据所述第二Flash地址将所述数据由所述Flash存储器迁移至所述硬盘中所述第二Flash地址对应的存储空间,将所述数据由所述硬盘迁移至所述内存,所述硬盘的存储空间与所述Flash存储器的存储空间是统一用Flash地址编址的。
17.根据权利要求15所述的装置,其特征在于,
所述处理器,还用于在所述内存中将所述数据进行去重压缩处理,根据所述第一Flash地址将去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
18.根据权利要求16所述的装置,其特征在于,
所述处理器,还用于在所述内存中将所述数据进行去重压缩处理,根据所述第一Flash地址将去重压缩后的数据由所述内存批量迁移至所述Flash存储器。
19.根据权利要求15所述的装置,其特征在于,
所述处理器,还用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值,当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
20.根据权利要求16所述的装置,其特征在于,
所述处理器,还用于在所述内存中获取所述数据之前,判断所述数据在第三预设时间内的读写次数是否小于第三阈值,当所述数据在所述第三预设时间内的读写次数小于所述第三阈值时,根据所述第一Flash地址将所述数据由所述内存批量迁移至所述Flash存储器,所述第三阈值大于或等于所述第一阈值。
21.根据权利要求15-20任一项所述的装置,其特征在于,
所述处理器,还用于当所述数据在所述Flash存储器中第一预设时间内的读写次数小于第一阈值且写次数大于0时,将所述数据由所述Flash存储器迁移至硬盘并在所述Flash存储器中删除所述数据。
22.一种计算机可读介质,其特征在于,所述计算机可读介质存储有计算机程序,所述计算机程序被处理器执行,以实现权利要求1至7任意一项所述的方法。
CN201480016989.3A 2014-11-29 2014-11-29 一种数据存储方法及装置 Active CN106170757B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/092609 WO2016082227A1 (zh) 2014-11-29 2014-11-29 一种数据存储方法及装置

Publications (2)

Publication Number Publication Date
CN106170757A CN106170757A (zh) 2016-11-30
CN106170757B true CN106170757B (zh) 2019-06-18

Family

ID=56073417

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480016989.3A Active CN106170757B (zh) 2014-11-29 2014-11-29 一种数据存储方法及装置

Country Status (2)

Country Link
CN (1) CN106170757B (zh)
WO (1) WO2016082227A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI672647B (zh) * 2018-03-20 2019-09-21 緯穎科技服務股份有限公司 管理方法及其相關儲存系統
CN109783478A (zh) * 2019-03-12 2019-05-21 长沙理工大学 一种utxo数据存储方法、装置、设备及存储介质
TWI776028B (zh) * 2019-03-14 2022-09-01 點序科技股份有限公司 快閃記憶體管理方法及快閃記憶體
CN112130771B (zh) * 2020-09-27 2023-05-16 广州市优仪科技股份有限公司 试验箱的存储控制方法、装置和电子设备和存储介质
CN112419698B (zh) * 2020-10-26 2022-05-17 浙江正泰仪器仪表有限责任公司 基于配电线报文规范的电能表数据传输方法、系统及装置
CN115129230A (zh) * 2021-03-26 2022-09-30 华为技术有限公司 一种缓存管理方法及存储设备
CN114356244B (zh) * 2022-01-12 2023-07-07 平安科技(深圳)有限公司 时序数据的数据存储方法、装置、设备及存储介质
CN115098045B (zh) * 2022-08-23 2022-11-25 成都止观互娱科技有限公司 一种数据存储系统及网络数据读取和写入方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936818A (zh) * 2005-09-22 2007-03-28 株式会社日立制作所 存储控制装置、数据管理系统及数据管理方法
CN101521734A (zh) * 2009-03-31 2009-09-02 深圳创维-Rgb电子有限公司 一种存储电视数据的方法、装置及电视机
US7620748B1 (en) * 2006-04-06 2009-11-17 Bitmicro Networks, Inc. Hardware assisted non-volatile memory-to-input/output direct memory access (DMA) transfer
US7752391B2 (en) * 2006-01-20 2010-07-06 Apple Inc. Variable caching policy system and method
CN103019615A (zh) * 2012-07-19 2013-04-03 中国人民解放军国防科学技术大学 一种基于负载控制的提高闪存固态硬盘持久性方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101477492B (zh) * 2009-01-21 2010-12-29 华中科技大学 一种用于固态硬盘的循环重写闪存均衡方法
CN102981783A (zh) * 2012-11-29 2013-03-20 浪潮电子信息产业股份有限公司 一种基于Nand Flash的Cache加速方法
CN203825609U (zh) * 2014-02-09 2014-09-10 长春职业技术学院(长春市职业技术教育中心长春市财政学校) 一种网络计算机的存储系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1936818A (zh) * 2005-09-22 2007-03-28 株式会社日立制作所 存储控制装置、数据管理系统及数据管理方法
US7752391B2 (en) * 2006-01-20 2010-07-06 Apple Inc. Variable caching policy system and method
US7620748B1 (en) * 2006-04-06 2009-11-17 Bitmicro Networks, Inc. Hardware assisted non-volatile memory-to-input/output direct memory access (DMA) transfer
CN101521734A (zh) * 2009-03-31 2009-09-02 深圳创维-Rgb电子有限公司 一种存储电视数据的方法、装置及电视机
CN103019615A (zh) * 2012-07-19 2013-04-03 中国人民解放军国防科学技术大学 一种基于负载控制的提高闪存固态硬盘持久性方法

Also Published As

Publication number Publication date
CN106170757A (zh) 2016-11-30
WO2016082227A1 (zh) 2016-06-02

Similar Documents

Publication Publication Date Title
CN106170757B (zh) 一种数据存储方法及装置
US9747318B2 (en) Retrieving data in a storage system using thin provisioning
CN106201350B (zh) 存储数据的方法、存储器和计算机系统
CN105760199B (zh) 一种应用资源加载方法及其设备
CN108845877B (zh) 管理内存的方法、装置和系统
CN107229415A (zh) 一种数据写方法、数据读方法及相关设备、系统
CN109947709B (zh) 数据存储方法和装置
CN103473343A (zh) 一种文件管理方法、装置以及终端
CN104601683A (zh) 一种文件下载管理方法以及移动终端和通信系统
CN104657435A (zh) 一种应用数据的存储管理方法和网络管理系统
CN109471843A (zh) 一种元数据缓存方法、系统及相关装置
CN103067479A (zh) 一种基于文件冷热的网盘同步方法及系统
CN112825023A (zh) 集群资源管理方法、装置、电子设备和存储介质
CN106055274A (zh) 一种数据存储方法、数据读取方法及电子设备
CN108664577B (zh) 一种基于flash空闲区的文件管理方法及系统
CN112596949B (zh) 一种高效率的ssd删除数据恢复方法及系统
CN109189724B (zh) 提高视频监控系统音视频数据存储效率的方法及装置
CN104408126B (zh) 一种数据库的持久化写入方法、装置和系统
CN108763517A (zh) 一种删除元数据的方法以及相关设备
CN109144403A (zh) 一种用于云盘模式切换的方法与设备
CN104252423A (zh) 基于多内核处理器的一致性处理方法和装置
CN105321124A (zh) 一种基于Hadoop的电力云平台设计方案
CN105488047B (zh) 元数据读写方法和装置
CN103064926B (zh) 数据处理方法和装置
CN106557262A (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