CN104572478B - 数据存取方法和数据存取装置 - Google Patents
数据存取方法和数据存取装置 Download PDFInfo
- Publication number
- CN104572478B CN104572478B CN201310478872.4A CN201310478872A CN104572478B CN 104572478 B CN104572478 B CN 104572478B CN 201310478872 A CN201310478872 A CN 201310478872A CN 104572478 B CN104572478 B CN 104572478B
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- storage unit
- unit
- region
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据存取方法和装置,所述方法应用于电子设备,所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元,所述方法包括:接收数据移动命令;判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据;以及如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。因此,可以实现高速的数据存取性能,充分提高了在使用存储装置时的用户体验。
Description
技术领域
本发明涉及计算机技术领域,更具体地,本发明涉及一种数据存取方法和数据存取装置。
背景技术
近年来,随着计算机技术的发展,例如智能手机、多媒体播放器、个人数字助理(PDA)、便携式计算机、平板式计算机、个人计算机等各种电子设备被广泛应用。在这样电子设备中,处理单元的处理能力不断增强,同时存储装置的存储容量和存储速度也得到了相应的提高。
随着人们对数据存取需求的增加,使用单一存储介质的存储装置已经无法满足要求。取而代之的,提出了采用多种存储介质的混合存储装置。目前,采用两种存储介质的混合存储装置最为常见,其中的两种存储介质往往具有不同的存取性能。例如,第一存取介质可以比第二存取介质具有更高的存取速度,而第二存取介质可以比第一存取介质具有更为低廉的价格成本。这种混合存储装置可以综合两种存储介质的不同特性,从而为用户带来最优的存储体验。
此外,为了防止电子设备的操作失误或故障而导致数据丢失,通常需要在存储装置中进行数据备份,尤其对于非常重要的数据,经常进行数据备份能够减少偶然破坏造成的损失,保证电子设备的***能够从错误中恢复正常运行。例如,最为常用的数据备份方法往往是***快照(Snapshot)技术。
目前,***快照技术需要使用***隐藏分区来存储快照数据。然而,对存储装置(尤其是,存储容量较小的存储装置)而言,用户往往难以忍受为了快照功能而损失任何的可用容量。
为此,现有技术的一种解决方案是利用存储装置中的预留空间来实现快照。该解决方案很好地利用用户无法察觉的***预留空间来存储快照数据,从而不会对用户日常所操作的存储空间带来任何影响。
然而,这种解决方案并未对目前广为流行的混合存储装置进行任何改进,也就是说,它没有考虑混合介质中可能出现的特有问题。具体来说,由于快照数据往往是一种不会经常被访问(例如,修改或读取)的“冷数据”,所以如果它长期占用第一存储介质中的区域,将导致第一存取介质无法充分发挥更高的存取速度。相反地,由于快照数据长期占用第一存储介质中的区域,所以经常被访问的“热数据”不得不存储在第二存储介质中的区域,从而导致第二存储介质由于过多的访问而造成过早损耗。这无疑影响了混合存储装置的整体性能和寿命。
因此,需要一种新型的数据存取方法和数据存取装置来解决上述问题。
发明内容
为了解决上述技术问题,根据本发明的一个方面,提供了一种数据存取方法,所述方法应用于电子设备,所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元,所述方法包括:接收数据移动命令;判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据;以及如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
此外,根据本发明的另一方面,提供了一种数据存取装置,所述数据存取装置应用于电子设备,所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元,所述数据存取装置包括:命令接收单元,用于接收数据移动命令;数据判断单元,用于判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据;以及数据移动单元,用于如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
与现有技术相比,采用根据本发明的数据存取方法,可以将不会经常被访问的第一数据从存取性能较佳的第一存储区域中移动到存取性能较差的第二存储区域中,释放第一存储区域的存储空间,从而提升整个***的使用寿命和存储性能。因此,在本发明中,可以实现高速的数据存取性能,充分提高了在使用存储装置时的用户体验。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1图示了根据本发明第一实施例的数据存取方法。
图2图示了根据本发明第二实施例的数据存取方法。
图3图示了根据本发明第二实施例的存储状态示例。
图4图示了根据本发明第二实施例的垃圾回收操作示例。
图5图示了根据本发明第一实施例的数据存取装置。
图6图示了根据本发明第二实施例的数据存取装置。
具体实施方式
将参照附图详细描述根据本发明的各个实施例。这里,需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
在下文中,将在第一实施例中描述根据本发明的数据存取方法。
图1图示了根据本发明第一实施例的数据存取方法。
图1所图示的数据存取方法可应用于电子设备,所述电子设备包括存储装置。
根据本发明第一实施例的数据存取方法可以应用于电子设备。所述电子设备可以是诸如个人计算机、智能电视、平板电脑、移动电话、数码相机、个人数字助手、便携式计算机、智能桌面、游戏机等的电子设备。
所述电子设备可以包括存储装置,所述存储装置可以是采用多种存储介质的混合存储装置。例如,所述存储装置可以是采用两种存储介质的混合存储装置,其中可以至少包括第一存储区域和第二存储区域。所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能。此外,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元。
将在以下场景中说明根据本发明第一实施例的数据存取方法,其中假设电子设备是笔记本计算机,该存储装置是混合存储装置,其可以组合诸如传统硬盘(HDD)之类的机械结构存储技术和诸如诸如高速闪存(flash)之类的数字存储技术。例如,该混合存储装置可以是混合硬盘,其通过在机械硬盘上增加高速闪存来进行资料预读取(Prefetch),以减少从硬盘读取资料的次数,从而提高性能。
这时,第一存储区域可以是高速闪存,而第二存储区域可以是机械硬盘。一般地,该高速闪存的存取性能优于该机械硬盘的存取性能。例如,该高速闪存技术新颖,其具有高速的存取速度、有限的使用寿命、和昂贵的价格成本;而该机械硬盘技术成熟,其存取速度相对缓慢、使用寿命很长、且价格成本低廉。
该高速闪存可以采用基于NOR或NAND结构的非易失性闪存技术,其通过逻辑地址和物理地址的之间映射来向电子设备提供数据访问服务。
一般地,所述高速闪存可以包括多个存储块(block),并且每个存储块可以包括多个存储页(page)。对高速闪存的读写操作以存储块中的存储页为单位进行,而对高速闪存的擦除/编程操作以存储块为单位进行,也就是说,在高速闪存中,page为最小的存取(读写)单位,而block为最小的擦除/编程单位。
具体而言,以采用英特尔(Intel)公司推出的34纳米(nm)闪存芯片(L63B颗粒)的高速闪存为例,1个存储页的容量为4千字节(KB),并且1个存储块由256个存储页组成。
该机械硬盘可以采用基于磁头移动来进行寻址的机械机构,其通过逻辑块寻址(LBA)模式来查找到硬盘上存储的内容。在LBA模式下,硬盘上的一个数据区域由它所在的磁头、柱面(也就是磁道)和扇区所唯一确定。
一般地,所述机械硬盘可以包括多个扇区(Sector)。对机械硬盘的读写操作和/或擦除操作都以扇区为单位进行,也就是说,在机械硬盘中,扇区为最小的存取(读写)和/或擦除单位。
具体而言,机械硬盘的1个扇区的容量一般为512字节(B)。
由于高速闪存与机械硬盘在存取性能(例如,读写速度)和物理特性(例如,价格、使用寿命)上的不对称,所以与使用单一存储介质相比,这种混合硬盘不仅能提供更佳的性能,还可减少硬盘的读写次数,从而使硬盘耗电量降低,特别是使电子设备的电池续航能力提高。此外,由于一般混合硬盘仅内置小容量的闪存(例如,256兆字节(MB)的闪存),所以成本不会大幅提高。同时,由于混合硬盘亦采用传统磁性硬盘的设计,所以没有高速闪存容量小的不足。
需要说明的是,尽管在本发明的第一实施例中以混合硬盘作为存储装置的示例进行说明,但是,本发明不限于此。根据本发明实施例的数据存取方法还可以应用于其他的存储装置,只要其中包括多个存储区域并且所述多个存储区域之间的存取性能不同即可。例如,本发明还可以应用于由本地存储装置与远程存储装置(例如,云存储空间)组成的存储装置。此外,本发明还可以应用于由光盘、机械硬盘、高速闪存、固态硬盘,优盘、软盘等中的两者或更多所组成的存储装置。另外,在其他的高速闪存中,一个存储页的容量可以为1KB、2KB、4KB……16KB、甚至更高,并且一个存储块可以包括更多数目的存储页;而在其他的机械硬盘中,一个扇区的容量可以为1KB、2KB、4KB等。
如图1所图示的,所述数据存取方法包括:
在步骤S110中,接收数据移动命令。
如上所述,在本发明的第一实施例中,该电子设备(例如,笔记本计算机)可以包括存储装置(例如,混合硬盘)。该混合硬盘至少可以包括两种具有不同存取性能的存储介质,其中的第一存储区域(或称为,第一存储介质)可以是高速闪存,而第二存储区域(或称为,第二存储介质)可以是机械硬盘。
在笔记本计算机中,由于高速闪存具有较快的存取速度,所以用户往往希望将所有数据都存储在高速闪存之中。但是,由于高速闪存具有昂贵的价格,所以用户不得不使用机械硬盘,以利用较低的存取速度来换取低廉的使用成本。以市场上最为常见的混合硬盘为例,其中的高速闪存往往只有8吉字节(GB)的容量,而机械硬盘可以达到500GB甚至更高的数量级。
当使用该笔记本计算机一段时间之后,或者当在笔记本计算机中存储有重要信息之后,或者为了防止笔记本计算机出现***崩溃,用户可以在存储装置中进行数据备份,以便防止其中存储的用户数据和/或***数据由于笔记本计算机的操作失误或故障而丢失。例如,该用户可以使用***快照技术或其他数据备份技术来对存储装置中的各种数据执行备份。
在对用户数据和/或***数据进行备份之后,将在存储装置中产生备份数据。这种备份数据往往被长期搁置在存储装置中。只有当笔记本计算机出现***崩溃,或者由于其他原因(例如,用户误操作、数据丢失、硬盘出现坏存储单元)而导致用户需要恢复数据备份时,该备份数据才会被电子设备访问,以用于重新还原。
因此,与用户经常需要访问(例如,需要频繁修改或读取)的“热数据”(例如,***文件、引导程序、热点应用程序、工作文档等)相比,该备份数据往往是一种不会经常被访问的“冷数据”。
在该备份数据长期占用混合硬盘中的高速闪存区域的情况下,一方面,在高速闪存中,由备份数据占用的存储容量将无法发挥其优秀的存取特性,用户不得不更多地使用机械硬盘以较慢的速度来存取数据,这样除了导致***处理速度变慢之外,还将导致机械硬盘在笔记本计算机中消耗大量电力,而且由于机械硬盘容易受到振动等物理干扰影响,这也导致数据访问的安全性降低;而另一方面,为了尽量提高处理速度,用户将尝试使用高速闪存中为数不多的剩余存储空间来存储所需数据,这样将导致这些部分的存储空间由于执行过多次数的读写而过早损坏,并进而导致整个高速闪存失去使用价值。
因此,该电子设备可以执行一种数据移动操作,以用于将备份数据从高速缓存中移动到机械硬盘中,释放高速缓存的存储空间,从而提升整个***的使用寿命和存储性能。
该数据移动操作可以基于用户请求而实现,也可以由笔记本计算机根据用户设定的时间自动执行。替换地,该笔记本计算机也可以定期或基于用户请求来判断备份数据在高速闪存中所占比例是否超过阈值,并且当判断结果是肯定的时,自动启动该数据移动操作。
在任一情况下,该笔记本计算机将接收一个数据移动命令,并且根据该数据移动命令对存储装置中的备份数据进行后续操作。
在步骤S120中,判断在第一存储区域中是否存在第一存储单元。
在接收到该数据移动命令之后,在存储装置中执行判断操作,以判断在第一存储区域(本实施例中的高速闪存)中是否存在用于存储第一数据(例如,诸如备份数据之类的冷数据)的第一存储单元。当判断出在第一存储区域中存在用于存储第一数据的第一存储单元时,本方法前进到步骤S130继续执行;否则,说明无需执行数据移动操作,并且本方法结束。
由于在高速闪存中存储页为最小的存取(读写)单位并且存储块为最小的擦除/编程单位,所以在该第一数据容量不高时,该第一存储单元可以是一个或多个存储页,而在该第一数据容量很高时,该第一存储单元可以是一个或多个存储块,甚至是整个闪存颗粒。
作为“冷数据”,该第一数据可以具有小于阈值存取特性的第一存取特性。
具体地,该第一数据可以具有小于阈值次数的读取次数、具有小于阈值频率的读取频率、具有小于阈值次数的写入次数、和/或具有小于阈值频率的写入频率。例如,该第一数据可以是备份数据。
或者,由于备份数据在操作***的文件管理层面通常具有只读属性,所以该第一数据也可以是具有只读属性的数据。
此外,当高速闪存在存储介质中存储数据时,为了进行区分,其控制器往往会对该各种数据添加不同属性。例如,控制器可以向正常使用的用户数据或***数据添加有效(Valid)属性,以便笔记本计算机正常访问;向已删除或者待删除的数据添加无效(Invalid)属性,以等待以存储块为单位执行擦除操作;并且向备份数据(例如,快照数据)添加保护(Protect)属性,以防止该备份数据被用户或***误删除。因而,该第一数据也可以是具有保护属性的数据。
在步骤S130中,将第一数据从第一存储单元移动到第二存储区域中的第二存储单元。
当在步骤S120中判断出存在这样的第一存储单元时,将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
具体地,所述将第一数据从第一存储单元移动到第二存储区域中的第二存储单元的步骤可以包括:在所述第二存储区域中分配所述第二存储单元;将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及从所述第一存储单元中删除所述第一数据。
例如,假设判断出在高速闪存中存在10个存储页正在存储备份数据,并且该10个存储页的地址为Block1Page1到Block1Page10,那么,据此可以知道该备份数据的大小为10×4KB=40KB。由于在机械硬盘中一个扇区的容量是512B,即存储40KB的数据需要80个扇区的空间,所以可以在该机械硬盘中分配地址为Sector1到Sector80的80个扇区。然后,可以将40KB的备份数据从Block1Page1到Block1Page10的10个存储页复制到Sector1到Sector80的80个扇区。最后,可以将高速闪存中的备份数据删除。
由于高速闪存中的数据擦除操作是以存储块为最小单位,所以这时可以仅仅对备份数据的属性进行修改,将其从保护属性修改为无效属性,以便在稍后的垃圾回收或其他操作中进行删除。
替换地,也可以立即将在该存储块中存储的所有有效数据全部转移到另外一个存储块,并对该存储块进行擦除,以便释放该存储空间用于其他操作。
通过上述操作,可以将不会经常被访问的第一数据从存取性能较佳的第一存储区域中移动到存取性能较差的第二存储区域中,释放第一存储区域的存储空间,从而提升整个***的使用寿命和存储性能。因此,在本发明的第一实施例中,可以实现高速的数据存取性能,充分提高了在使用存储装置时的用户体验。
在步骤S140中,判断在第二存储区域中是否存在第四存储单元。
还可以发现,如果用户经常需要访问(例如,需要频繁修改或读取)的热点数据长期占用混合硬盘中的机械硬盘区域,则除了导致***处理速度变慢之外,还将导致机械硬盘在笔记本计算机中消耗大量电力,缩短了整个电子设备的待机时间,并且热点数据也会由于经常被访问而更多的暴露在物理干扰之下,使得数据丢失或出错的概率大大增加。
优选地,在执行完上述步骤S110到S130之后,基于本发明第一实施例的相同构思,该数据移动操作还可以用于将热点数据从机械硬盘中移动到高速缓存中,充分利用高速缓存的存取速度,从而为用户提供更加的存取体验。
例如,在接收到上述的数据移动命令之后,或在接收到专用的数据移动命令之后,在存储装置中执行相关判断操作,以判断在第二存储区域(本实施例中的机械硬盘)中是否存在用于存储第三数据(例如,热点数据)的第四存储单元。当判断出在第二存储区域中存在用于存储第三数据的第四存储单元时,本方法前进到步骤S150继续执行;否则,说明无需执行数据移动操作,并且本方法结束。
由于在机械硬盘中扇区为最小的存取(读写)单位和/或擦除单位,所以该第四存储单元可以是一个或多个扇区。
作为“热数据”,该第三数据可以具有大于或等于阈值存取特性的第二存取特性。
具体地,该第三数据可以具有大于或等于阈值次数的读取次数、具有大于或等于阈值频率的读取频率、具有大于或等于阈值次数的写入次数、和/或具有大于或等于阈值频率的写入频率。例如,该第三数据可以是用户经常需要访问的热点数据。
在步骤S150中,将第三数据从第四存储单元移动到第一存储区域中的第五存储单元。
当在步骤S140中判断出存在这样的第四存储单元时,将所述第三数据从所述第四存储单元移动到所述第一存储区域中的第五存储单元。
具体地,所述将第三数据从第四存储单元移动到第一存储区域中的第五存储单元的步骤可以包括:在所述第一存储区域中分配所述第五存储单元;将所述第三数据从所述第四存储单元复制到所述第五存储单元;以及从所述第四存储单元中删除所述第三数据。
例如,假设判断出在机械硬盘中存在80个扇区正在存储热点数据,并且该80个扇区的地址为Sector1到Sector80,那么,据此可以知道该热点数据的大小为80×512B=40KB。由于在高速闪存中一个存储页的容量是4KB,即存储40KB的数据需要10个存储页的空间,所以可以在该高速闪存中分配地址为Block1Page1到Block1Page10的10个存储页。然后,可以将40KB的热点数据从Sector1到Sector80的80个扇区复制到Block1Page1到Block1Page10的10个存储页。最后,可以将机械硬盘中的热点数据直接删除。
由于机械硬盘中的数据擦除操作是以扇区为最小单位,所以可以对上述80个扇区立即进行擦除,以便释放该存储空间用于其他操作。
通过上述操作,可以将经常被访问的第三数据从存取性能较差的第二存储区域中移动到存取性能较佳的第一存储区域中,从而使得电子设备的热点数据尽量集中在高速存储区域中,以实现高速的数据存取性能。
需要说明的是,尽管在上文中以特定的顺序来描述了根据本发明第一实施例的数据存取方法,但是本发明不限于此。例如,显然,步骤S110、步骤S140和S150可以独立成为单独的数据存取方法,或者步骤S140和S150也可以在步骤S120和S130之前或者与它们同时执行。
此外,尽管在上文中以备份数据(或快照数据)作为“冷数据”的示例来描述了根据本发明第一实施例的数据存取方法,但是本发明不限于此。该“冷数据”也可以是其他***数据或用户数据。
例如,优选地,可以使得电子设备对于在存储装置中存储的数据的存取操作进行统计,并且将某一存取频率(例如,一天访问1次)作为阈值存取特性,并且将其第一存取特征大于或等于该阈值存取特性的第一数据归类为“热数据”,将其第一存取特征小该阈值存取特性的第一数据归类为“冷数据”,以便进行存储优化。
在下文中,将在第二实施例中描述根据本发明的数据存取方法。
图2图示了根据本发明第二实施例的数据存取方法。
图2所图示的数据存取方法可应用于电子设备,所述电子设备包括存储装置。
根据本发明第二实施例的数据存取方法同样可以应用于电子设备。所述电子设备可以包括采用多种存储介质的混合存储装置。
将在以下场景中说明根据本发明第二实施例的数据存取方法,其中假设电子设备是笔记本计算机,该存储装置是混合的数字存储装置,其可以采用基于NOR或NAND结构的不同非易失性闪存技术。例如,该混合的数字存储装置可以是混合固态硬盘(SSD)等。
与机械硬盘不同,固态硬盘没有物理的LBA,所采用的芯片结构也不是机械硬盘中的螺旋磁道。替代地,固态硬盘基于逻辑地址和物理地址的映射来提供访问服务,也就是说,其向外部电子设备提供逻辑地址进行访问,而在内部通过逻辑地址和物理地址的映射来实现逻辑地址和物理地址转换,然后提供物理地址内的实际数据访问服务。
此外,固态硬盘根据其存储单元的介质不同,可以分为采用闪存(Flash)或动态随机存取存储器(DRAM)作为存储介质的固态硬盘。其中,在基于闪存的固态硬盘中,其存储单元又可以分为多类:单层式储存单元(SLC)、多层式储存单元(MLC)、三层式储存单元(TLC)、甚至是四层式存储单元(QLC)。
基于闪存的固态硬盘目前普遍使用在笔记本、平板电脑(PAD)、数码相机或摄像机等中。这种SSD最大的优点就是可以移动,而且数据保护不受电源控制,能适应于各种环境。但是一般而言,它们的存取速度、使用寿命和价格成本都各不相同。
在本发明的第二实施例中,该混合固态硬盘可以是由SLC、MLC、TLC、和QLC等中的两种或两种以上组成的混合固态硬盘。由于QLC并未被大规模商用,所以例如,在实践中,为了获得存储性能与价格成本之间的最佳权衡,该固态硬盘优选地可以包括SLC存储区域和TLC存储区域。
这时,第一存储区域可以是SLC区域,而第二存储区域可以是TLC区域。一般地,该SLC区域的存取性能优于该TLC区域的存取性能。以SLC为例,它的存取速度快、使用寿命长(约有10万次擦写寿命),但是具有昂贵的价格成本(约TLC价格的10倍以上)。TLC的存取速度慢、使用寿命短(约有500次擦写寿命),但是价格非常便宜。
如上所述,所述固态硬盘可以包括多个存储块(block),并且每个存储块可以包括多个存储页(page)。对固态硬盘的读写操作以存储块中的存储页为单位进行,而对固态硬盘的擦除/编程操作以存储块为单位进行,也就是说,在固态硬盘中,page为最小的存取(读写)单位,而block为最小的擦除/编程单位。
由于SLC区域与TLC区域在存取性能(例如,读写速度)和物理特性(例如,价格、使用寿命)上的不对称,所以与使用单一闪存介质相比,这种混合固态硬盘不仅能提供更佳的访问性能,还可提供更长的使用寿命。
需要说明的是,尽管在本发明的第二实施例中以由SLC和TLC组成的混合固态硬盘作为存储装置的示例进行说明,但是,本发明不限于此。根据本发明实施例的数据存取方法还可以应用于其他的混合固态硬盘,只要其中包括多个存储区域并且所述多个存储区域之间的存取性能不同即可。例如,本发明还可以应用于由SLC与MLC组成的存储装置、由MLC与TLC组成的存储装置等。此外,在固态硬盘的两个存储区域中,一个存储页的容量可以为1KB、2KB、4KB……16KB、甚至更高,并且一个存储块可以包括更多数目的存储页。另外,两个存储区域中的存储页和存储块的容量也可能不同。
如图2所图示的,所述数据存取方法包括:
在步骤S210中,执行数据备份操作。
如上所述,在本发明的第二实施例中,该电子设备(例如,笔记本计算机)可以包括存储装置(例如,混合固态硬盘)。该混合固态硬盘至少可以包括两种具有不同存取性能的存储介质,其中的第一存储区域(或称为,第一存储介质)可以是SLC区域,而第二存储区域(或称为,第二存储介质)可以是TLC区域。
为了防止其中存储的用户数据和/或***数据由于笔记本计算机的操作失误或故障而丢失,例如,该用户可以使用***快照技术或其他数据备份技术来对存储装置中的各种数据执行备份。下面,以***快照技术为例继续说明。
由于固态硬盘的内部通过映射表来进行逻辑地址与物理地址之间的映射,所以可以利用固态硬盘控制器中的映射表来实现***快照的备份。例如,可以通过保存映射表副本的方式来实现固态硬盘中的快照,在恢复固态硬盘时可通过恢复映射表来恢复所备份的数据。
具体地,在存储装置中,可以通过如下操作来执行该数据备份操作:接收数据备份命令;在所述存储装置中存储第一地址映射关系,所述第一地址映射关系至少指示出用于存储第一数据的物理地址是第一存储单元;向所述第一地址映射关系添加保护属性;以及向所述第一数据添加所述保护属性。
例如,该数据备份操作可以基于用户请求而实现,也可以由笔记本计算机根据用户设定的时间自动执行。在任一情况下,该笔记本计算机将接收一个数据备份命令。然后,可以根据该数据备份命令对存储装置中的各种数据和/或与该数据相关联的映射表项进行备份操作。
在一个示例中,当用户希望备份某一***数据时,笔记本计算机可以首先根据该***数据来在固态硬盘的缓存中确定其在地址映射表中的表项,该表项可以指示出该***数据的逻辑地址与物理地址之间的映射关系。然后,可以将该表项存储到固态硬盘中。为了防止备份的映射表项被无删除或者标记为无效,优选地,可以将该表项标记为“被保护”状态。接下来,可以进一步将该***数据从固态硬盘的缓存中存储到固态硬盘中。并且,同样地,将该***数据标记为“被保护”状态。
这里,需要说明的是,由于某些固态硬盘厂商不支持将实际的文件数据保存在缓存中,因此,该***数据可能已经存储到固态硬盘中。这时,只需要将该***数据标记为“被保护”状态即可。
这样,就成功地在固态硬盘中创建了一个快照数据,以用于保存用户需要的该***数据。
如上所述,为了进行区分,SSD的控制器往往会对该各种数据添加不同属性。例如,控制器可以未被数据占用的存储区域添加空闲(Free)属性,以便笔记本计算机稍后向其中存储各种数据;向正常使用的用户数据或***数据添加有效(Valid)属性,以便笔记本计算机正常访问;向已删除或者待删除的数据添加无效(Invalid)属性,以等待以存储块为单位执行擦除操作;并且向快照数据添加保护(Protect)属性,以防止该快照数据被用户或***误删除。
图3图示了根据本发明第二实施例的存储状态示例。
如图3所图示的,由于固态硬盘的保存策略,它在将***数据保存起来的时候,可能会有一部分保存在SLC,而有一部分保存在TLC。
对于混合存储介质的存储器,例如本实施例中的SLC和TLC混合的SSD,由于SLC的性能和寿命都强于TLC,所以如果当***做快照的时候产生的“被保护”的数据块大量存在于SLC区域,将导致SLC中的可用区域越来越小,进而***的性能也会下降。
一方面,在SLC区域中,由被保护数据占用的存储容量将无法发挥其优秀的存取特性,用户不得不更多地使用TLC以较慢的速度来存取数据,这样必然导致***处理速度变慢。另一方面,为了尽量提高处理速度,用户将使用TLC中的存储空间来存储操作***的热点数据以及频繁修改的数据,由于TLC只有约500次擦写寿命,这样将导致这些部分的存储空间由于执行过多次数的读写而过早损坏,并进而导致整个TLC失去使用价值。
在本发明的第二实施例中,将充分考虑这些“被保护”的数据,使其尽量回收到TLC区域,这样SLC的数据空间会被“释放”出来。***的寿命和性能都会得到相应提升。此外,优选地,对于操作***的热点数据以及频繁修改的数据,也可以通过分层算法来尽量使其集中存放到SLC区域中,从而增强整体***的读写性能。
因此,本发明可以前进到步骤S220,以执行一种数据移动操作,以用于将被保护数据从SLC中移动到TLC中。
在步骤S220中,接收数据移动命令。
该笔记本计算机将接收一个数据移动命令,并且根据该数据移动命令对存储装置中的备份数据进行后续操作。
例如,该数据移动命令可以基于用户请求而实现,也可以由笔记本计算机根据用户设定的时间自动执行。优选地,该数据移动命令可以是固态硬盘中的垃圾回收命令。
当所有的SSD空闲空间被写满之后,SSD的控制器就会将所有标记为“无效”的块和页都统一进行擦除操作。将这些离散的数据整合起来重置为“空白”的块空间。这个操作就叫做垃圾回收。
该垃圾回收命令可以在接收到一个输入/输出(I/O)读写命令时被触发开始,或者也可以在后台(例如,当***空闲时)自动执行。
图4图示了根据本发明第二实施例的垃圾回收操作示例。
如图4所图示的,在SLC需要垃圾回收的时候,可以将SLC中的“被保护”的数据块挑选出来,将数据拷贝到TLC区域,同时擦除SLC中这些“被保护”的数据块。这样SLC部分增加新的空闲空间,用来存放操作***频繁访问的数据。进而提升***性能。
在步骤S230中,判断在第一存储区域中是否存在第一存储单元。
在接收到该数据移动命令之后,在存储装置中执行判断操作,以判断在第一存储区域(本实施例中的SLC)中是否存在用于存储第一数据(例如,快照数据)的第一存储单元。当判断出在第一存储区域中存在用于存储第一数据的第一存储单元时,本方法前进到步骤S130继续执行;否则,说明无需执行数据移动操作,并且本方法结束。
作为快照数据,该第一数据可能是用户要备份的***数据本身,也可能是该***数据相关联的映射表项,该映射表项指示出用于存储所述第一数据的物理地址是所述第一存储单元,并且还指示出与该物理地址具有映射关系的逻辑地址。
在任一情况下,该快照数据均具有保护属性。这样,可以通过确定在SLC区域中是否存在具有保护属性的数据来判断是否存在快照数据。
在步骤S240中,将第一数据从第一存储单元移动到第二存储区域中的第二存储单元。
当在步骤S230中判断出存在这样的第一存储单元时,将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
在一个示例中,所述将第一数据从第一存储单元移动到第二存储区域(本实施例中的TLC)中的第二存储单元的步骤可以包括:在所述第二存储区域中分配所述第二存储单元;将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及从所述第一存储单元中删除所述第一数据。
例如,假设判断出在SLC中存在10个存储页正在存储快照数据,并且该10个存储页的地址为Block1Page1到Block1Page10,那么,据此可以知道该备份数据的大小为10×4KB=40KB。当TLC的存储页与SLC的存储页容量都是4KB时,可以在该TLC中分配地址为Block2Page1到Block2Page10的10个存储页。然后,可以将40KB的备份数据从Block1Page1到Block1Page10的10个存储页复制到Block2Page1到Block2Page10的10个存储页。最后,可以将高速闪存中的备份数据删除。
在另一示例中,所述将第一数据从第一存储单元移动到第二存储区域(本实施例中的TLC)中的第二存储单元的步骤可以包括:对所述第一存储单元进行模式转换,以便将所述第一存储单元转换为所述第二存储单元。
例如,随着闪存存储技术的发展,可以使用特定工艺处理来改变闪存芯片的物理属性,从而将SLC直接转换为TLC,反之亦然。例如,SLC到TLC的转换比率一般为1:3,即通常,1GB的SLC可以转换为3GB的TLC,而3GB的TLC可以转换为1GB的SLC。
这时,如果某些闪存厂商提供有SLC到TLC转换命令的时候,可以对快照保护所占用的SLC区域进行模式切换,使SLC中被保护的块转变为TLC的数据块。
在步骤S250中,将第一地址映射关系修改为第二地址映射关系。
在将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元之后,如果该第一数据是映射表项本身,则本步骤可以省略。如果该第一数据是映射表项所指向的***数据,则优选地,还需要将所述第一地址映射关系修改为第二地址映射关系,所述第二地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第二存储单元。
如上所述,由于固态硬盘的内部通过映射表来进行逻辑地址与物理地址之间的映射,所以在将快照数据从SLC移动到TLC之后,为了使得电子设备仍然能够访问该快照数据,所以需要对该映射表项进行修改,以将原来的SLC地址更新为最新的TLC地址。
例如,可以将与第一数据相关联的映射表项从SLC中的Block1Page1到Block1Page10修改为TLC中的Block2Page1到Block2Page10。
通过上述操作,可以将不会经常被访问的第一数据(例如,快照数据)从存取性能较佳的第一存储区域(SLC)中移动到存取性能较差的第二存储区域(TLC)中,释放第一存储区域的存储空间,从而提升整个***的使用寿命和存储性能。
此外,如第一实施例中所述的,还可以将经常被访问的第三数据从存取性能较差的第二存储区域中移动到存取性能较佳的第一存储区域中,从而使得电子设备的热点数据尽量集中在高速存储区域中,以实现高速的数据存取性能。
由于将“热数据”从TLC移动到SLC与将“冷数据”从SLC移动到TLC的过程相似,并且已经在第一实施例中进行了说明,因此,省略其详细描述。
表1描述了现有技术中的数据存取方法与根据本实施例的数据存取方法的效果对比图。
表1是本发明人针对特定情况做出的关于执行***快照对SSD寿命的一些分析结果。
通过表1可以看出,在现有技术中,即在混合固态硬盘中实现快照操作时,将在SLC中产生大量保护块,导致整体***的寿命和性能收到明显的影响。具体地,当SLC被大量“保护”块占用时,SLC的整体寿命下降比较明显,从剩余126年下降为63年,TLC从剩余115年下降为115年,并且写入放大也从1.85上升为1.91,显而易见的是整体的性能也受到影响。
当采用本实施例中的数据存取方法时,即在实现快照操作之后进一步执行数据移动操作,以便将SLC中产生的大量保护块回收到TLC区域,使得SLC的数据空间会被“释放”出来。具体地,当将大量“保护”块从SLC移动到TLC中时,SLC的整体寿命并未下降,TLC从剩余115年仅仅下降为110年,并且写入放大也仅仅从1.85上升为1.86。
由此可见,采用本实施例的数据存取方法,***的寿命和性能都可以得到显著提升。
在步骤S260中,执行数据修改操作。
优选地,在一个示例中,在电子设备实现了数据备份操作以及数据移动操作之后,当用户不再需要该快照数据时,可以对该快照数据进行删除。
具体地,在该混合固态硬盘中,可以将映射表项的保护属性去除,并且将其标记为无效,同时,可以将该映射表项所指向的***数据的保护属性去除,并且将其标记为无效,以便在稍后进行数据回收操作时,对它们进行擦除。
在另一示例中,在电子设备实现了数据备份操作以及数据移动操作之后,当用户需要恢复备份状态时,可以对该快照数据进行恢复。
具体地,在该混合固态硬盘中,可以读取被保护的映射表项,使用它来替换现有的映射表项,以恢复备份数据。然后,如果用户希望继续保留该快照数据以便日后使用时,则电子设备无需执行任何操作。如果该用户不再需要保留该快照数据时,可以进而按照上述删除过程对快照数据进行删除。
在又一示例中,在电子设备实现了数据备份操作以及数据移动操作之后,用户可以继续对已被备份的***数据进行存取(例如,修改)操作。
具体地,在该混合固态硬盘中,还可以从所述存储装置中读取所述第二地址映射关系;从所述第二存储单元中读取所述第一数据;将所述第一数据修改为第二数据;在所述第一存储区域中分配第三存储单元;将所述第二数据存储到所述第三存储单元;以及创建第三地址映射关系,所述第三地址映射关系至少指示出用于存储所述第二数据的物理地址是所述第三存储单元。
例如,当在步骤S250中将与第一数据相关联的第一地址映射关系修改为第二地址映射关系时,具体地,将用于存储该***数据的物理地址从SLC中的Block1Page1到Block1Page10修改为TLC中的Block2Page1到Block2Page10,如果用户希望对该***数据进行修改,可以从TLC中的物理地址Block2Page1到Block2Page10读取该***数据,并且对该***数据进行修改,例如,从数值1修改为数值2。
由于该***数据在经过存取之后已经从“冷数据”变为“热数据”,所以优选地将该修改后的***数据存储在SLC中,而不是TLC中。为此,可以在该SLC中重新分配地址为Block1Page11到Block1Page20的10个存储页。此处的物理地址仅仅是示例,该物理地址也可以是其他地址,或者是原始的物理地址Block1Page1到Block1Page10,只要其属性是空闲即可。
然后,可以将修改后的***数据存储到Block1Page11到Block1Page20。最后,可以为修改后的***数据创建一个映射表项,以用于指示出当前存储该修改后的***数据的SLC物理地址。
通过上述操作,可以在充分考虑到混合存储介质的特性,通过分层算法来使得操作***的热点数据以及频繁修改的数据集中存放到具有较佳存取性能的存储区域中、同时使得快照数据集中存放到具有较差存取性能的存储区域中之后,对该快照数据进行后续处理,以便用户可以继续完成所需的各种操作。
图5图示了根据本发明第一实施例的数据存取装置。
图5所图示的数据存取装置100可应用于电子设备,所述电子设备包括存储装置。
图1所图示的根据本发明第一实施例的数据存取方法可以通过图5所图示的数据存取装置100来实现。该数据存取装置100可以应用于电子设备。
所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元。
该数据存取装置100可以用于考虑到存储装置的混合特性来对存储装置进行数据存取,以使得提升整个***的使用寿命和存储性能。
该数据存取装置100可以通过任何方式与电子设备进行通信。
在一个示例中,该数据存取装置100可以作为一个软件模块和/或硬件模块而集成到该电子设备中,换言之,该电子设备可以包括该数据存取装置100。例如,当电子设备是智能桌面时,该数据存取装置100可以是该智能桌面的操作***中的一个软件模块,或者可以是针对于该智能桌面所开发的一个应用程序;当然,该数据存取装置100同样可以是该智能桌面的众多硬件模块之一。
替换地,在另一示例中,该数据存取装置100与该电子设备也可以是分离的设备,并且该数据存取装置100可以通过有线和/或无线网络连接到该电子设备,并且按照约定的数据格式来传输交互信息。
如图5所图示的,所述数据存取装置100包括:命令接收单元110、数据判断单元120、和数据移动单元130。
该命令接收单元110用于接收数据移动命令。
该数据判断单元120用于判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据。
其中,所述第一数据可以具有小于阈值存取特性的第一存取特性。替换地,所述第一数据可以具有保护属性。
该数据移动单元130用于如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
具体地,所述数据移动单元130可以通过如下操作来将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元:在所述第二存储区域中分配所述第二存储单元;将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及从所述第一存储单元中删除所述第一数据。
此外,所述数据判断单元120还可以用于判断在所述第二存储区域中是否存在第四存储单元,所述第四存储单元用于存储第三数据,并且所述数据移动单元130还可以用于如果判断出存在所述第四存储单元,则将所述第三数据从所述第四存储单元移动到所述第一存储区域中的第五存储单元。
其中,所述第三数据具有大于或等于阈值存取特性的第二存取特性。
根据本发明第一实施例的数据存取装置100中的各个单元的具体配置和操作已经在上面参考图1描述的信息处理方法中详细介绍,并因此,将省略其重复描述。
由此可见,采用根据本发明第一实施例的数据存取装置,可以将不会经常被访问的第一数据从存取性能较佳的第一存储区域中移动到存取性能较差的第二存储区域中,释放第一存储区域的存储空间,从而提升整个***的使用寿命和存储性能。因此,在本发明的第一实施例中,可以实现高速的数据存取性能,充分提高了在使用存储装置时的用户体验。
此外,可以将经常被访问的第三数据从存取性能较差的第二存储区域中移动到存取性能较佳的第一存储区域中,从而使得电子设备的热点数据尽量集中在高速存储区域中,以实现高速的数据存取性能。
图6图示了根据本发明第二实施例的数据存取装置。
图2所图示的根据本发明第二实施例的数据存取方法可以通过图6所图示的数据存取装置100来实现。如图6所图示的,与图5中相似地,该数据存取装置100可以包括:命令接收单元110、数据判断单元120、和数据移动单元130。此外,优选地,该数据存取装置100还可以包括:数据备份单元140、映射修改单元150和/或数据修改单元160。
该数据备份单元140用于在所述接收数据移动命令之前,接收数据备份命令,在所述存储装置中存储第一地址映射关系,所述第一地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第一存储单元,向所述第一地址映射关系添加保护属性,并且向所述第一数据添加所述保护属性。
该命令接收单元110用于接收数据移动命令。
该数据判断单元120用于判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据。
其中,所述第一数据可以具有小于阈值存取特性的第一存取特性。替换地,所述第一数据可以具有保护属性。
该数据移动单元130用于如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元。
具体地,在一个示例中,所述数据移动单元130可以通过如下操作来将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元:在所述第二存储区域中分配所述第二存储单元;将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及从所述第一存储单元中删除所述第一数据。
在另一示例中,所述数据移动单元130可以通过如下操作来将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元:对所述第一存储单元进行模式转换,以便将所述第一存储单元转换为所述第二存储单元。
该映射修改单元150用于在所述将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元之后,将所述第一地址映射关系修改为第二地址映射关系,所述第二地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第二存储单元。
该数据修改单元160用于在所述将所述第一地址映射关系修改为第二地址映射关系之后,从所述存储装置中读取所述第二地址映射关系,从所述第二存储单元中读取所述第一数据,将所述第一数据修改为第二数据,在所述第一存储区域中分配第三存储单元,将所述第二数据存储到所述第三存储单元,并且创建第三地址映射关系,所述第三地址映射关系至少指示出用于存储所述第二数据的物理地址是所述第三存储单元。
此外,所述数据判断单元120还可以用于判断在所述第二存储区域中是否存在第四存储单元,所述第四存储单元用于存储第三数据,并且所述数据移动单元130还可以用于如果判断出存在所述第四存储单元,则将所述第三数据从所述第四存储单元移动到所述第一存储区域中的第五存储单元。
其中,所述第三数据具有大于或等于阈值存取特性的第二存取特性。
根据本发明第一实施例的数据存取装置100中的各个单元的具体配置和操作已经在上面参考图1描述的信息处理方法中详细介绍,并因此,将省略其重复描述。
根据本发明第二实施例的数据存取装置100中的各个单元的具体配置和操作已经在上面参考图2描述的信息处理方法中详细介绍,并因此,将省略其重复描述。
由此可见,采用根据本发明第二实施例的数据存取装置,可以将不会经常被访问的第一数据(例如,快照数据)从存取性能较佳的第一存储区域(SLC)中移动到存取性能较差的第二存储区域(TLC)中,释放第一存储区域的存储空间,从而提升整个***的使用寿命和存储性能。此外,还可以将经常被访问的第三数据从存取性能较差的第二存储区域中移动到存取性能较佳的第一存储区域中,从而使得电子设备的热点数据尽量集中在高速存储区域中,以实现高速的数据存取性能。
此外,可以在充分考虑到混合存储介质的特性,通过分层算法来使得操作***的热点数据以及频繁修改的数据集中存放到具有较佳存取性能的存储区域中、同时使得快照数据集中存放到具有较差存取性能的存储区域中之后,对该快照数据进行后续处理,以便用户可以继续完成所需的各种操作。
此外,尽管此处将上述的各个单元作为各个步骤的执行主体来说明本发明的各个实施例,但是,本领域技术人员能够理解的是,本发明不限于此。各个步骤的执行主体可以由其他的一个或多个设备、装置、单元、甚至模块来担任。
例如,上述命令接收单元110、数据判断单元120、数据移动单元130、数据备份单元140、映射修改单元150和/或数据修改单元160所执行的各个步骤可以统一地由电子设备中的中央处理单元(CPU)来实现。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助于软件加必需的硬件平台的方式来实现,当然也可以全部通过软件、或硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁盘、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
在上面详细描述了本发明的各个实施例。然而,本领域技术人员应该理解,在不脱离本发明的原理和精神的情况下,可对这些实施例进行各种修改,组合或子组合,并且这样的修改应落入本发明的范围内。
Claims (18)
1.一种数据存取方法,所述方法应用于电子设备,其特征在于,所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元,所述方法包括:
在所述第一存储区域进行垃圾回收的情况下,接收数据移动命令;
判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据;以及
如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元;
其中,所述第一数据具有保护属性。
2.根据权利要求1的方法,其特征在于,所述第一数据具有小于阈值存取特性的第一存取特性。
3.根据权利要求1的方法,其特征在于,所述将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元的步骤包括:
在所述第二存储区域中分配所述第二存储单元;
将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及
从所述第一存储单元中删除所述第一数据。
4.根据权利要求1的方法,其特征在于,所述将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元的步骤包括:
对所述第一存储单元进行模式转换,以便将所述第一存储单元转换为所述第二存储单元。
5.根据权利要求1的方法,其特征在于,在所述接收数据移动命令的步骤之前,所述方法还包括:
接收数据备份命令;
在所述存储装置中存储第一地址映射关系,所述第一地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第一存储单元;
向所述第一地址映射关系添加保护属性;以及
向所述第一数据添加所述保护属性。
6.根据权利要求5的方法,其特征在于,在所述将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元的步骤之后,所述方法还包括:
将所述第一地址映射关系修改为第二地址映射关系,所述第二地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第二存储单元。
7.根据权利要求6的方法,其特征在于,在所述将所述第一地址映射关系修改为第二地址映射关系的步骤之后,所述方法还包括:
从所述存储装置中读取所述第二地址映射关系;
从所述第二存储单元中读取所述第一数据;
将所述第一数据修改为第二数据;
在所述第一存储区域中分配第三存储单元;
将所述第二数据存储到所述第三存储单元;以及
创建第三地址映射关系,所述第三地址映射关系至少指示出用于存储所述第二数据的物理地址是所述第三存储单元。
8.根据权利要求1的方法,其特征在于,所述方法还包括:
判断在所述第二存储区域中是否存在第四存储单元,所述第四存储单元用于存储第三数据;以及
如果判断出存在所述第四存储单元,则将所述第三数据从所述第四存储单元移动到所述第一存储区域中的第五存储单元。
9.根据权利要求8的方法,其特征在于,所述第三数据具有大于或等于阈值存取特性的第二存取特性。
10.一种数据存取装置,所述数据存取装置应用于电子设备,其特征在于,所述电子设备包括存储装置,所述存储装置至少包括第一存储区域和第二存储区域,所述第一存储区域具有第一存取性能,所述第二存储区域具有第二存取性能,所述第一存取性能优于所述第二存取性能,所述第一存储区域和所述第二存储区域中的每一个包括多个存储单元,所述数据存取装置包括:
命令接收单元,用于在所述第一存储区域进行垃圾回收的情况下,接收数据移动命令;
数据判断单元,用于判断在所述第一存储区域中是否存在第一存储单元,所述第一存储单元用于存储第一数据;以及
数据移动单元,用于如果判断出存在所述第一存储单元,则将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元;
其中,所述第一数据具有保护属性。
11.根据权利要求10的装置,其特征在于,所述第一数据具有小于阈值存取特性的第一存取特性。
12.根据权利要求10的装置,其特征在于,所述数据移动单元通过如下操作来将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元:在所述第二存储区域中分配所述第二存储单元;将所述第一数据从所述第一存储单元复制到所述第二存储单元;以及从所述第一存储单元中删除所述第一数据。
13.根据权利要求10的装置,其特征在于,所述数据移动单元通过如下操作来将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元:对所述第一存储单元进行模式转换,以便将所述第一存储单元转换为所述第二存储单元。
14.根据权利要求10的装置,其特征在于,所述装置还包括:
数据备份单元,用于在所述接收数据移动命令之前,接收数据备份命令,在所述存储装置中存储第一地址映射关系,所述第一地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第一存储单元,向所述第一地址映射关系添加保护属性,并且向所述第一数据添加所述保护属性。
15.根据权利要求14的装置,其特征在于,所述装置还包括:
映射修改单元,用于在所述将所述第一数据从所述第一存储单元移动到所述第二存储区域中的第二存储单元之后,将所述第一地址映射关系修改为第二地址映射关系,所述第二地址映射关系至少指示出用于存储所述第一数据的物理地址是所述第二存储单元。
16.根据权利要求15的装置,其特征在于,所述装置还包括:
数据修改单元,用于在所述将所述第一地址映射关系修改为第二地址映射关系之后,从所述存储装置中读取所述第二地址映射关系,从所述第二存储单元中读取所述第一数据,将所述第一数据修改为第二数据,在所述第一存储区域中分配第三存储单元,将所述第二数据存储到所述第三存储单元,并且创建第三地址映射关系,所述第三地址映射关系至少指示出用于存储所述第二数据的物理地址是所述第三存储单元。
17.根据权利要求10的装置,其特征在于,所述数据判断单元还用于判断在所述第二存储区域中是否存在第四存储单元,所述第四存储单元用于存储第三数据,并且
所述数据移动单元还用于如果判断出存在所述第四存储单元,则将所述第三数据从所述第四存储单元移动到所述第一存储区域中的第五存储单元。
18.根据权利要求17的装置,其特征在于,所述第三数据具有大于或等于阈值存取特性的第二存取特性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310478872.4A CN104572478B (zh) | 2013-10-14 | 2013-10-14 | 数据存取方法和数据存取装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310478872.4A CN104572478B (zh) | 2013-10-14 | 2013-10-14 | 数据存取方法和数据存取装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572478A CN104572478A (zh) | 2015-04-29 |
CN104572478B true CN104572478B (zh) | 2018-07-06 |
Family
ID=53088610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310478872.4A Active CN104572478B (zh) | 2013-10-14 | 2013-10-14 | 数据存取方法和数据存取装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572478B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326135B (zh) * | 2015-06-30 | 2020-06-02 | 华为技术有限公司 | 一种平移非易失性存储器nvm的数据的方法及装置 |
CN105138422B (zh) * | 2015-08-10 | 2018-09-21 | 北京联想核芯科技有限公司 | 控制方法及电子设备 |
CN106557385B (zh) * | 2015-09-28 | 2020-01-21 | 成都华为技术有限公司 | 数据快照方法和存储设备 |
TWI606336B (zh) | 2016-04-21 | 2017-11-21 | 慧榮科技股份有限公司 | 儲存裝置及其控制單元、可用於儲存裝置的資料儲存方法 |
CN106227683B (zh) * | 2016-07-26 | 2019-08-27 | 联想(北京)有限公司 | 电子设备及信息处理方法 |
CN106681652B (zh) * | 2016-08-26 | 2019-11-19 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器控制电路单元与存储器存储装置 |
CN107870735B (zh) * | 2016-09-28 | 2021-01-05 | 华为技术有限公司 | 数据管理方法、装置和设备 |
CN109032965B (zh) * | 2017-06-12 | 2021-01-12 | 华为技术有限公司 | 一种数据读取方法、主机及存储设备 |
KR20190007665A (ko) * | 2017-07-13 | 2019-01-23 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
CN107357534A (zh) * | 2017-07-18 | 2017-11-17 | 深圳市德名利电子有限公司 | 一种闪存块模式的动态切换方法及*** |
CN107608625B (zh) * | 2017-08-11 | 2020-09-11 | 记忆科技(深圳)有限公司 | 一种提升固存储设备读性能的方法 |
CN109408401B (zh) * | 2017-08-18 | 2023-03-24 | 旺宏电子股份有限公司 | 存储器装置的管理***及管理方法 |
CN107678981A (zh) * | 2017-08-24 | 2018-02-09 | 北京盛和大地数据科技有限公司 | 数据处理方法及装置 |
JP6982468B2 (ja) * | 2017-10-27 | 2021-12-17 | キオクシア株式会社 | メモリシステムおよび制御方法 |
CN107943713A (zh) * | 2017-11-22 | 2018-04-20 | 深圳忆联信息***有限公司 | 一种提升固态硬盘读性能的方法及固态硬盘 |
KR20190074677A (ko) * | 2017-12-20 | 2019-06-28 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
CN108228105A (zh) * | 2017-12-29 | 2018-06-29 | 北京联想核芯科技有限公司 | 一种ssd硬盘的数据处理方法和装置 |
CN108763102B (zh) * | 2018-05-31 | 2021-10-29 | 郑州云海信息技术有限公司 | 一种固态硬盘的垃圾回收方法及装置 |
TWI698749B (zh) * | 2019-03-13 | 2020-07-11 | 慧榮科技股份有限公司 | 資料儲存裝置與資料處理方法 |
CN111897744B (zh) * | 2019-05-05 | 2024-06-14 | 兆易创新科技集团股份有限公司 | 一种数据写入方法、装置、电子设备及存储介质 |
CN111897485A (zh) * | 2019-05-05 | 2020-11-06 | 北京兆易创新科技股份有限公司 | 一种数据存储方法、装置、电子设备及存储介质 |
CN110297603B (zh) * | 2019-06-25 | 2023-02-10 | 深圳忆联信息***有限公司 | 基于固态硬盘的随机写性能提升方法、装置和计算机设备 |
CN111026674A (zh) * | 2019-11-29 | 2020-04-17 | 维沃移动通信有限公司 | 一种数据存储方法及电子设备 |
CN113452726B (zh) * | 2020-03-24 | 2024-02-20 | 中兴通讯股份有限公司 | 数据传输方法、终端及计算机可读存储介质 |
CN112015339B (zh) * | 2020-08-20 | 2024-03-22 | 合肥康芯威存储技术有限公司 | 一种存储器的数据保存***,保存方法及存储*** |
CN112416253B (zh) * | 2020-11-25 | 2022-09-30 | 新华三云计算技术有限公司 | 一种基于分布式存储的存储区域动态调整方法及装置 |
CN112799475B (zh) * | 2021-01-04 | 2023-03-24 | 湖南磐石科技有限公司 | 自带独立***硬盘的固态硬盘及计算机设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526923A (zh) * | 2009-04-02 | 2009-09-09 | 成都市华为赛门铁克科技有限公司 | 一种数据处理方法、装置和闪存存储*** |
CN103049349A (zh) * | 2012-11-29 | 2013-04-17 | 记忆科技(深圳)有限公司 | 基于分层存储的快照方法及*** |
CN103106050A (zh) * | 2013-02-22 | 2013-05-15 | 浪潮电子信息产业股份有限公司 | 一种实现存储***数据分层存储复制的方法 |
CN103186350A (zh) * | 2011-12-31 | 2013-07-03 | 北京快网科技有限公司 | 混合存储***及热点数据块的迁移方法 |
-
2013
- 2013-10-14 CN CN201310478872.4A patent/CN104572478B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101526923A (zh) * | 2009-04-02 | 2009-09-09 | 成都市华为赛门铁克科技有限公司 | 一种数据处理方法、装置和闪存存储*** |
CN103186350A (zh) * | 2011-12-31 | 2013-07-03 | 北京快网科技有限公司 | 混合存储***及热点数据块的迁移方法 |
CN103049349A (zh) * | 2012-11-29 | 2013-04-17 | 记忆科技(深圳)有限公司 | 基于分层存储的快照方法及*** |
CN103106050A (zh) * | 2013-02-22 | 2013-05-15 | 浪潮电子信息产业股份有限公司 | 一种实现存储***数据分层存储复制的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104572478A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104572478B (zh) | 数据存取方法和数据存取装置 | |
KR102168838B1 (ko) | 저장 장치들에 대한 매핑 테이블들 | |
US9652386B2 (en) | Management of memory array with magnetic random access memory (MRAM) | |
US9146688B2 (en) | Advanced groomer for storage array | |
US20140129758A1 (en) | Wear leveling in flash memory devices with trim commands | |
US9213495B2 (en) | Controller management of memory array of storage device using magnetic random access memory (MRAM) in a mobile device | |
US8724392B1 (en) | Controller management of memory array of storage device using magnetic random access memory (MRAM) | |
KR101403922B1 (ko) | 접근 빈도에 따라 데이터를 할당하는 저장장치 및 저장방법 | |
CN105339910B (zh) | 在混合驱动器中的虚拟nand容量扩展 | |
US11599304B2 (en) | Data aggregation in ZNS drive | |
TWI718710B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
CN109164975A (zh) | 一种将数据写入固态硬盘的方法以及固态硬盘 | |
US20090132757A1 (en) | Storage system for improving efficiency in accessing flash memory and method for the same | |
CN112130749B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
WO2021242317A1 (en) | Zns parity swapping to dram | |
CN113243007A (zh) | 存储级存储器访问 | |
CN105607862A (zh) | 一种dram与mram结合具有备份电源的固态硬盘 | |
US20240220155A1 (en) | Solution for Super Device Imbalance in ZNS SSD | |
CN105630699B (zh) | 一种使用mram的固态硬盘及读写缓存管理方法 | |
CN105138277A (zh) | 一种固态盘阵列的缓存管理方法 | |
CN102160038A (zh) | 管理非易失性磁盘高速缓存的方法和设备 | |
US20210334031A1 (en) | Data Parking for SSDs with Zones | |
Matsui et al. | 3ASCA: Application-aware autonomous SCM capacity adjustment for SCM and NAND flash pooled storage | |
Kwon et al. | FARS: A page replacement algorithm for NAND flash memory based embedded systems | |
US11640254B2 (en) | Controlled imbalance in super block allocation in ZNS SSD |
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 |