CN103455435A - 数据写入方法及装置 - Google Patents
数据写入方法及装置 Download PDFInfo
- Publication number
- CN103455435A CN103455435A CN2013103860861A CN201310386086A CN103455435A CN 103455435 A CN103455435 A CN 103455435A CN 2013103860861 A CN2013103860861 A CN 2013103860861A CN 201310386086 A CN201310386086 A CN 201310386086A CN 103455435 A CN103455435 A CN 103455435A
- Authority
- CN
- China
- Prior art keywords
- data
- target data
- described target
- block
- write
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据写入方法及装置,其中,该数据写入方法包括:在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;将所述目标数据写入所述关联数据块的空白页中。本发明实施例所提供的数据写入方法,通过将目标数据写入关联数据块的空白页中,能够使具有关联关系的数据集中在关联数据块中,可以提高后续的清理效率。
Description
技术领域
本发明涉及数据存储领域,尤其涉及一种数据写入方法及装置。
背景技术
一些存储设备例如固态存储设备(Solid State Drive,简称SSD)和缓存(Cache)可以利用闪存(Flash)芯片作为数据存储的介质,可以是一种非易失性闪存,例如:与非门闪存(Nand Flash)和与或门闪存(Nor Flash)等类型的芯片。目前比较常见的以Nand Flash为存储介质的居多。其中,每个片选(CE)包含8192个块(Block),每个块包含128或64个页(Page),块是Nand Flash的最小擦除(Erase)单元,页是Nand Flash的最小读写单元,每个页大小为4K字节(Byte)。
对于机械硬盘来说,硬盘可以直接用磁头将对应的区域磁化为“0”或者“1”,而Nand Flash的物理特性决定了以Nand Flash为存储介质的存储设备在写入目标数据之前,必须执行擦除操作(Erase before Overwrite)。若需要向某个块中写入目标数据,即使只更改1位(bit)也必须先对该块整个进行擦除操作,这种先擦后写导致了写放大。写放大对存储设备的性能造成很大的影响,尤其是在小输入/输出(I/O)情况下,存储设备的写特性效率低。
为了降低写放大的影响,SSD可以定期进行垃圾回收(GarbageCollection,简称GC),缓存可以定期启动淘汰机制。垃圾回收过程的一个例子为:假设SSD包括Block1和Block3,其中,Block1被写入数据、Block3未被写入数据,若需要修改Block1中的原有数据,则需要将Block1中原有的有效数据搬移至SSD的其他Block例如Block3,再擦除Block1。若SSD初始预留了部分块作为冗余空间(free space)使用,且SSD并不告知操作系统,那么在目标数据写入时,SSD可以将该目标数据写入到全新的块中并将原有数据所占用的页标记为“Garbage”(可以回收再利用)。但是,由于可用冗余空间随着SSD中写入目标数据的增加而减少,直至最终耗尽,继而需要SSD定期回收,即将未被标记为“Garbage”的无效页复制到SSD的缓存并集中起来重新写入一个新的擦除过的块,再将全部页都被标记为“Garbage”的块进行擦除使之变成可用空白块,进而实现循环利用。该过程为垃圾回收过程,虽然垃圾回收降低了写放大对SSD造成的影响,但是写放大仍然存在,而且垃圾回收的时机和频率可能会对主机的性能稳定性和I/O延时造成影响。如何提升垃圾回收的效率是目前SSD亟待解决的问题。
目前可以采用两种方法提升垃圾回收的效率,第一种方法是可以通过增加冗余空间的比例来提升垃圾回收效率,例如Intel X25-E系列企业的SSD拥有超过20%的冗余空间,需要进行垃圾回收的块上标记为“Garbage”的无效页,随着冗余空间的增加而增加,只需要搬移少量页即可回收该块,进而满足实际使用的需求。举例而言,若Block1拥有3.125%的冗余空间,Block2拥有96.875%的冗余空间,则Block1搬移64-2=62个页才回收两个空白页,而Block2仅搬移64-62=2个页就回收62个空白页。该方法存在以牺牲存储容量为前提的问题,增加的冗余空间实际上是SSD容量的损失。另一种方法是可以通过分梯度进行垃圾回收,即根据当前可用于冗余空间的块的数量确定垃圾回收力度,换言之,当可用于冗余空间的块较多时,例如SSD全容量没有用完时,垃圾回收几乎不启动,以此来降低垃圾回收力度进而降低垃圾回收对SSD业务的影响。该方法存在垃圾回收难以一直保持在较低力度的问题,若持续有业务写入,垃圾回收保持在较低力度对SSD业务的影响会增加。
综上所述,现有技术在不影响SSD性能如不增加冗余空间的情况下,垃圾回收过程中数据清理的效率低。
发明内容
技术问题
有鉴于此,本发明要解决的技术问题是,如何提升数据清理效率,降低数据清理对于系统业务的影响。
解决方案
为了解决上述技术问题,在第一方面,本发明提出了一种数据写入方法,包括:
在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
将所述目标数据写入所述关联数据块的空白页中。
结合第一方面,在第一种可能的实现方式中,所述确定所述目标数据对应的关联数据块,包括:
确定所述目标数据的逻辑扇区编号LBA;
计算所述目标数据的LBA对应存储区域的热度;
根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述计算所述目标数据的LBA对应存储区域的热度,包括:
根据公式计算所述目标数据的LBA对应存储区域的热度;
其中,H为所述目标数据的LBA对应存储区域的热度;T为距离上次写入所述LBA对应存储区域的时间;N为所述LBA对应存储区域的写入次数;N'为所有LBA对应存储区域的平均写入次数。
结合第一方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述将所述目标数据写入所述关联数据块的空白页中,包括:
在所述目标数据的LBA的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述空白页中。
结合第一方面的第一种可能的实现方式或第二种可能的实现方式,在第四种可能的实现方式中,还包括:
在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为待写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
结合第一方面,在第五种可能的实现方式中,所述关联数据块中的原有数据包括有效数据和无效数据,所述确定所述目标数据对应的关联数据块,还包括:
计算所述目标数据与所述原有数据中的有效数据的逻辑相关度;
在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述计算所述目标数据与所述原有数据中的有效数据的逻辑相关度,包括:
根据公式L=ΔN*ΔT计算所述目标数据与所述有效数据的逻辑相关度;
其中,L为所述逻辑相关度;ΔN为所述目标数据与所述有效数据在所述SSD中存储的份数;ΔT为所述目标数据与所述有效数据的写入时间间隔。
结合第一方面或第一方面的第一种至第六种可能的实现方式中的任一种可能的实现方式,在第七种可能的实现方式中,所述数据写入方法还包括:
在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收;或
在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
在第二方面,本发明提出了一种数据写入装置,包括:
确定单元,用于在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
写入单元,与所述确定单元连接,用于将所述目标数据写入所述关联数据块的空白页中。
结合第二方面,在第一种可能的实现方式中,所述确定单元包括:
第一确定子单元,用于确定所述目标数据的逻辑扇区编号LBA;
第一计算子单元,与所述第一确定子单元连接,用于计算所述目标数据的LBA对应存储区域的热度;
第二确定子单元,与所述第一计算子单元连接,用于根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
其中,H为所述目标数据的LBA对应存储区域的热度;T为距离上次写入所述LBA对应存储区域的时间;N为所述LBA对应存储区域的写入次数;N'为所有LBA对应存储区域的平均写入次数。
结合第二方面的第一种可能的实现方式或第二种可能的实现方式,在第三种可能的实现方式中,所述写入单元包括:
第一写入子单元,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述关联数据块。
结合第二方面的第一种可能的实现方式或第二种可能的实现方式,在第四种可能的实现方式中,还包括:
第二写入子单元,与所述第一写入子单元连接,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
结合第二方面,在第五种可能的实现方式中,所述关联数据块中的原有数据包括有效数据和无效数据,所述确定单元包括:
第二计算子单元,用于计算所述目标数据与所述原有数据中的有效数据的逻辑相关度;
第三确定子单元,与所述第二计算子单元连接,用于在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第二计算子单元用于根据公式L=ΔN*ΔT计算所述目标数据与所述有效数据的逻辑相关度;
其中,L为所述逻辑相关度;ΔN为所述目标数据与所述有效数据在所述SSD中存储的份数;ΔT为所述目标数据与所述有效数据的写入时间间隔。
结合第二方面或第二方面的第一种至第六种可能的实现方式中的任一种可能的实现方式,在第七种可能的实现方式中,所述数据写入装置还包括:
垃圾回收单元,与所述写入单元连接,用于在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收;或
清理单元,与所述写入单元连接,用于在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
有益效果
本发明实施例的数据写入方法,通过将目标数据写入关联数据块的空白页中,能够使具有关联关系的数据集中在关联数据块中,可以提高后续的清理效率。
根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本发明的示例性实施例、特征和方面,并且用于解释本发明的原理。
图1为根据本发明实施例一的数据写入方法的流程图;
图2a、图2b为根据本发明实施例二的数据写入方法的流程图;
图3为根据本发明实施例三的数据写入方法的流程图;
图4为根据本发明实施例四的数据写入装置的结构框图;
图5为根据本发明实施例五的数据写入装置的结构框图;
图6为根据本发明实施例六的数据写入装置的结构框图;
图7为根据本发明实施例七的数据写入装置的结构框图。
具体实施方式
以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有这些具体细节,本发明同样可以实施。在另外一些实例中,对于大家熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
实施例1
图1为根据本发明实施例一的数据写入方法的流程图。如图1所示,该数据写入方法主要包括:
步骤S100、在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
步骤S120、将所述目标数据写入所述关联数据块的空白页中。
具体地,在有目标数据写入的情况下,首先需要确定写入的位置。目标数据既可以写入空白块,也可以写入具有空白页的非空白块。为了使SSD中的无效页集中,或者使采用非易失性闪存作为存储介质的缓存(Cache)中具有关联关系的数据集中,可以根据目标数据与原有数据的关联关系确定目标数据对应的关联数据块。其中,目标数据与原有数据的关联关系可以包括:目标数据要写入的逻辑扇区编号(Logical Block Addressing,简称LBA)对应存储区域的热度与原有数据所在存储区域的热度相近或相同;或目标数据与原有数据逻辑相关。例如:目标数据与Block1中原有数据的热度相近或相同;再如:目标数据与Block1中原有数据中的有效数据逻辑相关,表明目标数据与原有数据具有关联关系,如果关联数据块Block1中具有空白页(Page),就可以将目标数据块写入Block1。
对于SSD,随着SSD中写入数据的增加,在数据空间写满的情况下,可以将数据空间的有效数据搬移到冗余空间,冗余空间慢慢减少,在冗余空间小于一定阈值的情况下,无法进行正常的写入。SSD定期启动垃圾回收,可以将存在无效页的块进行擦除,实现循环利用。其中,垃圾回收过程中,可以按照具有无效页的数量从多到少的顺序,对数据空间的块进行擦除。擦除的块中被标记为“Garbage”的无效页越多,垃圾回收的效率就越高。例如:先将需要擦除的块如Block1中的有效数据复制到SSD的缓存后搬移至其他块中,然后对Block1中的无效页中数据进行擦除,擦除后的Block1可以重新写入数据。其中,一个块中产生无效页的情况可以有多种,例如:在一个块Block1中写入新的数据时,将该Block1中原有的该数据所占用的页标记为“Garbage”,然后可以在垃圾回收过程中将Block1中的无效页擦除。
对于采用非易失性闪存作为存储介质的缓存,随着缓存中写入数据的增加,在缓存空间写满的情况下,无法进行正常的写入,缓存启动淘汰机制进行清理,可以将集中具有关联关系的数据的关联数据块进行擦除。擦除的块中具有关联关系的数据越多,淘汰效率越高。
本实施例的数据写入方法,将目标数据写入关联数据块的空白页,能够使具有关联关系的数据集中在关联数据块中,可以提高后续的清理效率。在SSD的垃圾回收的过程中,无效页可以集中在关联数据块中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。
实施例2
图2a、图2b为根据本发明实施例二的数据写入方法的流程图。图2a、图2b中与图1标号相同的步骤具有相同的功能,为简明起见,省略对这些步骤的详细说明。
本实施例中可以通过热点数据来确定关联数据块,其中,由于与数据清理相关,影响热点数据的判别标准的直接因素可以是写入频率,热点数据被重新写入的几率要远远高于非热点数据,因此,可以通过目标数据的LBA来确定。如图2a、图2b所示,与上一实施例的主要区别在于,步骤S100可以包括:
步骤S200、确定所述目标数据的逻辑扇区编号LBA。
具体地,在有目标数据需要写入时,以非易失性闪存作为存储介质的存储设备接入的主机可以为该目标数据分配对应的逻辑扇区编号(LBA)。所述存储设备接收到目标数据时,可以获取该目标数据的LBA。
步骤S220、计算所述目标数据的LBA对应存储区域的热度。
具体地,在写入目标数据之前,可以计算该目标数据被指定存入的LBA对应存储区域的热度。计算时可以采用的一种可行的公式为:其中,H为该目标数据的LBA对应存储区域的热度,量化所述LBA对应存储区域的热度情况,H值越小表示该目标数据被重新写入的概率越高;T为距离上次写入所述LBA对应存储区域的时间,随着上次写入所述LBA对应存储区域的时间的增加,热度不断降低;N为所述LBA对应存储区域的写入次数;N'为所有LBA对应存储区域的平均写入次数,即所有LBA对应存储区域的写入次数之和除以总LBA数。
步骤S240、根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
具体地,所述存储设备中可以存储并维护一个热度级别表,该热度级别表中可以包括已经写入的原有数据的LBA对应存储区域的热度与该原有数据所在块的对应关系。在根据上述公式计算得到该目标数据的LBA对应存储区域的热度后,可以按热度的值进行热度级别的划分,并将该热度的LBA对应存储区域包含的数据块写入该热度级别中。例如可以定义LBA对应存储区域的热度值为100至200时的热度级别为5,该存储区域包含的数据块Block1、Block2则为热度级别5下的数据块。根据不同的热度将目标数据分配到不同的关联数据块上去,可以使得热度相近的数据集中在相同的关联数据块上,以达到局部富裕的目的。
表1热度级别表
LBA名称 | 热度 | 热度级别 | 包括的数据块名称 |
LBA3 | 1000 | 0(极热) | Block15 |
LBA4 | 1 | 16(极冷) | Block33 |
例如,在写入目标数据之前,确定目标数据对应的区域LBA3,根据上述公式计算得到目标数据的LBA3对应存储区域的热度,查找热度级别表如表1后,找到该热度所属的热度级别对应的块包括Block15。若Block15中存在可以写入数据的空白页,可以将目标数据按顺序写入到Block15的空白页例如Page3中,Block15成为目标数据的关联数据块。
进一步地,步骤S120可以包括:
步骤S260、在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述关联数据块。
在一种可能的实现方式中,本实施例的数据写入方法还可以包括:
步骤S280、在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
例如,在写入目标数据之前,确定目标数据对应的LBA2,根据上述公式计算得到目标数据的LBA2对应存储区域的热度,通过查找热度级别表,找到该热度所属的热度级别对应的块包括Block1。若Block1中已经写满数据,即不存在可以写入数据的空白页,可以重新申请新的空白块Block0作为写入目标数据的关联数据块,并将目标数据的LBA2对应存储区域的热度与Block0的对应关系记录在热度级别表中,将目标数据的LBA2对应存储区域的热度与Block1的对应关系移出热度级别表。
对于SSD,默认的每个LBA对应的块中都有一个有效数据。例如,原来LBA0对应存储区域和LBA1对应存储区域热度都较高,并且原有的有效数据都位于Block0上,此时在需要目标数据写入LBA0时,由于Block0已经没有空白页了,可以重新申请新的空白块Block40并将目标数据写入Block40的Page0,此时可以将原有的位于Block0的该目标数据标记为“Garbage”,新写入Block40中的目标数据为有效数据。如图2a所示,在SSD的垃圾回收过程,在步骤S120之后,该数据写入方法还可以包括:
步骤S140、在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收。
例如:如果需要对Block0中的无效数据进行垃圾回收,则需要搬移Block0中的有效数据,但是LBA1对应存储区域的热度比较高,在短时间内被重新写入的可能性很大,可以暂时不对热度比较高的LBA1对应存储区域中的有效数据的Block进行垃圾回收,很可能LBA1对应存储区域的有效数据很快又被重新写入到另一个Block中,此时Block0的所有页全部被标记为“Garbage”,提高了垃圾回收的效率。
通过上述的步骤,在目标数据被写入到相应的关联数据块后,可以将具有关联关系的数据集中在关联数据块中。在SSD启动垃圾回收时,由于热度高即写入概率较高的数据被写入到相同的关联数据块中,这样被标记为“Garbage”的无效页就可以集中在关联数据块中,将关联数据块Block1未被标记为“Garbage”的有效页中的有效数据复制到SSD的缓存中,并将上述Block1擦除,回收得到新的空白块;此外,SSD的缓存中的有效数据可以集中起来,以便以后重新写入一个新的擦除过的块中,实现循环利用。
如图2b所示,对于采用非易失性闪存作为存储介质的缓存的淘汰过程,在步骤S120之后,该数据写入方法还可以包括:
步骤S150、在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
在采用非易失性闪存作为存储介质的缓存启动淘汰机制时,擦除关联数据块可以回收较多的空白页,清理效率高。
本实施例的数据写入方法,在目标数据写入前,先计算目标数据的LBA的热度,将目标数据写入到不同的块中去,这样可以将具有相近热度的LBA对应的目标数据写入到相同的关联数据块中,使具有关联关系的数据集中在关联数据块中,清理效率高。在SSD的垃圾回收的过程中,无效页可以集中在关联数据块中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。
举例而言,以容量为100G的SSD为例,假设其中有10%的数据是热点数据、即写入概率比较高的数据,拥有5G的冗余空间。由于非热点数据的写入概率比较低,如果将需要频繁写入的数据所占用的页集中,相当于10G的热点数据单独使用5G的冗余空间,这样冗余空间的比例由5%变为50%,实现局部富裕,垃圾回收效率得到大大提升。
实施例3
图3为根据本发明实施例三的数据写入方法的流程图。图3中与图1、图2a和图2b标号相同的步骤具有相同的功能,为简明起见,省略对这些步骤的详细说明。
如图3所示,与上一实施例的主要区别在于,步骤S100可以包括:
步骤S300、计算所述目标数据与所述原有数据中的有效数据的逻辑相关度,其中,所述关联数据块中的原有数据包括无效数据和有效数据。
具体地,在有目标数据写入时,要先计算该目标数据与原有数据中的有效数据的逻辑相关度,参考该逻辑相关度将目标数据写入关联数据块。计算时可以采用的一种可行的公式为:L=ΔN*ΔT,其中,L为该数据与所述有效数据的逻辑相关度,该值越小表示两者相关性越强;ΔN为两者目前在Flash介质中存有的数据份数,也就是尚未被擦除的数据份数;ΔT为两者上次写入数据的时间间隔。
步骤S320、在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
具体地,根据上述公式计算目标数据与有效数据的逻辑相关度是为了确定该目标数据被写入的关联数据块。逻辑相关度越小,表明目标数据与有效数据的逻辑相关性越强,即在较短的时间内被一起写入的概率越高。在计算得出的逻辑相关度小于设定阈值例如:0.1的情况下,目标数据与有效数据的逻辑相关性较强,可以将该目标数据写入有效数据所在的关联数据块中。
举例而言,如果在写入目标数据之前,没有任何已经写入的数据,那么可以直接申请一个空白块将目标数据写入。如果在写入目标数据之前,所述存储设备中的块例如Block1已经写入数据,那么需要对目标数据和Block1中有效数据的逻辑相关度进行计算,若计算得出的逻辑相关度小于设定阈值,则将目标数据按顺序写入Block1其他的空白页中;若计算得出的逻辑相关度大于设定阈值,则重新申请新的空白块例如Block2并将目标数据写入Block2的空白页中。如果在写入目标数据之前,Block1、Block2都已经写入了数据,若计算得出目标数据和Block1中的有效数据的逻辑相关度小于设定阈值,目标数据和Block2中的有效数据的逻辑相关度大于设定阈值,则将目标数据按顺序写入Block1的空白页中。若计算得出的逻辑相关度均小于设定阈值,并且目标数据与Block1中有效数据的逻辑相关度小于目标数据与Block2中有效数据的逻辑相关度,则可以将目标数据写入逻辑相关度更小的Block1的空白页中。若计算得出的逻辑相关度均大于设定阈值,则可以重新申请新的空白块例如Block3并将目标数据写入Block3的空白页中。
通过上述的步骤,在目标数据被写入到相应的关联数据块后,可以将具有关联关系的数据集中在关联数据块中。本实施例描述的数据写入方法同样可以用于SSD的垃圾回收过程和采用非易失性闪存为存储介质的缓存的淘汰过程中,提高数据清理的效率。具体实施方式可以参见实施例二中数据写入方法对于步骤S140和步骤S150的相关描述。
本实施例的数据写入方法,在目标数据写入前,先计算目标数据与原有数据中的有效数据的逻辑相关度将目标数据写入到不同的块中去,这样可以将逻辑相关的数据写入到相同的关联数据块中,使具有关联关系的数据集中在关联数据块中,清理效率高。在SSD的垃圾回收的过程中,无效页可以集中在关联数据块中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。
实施例4
图4为根据本发明实施例四的数据写入装置的结构框图。如图4所示,该数据写入装置400可以包括:
确定单元420,用于在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
写入单元440,与所述确定单元420连接,用于将所述目标数据写入所述关联数据块的空白页中。
本发明实施例中的数据写入装置可以采用上述实施例中的数据写入方法进行数据清理。具体地,在有目标数据写入的情况下,首先需要确定单元420确定写入的位置。目标数据既可以写入空白块,也可以写入具有空白页的非空白块,为了使SSD中的无效页以及采用非易失性闪存作为存储介质的缓存中具有关联关系的数据集中,确定单元420可以根据目标数据与原有数据的关联关系确定目标数据对应的关联数据块。写入单元440可以将目标数据写入存在空白页的关联数据块。其中,关联关系的具体示例可以参见实施例一中的数据写入方法的相关描述。
对于SSD,随着该SSD中写入数据的增加,在数据空间写满的情况下,可以将数据空间的有效数据搬移到冗余空间,冗余空间会慢慢减少,在冗余空间小于一定阈值的情况下,无法进行正常的写入。SSD定期启动垃圾回收,可以将存在无效页的块进行擦除,实现循环利用。其中,执行垃圾回收的过程中,可以按照具有无效页的数量从多到少的顺序,对数据空间的块进行擦除。擦除的块中被标记为“Garbage”的无效页越多,垃圾回收的效率就越高。
对于采用非易失性闪存作为存储介质的缓存,随着该缓存中写入数据的增加,在缓存空间写满的情况下,无法进行正常的写入,该缓存启动淘汰机制进行清理,可以将集中具有关联关系的数据的关联数据块进行擦除。擦除的块中具有关联关系的数据越多,淘汰效率越高。
本实施例的数据写入装置,通过确定单元确定目标数据对应的关联数据块,写入单元将目标数据写入关联数据块的空白页,能够使具有关联关系的数据集中在关联数据块中,清理效率高。在SSD的垃圾回收过程中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,启动淘汰机制,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。具体示例可以参见实施例一中的数据写入方法的相关描述。
实施例5
图5为根据本发明实施例五的数据写入装置的结构框图。图5中与图4标号相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
本实施例中数据写入装置500可以通过热点数据来确定关联数据块,其中,由于与数据清理相关,影响热点数据的判别标准的直接因素可以是写入频率,热点数据被重新写入的几率要远远高于非热点数据,因此,可以通过目标数据的LBA来确定。如图5所示,图5所示的装置与图4所示的装置的主要区别在于,所述确定单元420可以包括:
第一确定子单元520,用于确定所述目标数据的逻辑扇区编号LBA;
第一计算子单元540,与所述第一确定子单元520连接,用于计算所述目标数据的LBA对应存储区域的热度。
具体地,在有目标数据需要写入时,以非易失性闪存作为存储介质的存储设备接入的主机可以为该目标数据分配对应的LBA。所述存储设备接收到目标数据时,可以获取该目标数据的LBA。在写入单元440写入目标数据之前,第一计算子单元540可以计算该目标数据被指定存入的LBA对应存储区域的热度。计算时可以采用的一种可行的公式的具体示例可以参见实施例二的数据写入方法中的相关描述。
第二确定子单元560,与所述第一计算子单元540连接,用于根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
具体地,所述存储设备中可以存储并维护一个热度级别表,具体可以参见上述表1及其相关描述。该热度级别表中可以包括已经写入的原有数据的LBA对应存储区域的热度与该原有数据所在块的对应关系。在第一计算子单元540计算得到该目标数据的LBA对应存储区域的热度后,第二确定子单元560将该目标数据按照LBA对应存储区域的热度级别进行分类,查找所述热度级别表,确定该热度级别对应的关联数据块。根据不同的热度将目标数据分配到不同的关联数据块上去,可以使得热度相近的数据集中在相同的关联数据块上,以达到局部富裕的目的。
图5所示的装置与图4所示的装置的主要区别还在于,所述写入单元440可以包括:
第一写入子单元580,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述关联数据块。
进一步地,数据写入装置500还可以包括:
第二写入子单元590,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
执行过程的具体示例可以参见实施例二的数据写入方法中的相关描述。
如图5所示,在SSD的垃圾回收过程中,该数据写入装置还可以包括:
垃圾回收单元460,用于在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收。
通过上述的步骤,在写入单元440将目标数据写入到相应的关联数据块后,可以将具有关联关系的数据集中在关联数据块中。在垃圾回收单元460启动垃圾回收时,由于热度高即写入概率较高的数据被写入到相同的关联数据块中,这样被标记为“Garbage”的无效页就可以集中关联数据块中,将关联数据块Block1未被标记为“Garbage”的有效页中的有效数据复制到SSD的缓存中,并将上述Block1擦除,回收得到新的空白块;此外,SSD的缓存中的有效数据可以集中起来,以便以后重新写入一个新的擦除过的块中,实现循环利用。
如图5所示,对于采用非易失性闪存作为存储介质的缓存的淘汰过程,数据写入装置500还可以包括:
清理单元480,用于在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
在清理单元480启动淘汰机制时,擦除关联数据块可以回收较多的空白页,清理效率高。具体示例可以参见实施例二的数据写入方法中的相关描述。
本实施例的数据写入装置,在写入单元将目标数据写入前,第一计算子单元先计算目标数据的LBA对应存储区域的热度,第二确定子单元根据第一计算子单元输出的结果确定目标数据对应的关联数据块,第一写入子单元和第二写入子单元将目标数据写入到不同的块中去,这样可以将具有相近热度的LBA对应存储区域的目标数据写入到相同的关联数据块中,使具有关联关系的数据集中在所述关联数据块中,清理效率高。在垃圾回收单元执行垃圾回收的过程中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,清理单元启动淘汰机制,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。
实施例6
图6为根据本发明实施例六的数据写入装置的结构框图。图6中与图4和图5标号相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
如图6所示,图6所示的装置与图4和图5所示的装置的主要区别在于,所述确定单元420可以包括:
第二计算子单元620,用于计算所述目标数据与所述原有数据中的有效数据的逻辑相关度,所述关联数据块中的原有数据包括无效数据和有效数据;
第三确定子单元640,与所述第二计算子单元620连接,用于在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
具体地,在有目标数据写入时,第二计算子单元620先计算该目标数据与原有数据中的有效数据的逻辑相关度。计算时可以采用的一种可行的公式的具体示例可以参见实施例三的数据写入方法中的相关描述。
具体地,第二计算子单元620计算目标数据与有效数据的逻辑相关度是为了确定目标数据被写入的关联数据块。在第二计算子单元620计算得出的逻辑相关度小于设定阈值例如:0.1的情况下,第三确定子单元640确定所述有效数据所在的块为所述目标数据的关联数据块中,写入单元440将目标数据写入该关联数据块。执行过程的具体示例可以参见实施例三的数据写入方法中的相关描述。
通过上述的步骤,在写入单元440将目标数据写入到相应的关联数据块后,可以将具有关联关系的数据集中在关联数据块中。本实施例描述的数据写入装置同样可以用于SSD的垃圾回收过程和采用非易失性闪存为存储介质的缓存的淘汰过程中,提高数据清理的效率。具体实施方式可以参见实施例五中数据写入装置对于垃圾回收单元460和清理单元480的相关描述。在垃圾回收单元460启动垃圾回收时,可以将关联数据块Block1未被标记为“Garbage”的有效页中的有效数据复制到SSD的缓存中,并将上述Block1擦除,回收得到新的空白块;此外,SSD的缓存中的有效数据可以集中起来,以便以后重新写入一个新的擦除过的块中,实现循环利用。在清理单元480启动淘汰机制时,擦除关联数据块可以回收较多的空白页,清理效率高。具体示例可以参见实施例三的数据写入方法中的相关描述。
本实施例的数据写入装置,在写入单元将目标数据写入前,第二计算子单元先计算目标数据与原有数据中的有效数据的逻辑相关度,第三确定子单元根据第二计算子单元输出的结果确定目标数据对应的关联数据块,写入单元将目标数据写入到不同的块中去,这样可以将逻辑相关度较强的数据写入到相同的关联数据块中,使具有关联关系的数据集中在关联数据块中,清理效率高。在垃圾回收单元执行垃圾回收的过程中,擦除关联数据块可以回收较多的空白页,提高了垃圾回收效率,减少SSD的颗粒磨损,延长了SSD的使用寿命。在采用非易失性闪存作为存储介质的缓存中,可以将具有关联关系的数据集中在关联数据块中,如果缓存空间不足,需要采用淘汰机制进行清理时,清理单元启动淘汰机制,擦除关联数据块可以回收较多的空白页,提高了淘汰效率,减少缓存的颗粒磨损,延长了淘汰的使用寿命。
实施例7
图7为根据本发明实施例七的数据写入装置的结构框图。所述数据写入装置700可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机或终端等。本发明具体实施例并不对计算节点的具体实现做限定。
所述数据写入装置700包括处理器(processor)710、通信接口(Communications Interface)720、存储器(memory array)730和总线740。其中,处理器710、通信接口720、以及存储器730通过总线740完成相互间的通信。
通信接口720用于与网元通信,其中网元包括例如虚拟机管理中心、共享存储等。
处理器710用于执行程序。处理器710可能是一个中央处理器CPU,或者是专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器730用于存放文件。存储器730可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器730也可以是存储器阵列。存储器730还可能被分块,并且所述块可按一定的规则组合成虚拟卷。
在一种可能的实施方式中,上述程序可为包括计算机操作指令的程序代码。该程序具体可用于:
在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
将所述目标数据写入所述关联数据块的空白页中。
在一种可能的实施方式中,所述确定所述目标数据对应的关联数据块,包括:
确定所述目标数据的逻辑扇区编号LBA;
计算所述目标数据的LBA对应存储区域的热度;
根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
在一种可能的实现方式中,所述计算所述目标数据的LBA对应存储区域的热度包括:
其中,H为所述目标数据的LBA对应存储区域的热度;T为距离上次写入所述LBA对应存储区域的时间;N为所述LBA对应存储区域的写入次数;N'为所有LBA对应存储区域的平均写入次数。
在一种可能的实现方式中,所述将所述目标数据写入所述关联数据块的空白页中,包括:
在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述关联数据块;
在一种可能的实现方式中,该程序具体还用于:
在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
在一种可能的实现方式中,所述关联数据块中的原有数据包括有效数据和无效数据,所述确定所述目标数据对应的关联数据块,还包括:
计算所述目标数据与所述原有数据中的有效数据的逻辑相关度;
在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
在一种可能的实现方式中,所述计算所述目标数据与所述原有数据中的有效数据的逻辑相关度,包括:
根据公式L=ΔN*ΔT计算所述目标数据与所述有效数据的逻辑相关度;
其中,L为所述逻辑相关度;ΔN为所述目标数据与所述有效数据在所述SSD中存储的份数;ΔT为所述目标数据与所述有效数据的写入时间间隔。
在一种可能的实现方式中,上述程序还用于:
在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收;或
在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
本领域普通技术人员可以意识到,本文所描述的实施例中的各示例性单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件形式来实现,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对特定的应用选择不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
如果以计算机软件的形式来实现所述功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (16)
1.一种数据写入方法,其特征在于,包括:
在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
将所述目标数据写入所述关联数据块的空白页中。
2.根据权利要求1所述的数据写入方法,其特征在于,所述确定所述目标数据对应的关联数据块,包括:
确定所述目标数据的逻辑扇区编号LBA;
计算所述目标数据的LBA对应存储区域的热度;
根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
4.根据权利要求2或3中所述的数据写入方法,其特征在于,所述将所述目标数据写入所述关联数据块的空白页中,包括:
在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述空白页中。
5.根据权利要求2或3中所述的数据写入方法,其特征在于,还包括:
在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为待写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
6.根据权利要求1所述的数据写入方法,其特征在于,所述关联数据块中的原有数据包括有效数据和无效数据,所述确定所述目标数据对应的关联数据块,还包括:
计算所述目标数据与所述原有数据中的有效数据的逻辑相关度;
在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
7.根据权利要求6所述的数据写入方法,其特征在于,所述计算所述目标数据与所述原有数据中的有效数据的逻辑相关度,包括:
根据公式L=ΔN*ΔT计算所述目标数据与所述有效数据的逻辑相关度;
其中,L为所述逻辑相关度;ΔN为所述目标数据与所述有效数据在所述SSD中存储的份数;ΔT为所述目标数据与所述有效数据的写入时间间隔。
8.根据权利要求1-7中任一项所述的数据写入方法,其特征在于,还包括:
在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收;或
在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
9.一种数据写入装置,其特征在于,包括:
确定单元,用于在有目标数据需要写入的情况下,确定所述目标数据对应的关联数据块,所述关联数据块的原有数据与所述目标数据具有关联关系;
写入单元,与所述确定单元连接,用于将所述目标数据写入所述关联数据块的空白页中。
10.根据权利要求9所述的数据写入装置,其特征在于,所述确定单元包括:
第一确定子单元,用于确定所述目标数据的逻辑扇区编号LBA;
第一计算子单元,与所述第一确定子单元连接,用于计算所述目标数据的LBA对应存储区域的热度;
第二确定子单元,与所述第一计算子单元连接,用于根据所述目标数据的LBA对应存储区域的热度,查找热度级别表,确定所述目标数据对应的关联数据块。
12.根据权利要求10或11中所述的数据写入装置,其特征在于,所述写入单元包括:
第一写入子单元,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块存在空白页的情况下,将所述目标数据写入所述关联数据块。
13.根据权利要求10或11中所述的数据写入装置,其特征在于,还包括:
第二写入子单元,用于在所述目标数据的LBA对应存储区域的热度对应的关联数据块不存在空白页的情况下,申请新的空白块作为待写入所述目标数据的关联数据块,将所述目标数据的LBA对应存储区域的热度与所述新的空白块的对应关系记录在所述热度级别表中。
14.根据权利要求9所述的数据写入装置,其特征在于,所述关联数据块中的原有数据包括有效数据和无效数据,所述确定单元还包括:
第二计算子单元,用于计算所述目标数据与所述原有数据中的有效数据的逻辑相关度;
第三确定子单元,与所述第二计算子单元连接,用于在确定所述目标数据与所述有效数据的逻辑相关度小于设定阈值的情况下,确定所述有效数据所在的块为所述目标数据的关联数据块。
15.根据权利要求14所述的数据写入装置,其特征在于,所述第二计算子单元用于根据公式L=ΔN*ΔT计算所述目标数据与所述有效数据的逻辑相关度;
其中,L为所述逻辑相关度;ΔN为所述目标数据与所述有效数据在所述SSD中存储的份数;ΔT为所述目标数据与所述有效数据的写入时间间隔。
16.根据权利要求9-15中任一项所述的数据写入装置,其特征在于,还包括:
垃圾回收单元,与所述写入单元连接,用于在固态硬盘进入垃圾回收状态时,对所述关联数据块中的无效页进行垃圾回收;或
清理单元,与所述写入单元连接,用于在缓存启动淘汰机制时,对所述关联数据块中的数据进行集中清理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103860861A CN103455435A (zh) | 2013-08-29 | 2013-08-29 | 数据写入方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103860861A CN103455435A (zh) | 2013-08-29 | 2013-08-29 | 数据写入方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103455435A true CN103455435A (zh) | 2013-12-18 |
Family
ID=49737830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103860861A Pending CN103455435A (zh) | 2013-08-29 | 2013-08-29 | 数据写入方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103455435A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104391661A (zh) * | 2014-12-12 | 2015-03-04 | 西安三星电子研究有限公司 | 向固态硬盘写入数据的方法及设备 |
CN104484283A (zh) * | 2014-11-27 | 2015-04-01 | 记忆科技(深圳)有限公司 | 一种降低固态硬盘写放大的方法 |
CN105204783A (zh) * | 2015-10-13 | 2015-12-30 | 华中科技大学 | 一种基于数据生存期的固态盘垃圾回收方法 |
WO2016086411A1 (zh) * | 2014-12-05 | 2016-06-09 | 华为技术有限公司 | 一种控制器、闪存装置、识别数据块稳定性的方法以及在闪存装置中存储数据的方法 |
CN107122124A (zh) * | 2016-02-25 | 2017-09-01 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN107544748A (zh) * | 2016-06-28 | 2018-01-05 | 光宝电子(广州)有限公司 | 固态储存装置及其数据写入方法 |
CN108153680A (zh) * | 2016-12-05 | 2018-06-12 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108595117A (zh) * | 2018-03-29 | 2018-09-28 | 记忆科技(深圳)有限公司 | 一种动态容量调整过程中安全平滑的方法 |
CN108614666A (zh) * | 2016-12-09 | 2018-10-02 | 北京京存技术有限公司 | 基于NANDflash的数据块处理方法和装置 |
CN109164983A (zh) * | 2018-08-24 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种用户数据分类存储方法、装置及设备 |
CN109840123A (zh) * | 2017-11-28 | 2019-06-04 | 合肥美的智能科技有限公司 | 向用户展示数据的方法和装置 |
CN110471628A (zh) * | 2019-08-21 | 2019-11-19 | 深圳市时创意电子有限公司 | 一种可减少数据页分散的数据存储方法 |
CN112988042A (zh) * | 2019-12-18 | 2021-06-18 | 深圳大普微电子科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN113297003A (zh) * | 2020-02-24 | 2021-08-24 | 伊姆西Ip控股有限责任公司 | 管理备份数据的方法、电子设备和计算机程序产品 |
CN113553306A (zh) * | 2021-07-27 | 2021-10-26 | 重庆紫光华山智安科技有限公司 | 数据处理方法及数据存储管理系统 |
CN114115754A (zh) * | 2022-01-28 | 2022-03-01 | 北京紫光青藤微系统有限公司 | 用于数据更新的方法及装置、电子设备、存储介质 |
US11327883B2 (en) | 2020-03-12 | 2022-05-10 | International Business Machines Corporation | Solid-state drive performance and lifespan based on data affinity |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120137107A1 (en) * | 2010-11-26 | 2012-05-31 | Hung-Ming Lee | Method of decaying hot data |
CN102799534A (zh) * | 2012-07-18 | 2012-11-28 | 上海宝存信息科技有限公司 | 基于固态存储介质的存储系统及方法、冷热数据识别方法 |
CN103246609A (zh) * | 2013-04-24 | 2013-08-14 | 深圳市江波龙电子有限公司 | 一种闪存存储设备中冷热数据区分管理的方法及装置 |
-
2013
- 2013-08-29 CN CN2013103860861A patent/CN103455435A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120137107A1 (en) * | 2010-11-26 | 2012-05-31 | Hung-Ming Lee | Method of decaying hot data |
CN102799534A (zh) * | 2012-07-18 | 2012-11-28 | 上海宝存信息科技有限公司 | 基于固态存储介质的存储系统及方法、冷热数据识别方法 |
CN103246609A (zh) * | 2013-04-24 | 2013-08-14 | 深圳市江波龙电子有限公司 | 一种闪存存储设备中冷热数据区分管理的方法及装置 |
Non-Patent Citations (1)
Title |
---|
阳佶宏: "一种结合热数据识别的FTL算法", 《中国优秀硕士学位论文全文数据库信息科技辑》 * |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484283A (zh) * | 2014-11-27 | 2015-04-01 | 记忆科技(深圳)有限公司 | 一种降低固态硬盘写放大的方法 |
CN104484283B (zh) * | 2014-11-27 | 2018-03-27 | 记忆科技(深圳)有限公司 | 一种降低固态硬盘写放大的方法 |
WO2016086411A1 (zh) * | 2014-12-05 | 2016-06-09 | 华为技术有限公司 | 一种控制器、闪存装置、识别数据块稳定性的方法以及在闪存装置中存储数据的方法 |
US9772790B2 (en) | 2014-12-05 | 2017-09-26 | Huawei Technologies Co., Ltd. | Controller, flash memory apparatus, method for identifying data block stability, and method for storing data in flash memory apparatus |
CN107102819A (zh) * | 2014-12-12 | 2017-08-29 | 西安三星电子研究有限公司 | 向固态硬盘写入数据的方法及设备 |
CN104391661A (zh) * | 2014-12-12 | 2015-03-04 | 西安三星电子研究有限公司 | 向固态硬盘写入数据的方法及设备 |
CN105204783B (zh) * | 2015-10-13 | 2018-12-07 | 华中科技大学 | 一种基于数据生存期的固态盘垃圾回收方法 |
CN105204783A (zh) * | 2015-10-13 | 2015-12-30 | 华中科技大学 | 一种基于数据生存期的固态盘垃圾回收方法 |
CN107122124A (zh) * | 2016-02-25 | 2017-09-01 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN107122124B (zh) * | 2016-02-25 | 2021-06-15 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
CN107544748A (zh) * | 2016-06-28 | 2018-01-05 | 光宝电子(广州)有限公司 | 固态储存装置及其数据写入方法 |
CN107544748B (zh) * | 2016-06-28 | 2020-06-16 | 建兴储存科技(广州)有限公司 | 固态储存装置及其数据写入方法 |
CN108153680B (zh) * | 2016-12-05 | 2021-10-26 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108153680A (zh) * | 2016-12-05 | 2018-06-12 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
CN108614666B (zh) * | 2016-12-09 | 2021-10-26 | 北京兆易创新科技股份有限公司 | 基于NAND flash的数据块处理方法和装置 |
CN108614666A (zh) * | 2016-12-09 | 2018-10-02 | 北京京存技术有限公司 | 基于NANDflash的数据块处理方法和装置 |
CN109840123A (zh) * | 2017-11-28 | 2019-06-04 | 合肥美的智能科技有限公司 | 向用户展示数据的方法和装置 |
CN108595117B (zh) * | 2018-03-29 | 2021-04-23 | 记忆科技(深圳)有限公司 | 一种动态容量调整过程中安全平滑的方法 |
CN108595117A (zh) * | 2018-03-29 | 2018-09-28 | 记忆科技(深圳)有限公司 | 一种动态容量调整过程中安全平滑的方法 |
CN109164983A (zh) * | 2018-08-24 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种用户数据分类存储方法、装置及设备 |
CN110471628A (zh) * | 2019-08-21 | 2019-11-19 | 深圳市时创意电子有限公司 | 一种可减少数据页分散的数据存储方法 |
CN110471628B (zh) * | 2019-08-21 | 2022-12-02 | 深圳市时创意电子有限公司 | 一种可减少数据页分散的数据存储方法 |
CN112988042A (zh) * | 2019-12-18 | 2021-06-18 | 深圳大普微电子科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN112988042B (zh) * | 2019-12-18 | 2023-04-18 | 深圳大普微电子科技有限公司 | 一种数据存储方法、装置、设备及可读存储介质 |
CN113297003A (zh) * | 2020-02-24 | 2021-08-24 | 伊姆西Ip控股有限责任公司 | 管理备份数据的方法、电子设备和计算机程序产品 |
US11327883B2 (en) | 2020-03-12 | 2022-05-10 | International Business Machines Corporation | Solid-state drive performance and lifespan based on data affinity |
CN113553306A (zh) * | 2021-07-27 | 2021-10-26 | 重庆紫光华山智安科技有限公司 | 数据处理方法及数据存储管理系统 |
CN114115754A (zh) * | 2022-01-28 | 2022-03-01 | 北京紫光青藤微系统有限公司 | 用于数据更新的方法及装置、电子设备、存储介质 |
CN114115754B (zh) * | 2022-01-28 | 2022-04-05 | 北京紫光青藤微系统有限公司 | 用于数据更新的方法及装置、电子设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103455435A (zh) | 数据写入方法及装置 | |
CN103136121B (zh) | 一种固态盘的缓存管理方法 | |
CN103488583B (zh) | 一种高性能高可靠的固态盘实现方法 | |
CN102622309B (zh) | 数据安全擦除方法及装置 | |
CN102841851B (zh) | 闪存管理方法和闪存设备 | |
CN103270500B (zh) | 事务日志恢复 | |
CN102981963B (zh) | 一种固态盘的闪存转换层的实现方法 | |
WO2016086899A1 (zh) | 一种存储设备元数据管理处理方法及系统 | |
US10877898B2 (en) | Method and system for enhancing flash translation layer mapping flexibility for performance and lifespan improvements | |
CN102508788B (zh) | Ssd及ssd垃圾回收方法和装置 | |
CN102768645B (zh) | 混合缓存的固态硬盘预取方法和固态硬盘ssd | |
Hsieh et al. | Efficient on-line identification of hot data for flash-memory management | |
CN106681935A (zh) | 一种固态硬盘垃圾回收方法 | |
CN103514095B (zh) | 一种数据库写入ssd 的方法和系统 | |
CN103699492A (zh) | 非易失性存储器的数据收集方法 | |
CN102511044A (zh) | 一种数据删除方法及装置 | |
US20130054878A1 (en) | Solid state drive and wear-leveling control method thereof | |
CN103577336A (zh) | 一种存储数据处理方法及装置 | |
CN109240939B (zh) | 一种快速处理固态硬盘trim的方法 | |
CN105718206A (zh) | 能够感知raid的闪存转换层及其实现方法 | |
CN104731515B (zh) | 控制存储设备机群磨损均衡的方法及设备 | |
CN103744798A (zh) | 固态硬盘的垃圾回收方法 | |
CN104424110A (zh) | 固态驱动器的主动回收 | |
CN104050057B (zh) | 一种历史感知的数据去重碎片消除方法与系统 | |
CN105204783A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131218 |
|
RJ01 | Rejection of invention patent application after publication |