CN114297092A - 数据处理方法、***、设备、存储***及介质 - Google Patents
数据处理方法、***、设备、存储***及介质 Download PDFInfo
- Publication number
- CN114297092A CN114297092A CN202111600004.XA CN202111600004A CN114297092A CN 114297092 A CN114297092 A CN 114297092A CN 202111600004 A CN202111600004 A CN 202111600004A CN 114297092 A CN114297092 A CN 114297092A
- Authority
- CN
- China
- Prior art keywords
- access unit
- data
- storage pool
- access
- logical
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供数据处理方法、***、设备、存储***及介质。方法包括:接收待处理数据对应的逻辑地址;将逻辑地址作为第一访问单元存入第一存储池内;待第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于第二访问单元对数据进行处理。由于第一存储池中的第一访问单元具有小访问单元和映射表,当进行数据写或读的时候,可以基于第一存储池实现,而第二存储池中的第二存储块则支持大的访问单元和大的映射表,避免基于第二存储池进行部分数据写或读,从而能够有效缓解写放大和服务质量不佳等问题。在满足数据存储需求的同时,能减轻存储***硬件成本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及数据处理方法、***、设备、存储***及介质。
背景技术
随着云存储技术及需求的发展,固态硬盘(比如,SSD)的容量越来越大,对应的也就需要为固态硬盘配有更大的缓存来存储地址映射表。所使用的缓存越多成本越高,因此,需要想办法对缓存成本进行降低。
在现有技术中,可以通过在固态硬盘中引入大访问单元(Large Access Unit,Large AU),进而能够减少闪存转换层(flash translation layer,FTL)管理的二级映射表(Logical Address to Physical address,L2P)的数量。然而,大访问单元进行读改写的时候,首先要读取整个大访问单元(Large AU),与新传入的数据块进行合并,然后,在将其写回到闪存当中,若大访问单元中有有效数据,而新传入的数据块又小于一个大访问单元的空间,则会导致出现更大的写放大(Write Amplification,WA)。为了解决这些问题,现有技术通过部署顺序流来存储最后一个大访问单元的方式,利用缓存来存储。一般一个应用程序可能会并行打开数百个逻辑块,需要占用很多缓存空间来存储对应的顺序流;虽然采用大空间,但是,直接写入数据的时候,还是采用小访问单元大小数据写入方式,进而引起较大的写放大。
发明内容
为解决或改善现有技术中存在的问题,本申请各实施例提供了数据处理方法、***、设备、存储***及介质。
第一方面,在本申请的一个实施例中,提供了一种数据处理方法。该方法包括:
接收待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
第二方面,在本申请的一个实施例中,提供了一种数据处理***。所述***包括:
第一存储池,用于接收待处理数据对应的逻辑地址;将所述逻辑地址作为第一访问单元存入第一存储池内;待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内;
所述第二存储池,用于存储由所述多个第一访问单元中的逻辑地址组合得到的第二访问单元,并基于所述第二访问单元对数据进行处理。
第三方面,在本申请的一个实施例中,提供了一种电子设备,包括存储器和处理器;
所述存储器包括:非固态硬盘和固态硬盘,所述非固态硬盘中存储有数据处理程序,所述固态硬盘用于存储待处理数据;
所述处理器与所述存储器耦合,用于执行所述输出处理程序,以用于:
接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
第四方面,在本申请的一个实施例中,提供了一种基于固态硬盘的存储***,包括:主机和挂载于所述主机上的固态硬盘;
所述固态硬盘,用于接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
第五方面,在本申请的一个实施例中,提供了一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现第一方面所述的方法
本申请实施例提供的技术方案,当主机有数据想要存入到固态硬盘的时候,需要建立用于管理这些待处理数据的逻辑地址与物理地址映射关系的映射表。在进行存储的时候,可以先将待处理数据的逻辑地址存储到第一存储池中的第一访问单元中;当第一存储池中的逻辑地址的数据量满足要求时(比如,满足第一存储池中的逻辑地址的数据量是第二存储池中第二访问单元的数据容量的整数倍的时候),可以将多个第一访问单元中的逻辑地址转移存储到至少一个第二访问单元中。由于第二存储池中的闪存颗粒密度大于第一存储池中的闪存颗粒密度,换言之,第一存储池中的第一访问单元具有更小的访问单元和映射表,当进行数据写入或读取的时候,可以基于第一存储池实现,而第二存储池中的第二存储块则支持更大的访问单元和更大的映射表,尽可能避免基于第二存储池进行部分数据写入或者读取,从而能够有效缓解写放大和服务质量不佳等问题。进而,在保证数据存储需求的同时,能够减轻存储***硬件成本。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的数据处理方法的流程示意图;
图2为本申请实施例提供的基于第一存储池进行存储的方法流程示意图;
图3为本申请实施例提供的第一存储池的结构示意图;
图4为本申请实施例提供的组合存储方法的流程示意图;
图5为本申请实施例提供的第二存储池的结构示意图;
图6为本申请实施例提供的一种数据处理***的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图;
图8为本申请实施例提供的一种基于固态硬盘的存储***的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的说明书、权利要求书及上述附图中描述的一些流程中,包含了按照特定顺序出现的多个操作,这些操作可以不按照其在本文中出现的顺序来执行或并行执行。操作的序号如101、102等,仅仅是用于区分各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。此外,下文描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着存储技术的发展,尤其是云存储技术得到了广泛应用的情况下,云存储设备成本问题日益突出。自NAND Flash发展至今,闪存颗粒已经进行了四次革新。根据NAND闪存颗粒内部排列的电子单元密度的不同,闪存颗粒有了如今的SLC、MLC、TLC、QLC闪存之分。其闪存颗粒的存储密度得到了很大的提高,单位Bit的成本也得到极大降低。在大容量QLC的盘上,希望采用更大的访问单元来减少固态硬盘(SSD)设备内的DRAM用量。在选择大访问单元的时候,也带来了一定的弊端,比如更大的访问单元会带来读改写(read modify write,RMW)导致额外的写放大(WA),影响固态硬盘的性能与寿命。因此,需要一种能够支持更大访问单元进行数据处理的同时避免写放大造成的不利影响。下面将通过具体实施例进行说明。
首先对主要技术术语进行解释:
SSD(Solid State Drive):固态硬盘,主要包括两类,一种是基于闪存颗粒(比如,SLC、MLC、TLC、QLC、PLC)构成,另一种是基于DRAM构成。本申请技术方案则是采用基于闪存颗粒技术构成的SSD。其中,SLC(single-level cell)因为稳定性能最好,寿命也最长(理论可擦写10W次),成本也最高。MLC双比特单元(每个Cell单元储存2个数据,有22=4个状态,00/01/10/11,因此有四种不同电压状态),也就是仅有两种不同的电压状态)性能、寿命(理论可擦写1W次)、成本比SLC低。TLC三比特单元(每个Cell单元储存3个数据,有23=8个状态,有八种不同电压状态),成本低。QLC、PLC将在下述实施例中具体说明。每Cell单元存储数据越多,单位面积容量就越高。
AU(Access Unit):访问单元,也是存储盘内的映射管理单元。
QoS(Quality of Service):服务质量,QoS参数主要包括:传输带宽,传输时延和抖动,丢包率等。
WA(Write Amplification):写放大,通常描述NAND中写入量与用户数据写入量的比值。因为当写入新数据时,如果固态硬盘的控制器找不到可以写入的page时,会执行垃圾回收过程,然后垃圾回收机制会将一些数据块中的有效数据合并写入其他的数据块中,然后将这些数据块的无效数据擦除,再将新数据写入到这些数据块中,而在整个过程中除了要写入用户的数据之外,实际上固态硬盘还写入了一些其他数据块合并过来的数据,也就是实际写入数据要大于用户的数据,因此产生了写入放大。
FTL(Flash Translation Layer):固态硬盘映射管理以及相关算法的统称。其实就是一种LBA到PBA的映射。当文件***发送指令要写入或者更新一个特定的逻辑页时,FTL实际上是把数据写入到一个不同的空闲物理页并更新映射表(LBA和PBA的关联数据),并把这个页上包含的“旧数据”标记为“无效”(更新后的数据已经写入新的PBA,旧地址的数据自然就失效了)。
LBA(Logical Block Address):逻辑块地址,是数据存储设备中用来表示数据所在位置的通用机制,指某个数据块的物理地址或者某个物理地址上所指向的数据块。
L2P(Logical to Phsycal):逻辑地址到物理地址的映射表。
GC(Garbage Collection):垃圾回收,固态硬盘控制器会先复制所有有效数据(仍在使用中的数据)并将其写入不同数据区的空白页、擦除当前数据区中的所有数据单元,然后开始将新数据写入刚刚擦除过的数据区。
如图1为本申请实施例提供的数据处理方法的流程示意图。在实际应用场景中,该方法的执行主体可以是存储设备(比如,本地存储设备、云存储设备等)。该方法具体包括如下步骤:
101:接收待处理数据对应的逻辑地址。
102:将所述逻辑地址作为第一访问单元存入第一存储池内。
103:待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
这里所说的待处理数据可以是待读取或者写入存储设备的数据。该待处理数据将被存储到对应的物理地址。但是在对该待处理数据进行读写等处理的时候,操作***需要通过访问映射表对应的第一访问单元中逻辑地址来查找到对应的物理地址,进而实现相应的数据处理操作。
需要说明的是,这里所说的第一存储池可以为SLC(single-level cell)池,SLC就是在NAND闪存的每个存储单元里存储1bit的数据,存储的数据代表“0”还是“1”是由基于Vth电压阈值来判定,对于NAND闪存的写入(编程),就是对其充电,使得它的电压超过电压判定点,存储单元就表示0-已编程,如果没有充电或者电压阈值低于那个电压判定点,就表示1-已擦除。这里所说的第一访问单元是SLC池中以4KB为单位的映射管理单元。在基于第一存储池进行数据读写操作的时候,以第一访问单元作为基本操作单元,而在进行擦除操作的时候,则是以逻辑块为基本操作单元。
第二存储池可以为QLC(Quad-Level cell)池和/或PLC(Penta-level cell)池。QLC是每个存储单元里存储4bit的数据,PLC是每个存储单元里存储5bit的数据。存储的数据也是基于电压阈值的判定。也就是说,第二访问单元能够存储的数据流为第一访问单元的四倍或者五倍(取决于第二访问单元)。
虽然第二存储池的第二访问单元能够存储更多的数据,但是,在进行映射关系管理的时候,也是以支持更大数据容量的第二访问单元作为基本单位进行管理的。比如,在读取过程中,由于可以根据第二访问单元起始物理位置及其在第二访问单元中的相对偏移量计算出4KB逻辑块的物理地址,因此随机4KB读取没有QoS惩罚。而当应用程序更新一个第二访问单元中的一个4KB数据时,需要读修改写(RMW)。FTL需要读取整个第二访问单元(N*4KB),与传入的4KB数据合并,然后将其写回NAND闪存。这意味着引入了N次写放大(WA)。因此,当主机需要对待处理数据进行数据处理的时候,可以基于第一存储池实现,因为第一存储池中的第一访问单元是以4KB为基本管理单元,与用户主机的主流逻辑块大小一致,都是4KB,能够很好的解决写放大所带来的问题。
在实际应用中,先将逻辑地址作为第一访问单元存储到第一存储池中。当所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内。换言之,待处理数据的逻辑地址先存储到第一存储池中的第一访问单元内,当第一访问单元的数量能够满足第二访问单元的存储需求的时候,将多个第一访问单元中存储的物理地址直接转存到第二访问单元中。这种基于第一存储池和第二存储池组合方式下,投入少量高成本的第一存储池后,缓解了写放大和服务质量(QoS)不达标等问题发生,能够实现充分发挥第二访问单元支持管理更大数据量的低成本优势。
如图2为本申请实施例提供的基于第一存储池进行存储的方法流程示意图。从图2中可以看到,所述将所述逻辑地址作为第一访问单元存入第一存储池内,具体包括如下步骤:
201:将所述待处理数据对应的逻辑地址存储到所述第一访问单元。
202:确定所述逻辑地址的顺序流标识和所述第一访问单元的第一单元顺序。
203:基于所述第一单元顺序,将多个所述第一访问单元组成第一逻辑块。
204:将多个所述第一逻辑块存储到所述第一存储池内。
需要说明的是,如步骤201所述,将所述待处理数据对应的逻辑地址存储到第一访问单元之后,还包括:确定所述待处理数据的物理地址与所述逻辑地址之间的映射关系;基于所述映射关系,生成所述第一访问单元对应的第一映射表。
在实际应用中,将第一访问单元中的逻辑地址转存到第二访问单元的时候,并不是简单的将有效数据从第一存储池移动到第二存储池中,而是需要维护第一存储池中每个数据流有效的逻辑块。第一逻辑块在第一存储池中的第一映射表仍然是以4KB的粒度进行管理的。为了便于数据管理,在进行第一访问单元存储的时候,需要按照第一单元顺序存储到各个第一逻辑块当中。进而可以得到顺序存储有逻辑地址由多个第一逻辑块构成的第一存储池。为了控制成本,第一存储池的数量是有限的,当达到一定条件的时候,会根据访问单元或者逻辑块将第一存储池中的逻辑地址转存到成本更低的第二存储池当中。
为了便于理解,下面将具体举例说明。
如图3为本申请实施例提供的第一存储池的结构示意图。从图3中可以看到,假设该第一存储池有四个逻辑块,分别是SLC BLK0、SLC BLK1、SLC BLK2、SLC BLK3。而在每个逻辑块中,又包含有多个第一访问单元AU。比如,
在SLC BLK0中有第一访问单元分别是AU0、AU1、AU2、AU3、AU4、AU5、AU6、AU7;
在SLC BLK1中有第一访问单元分别是AU8、AU9、AU10、AU11、AU12、AU13、AU14、AU15。
在SLC BLK0中第一访问单元中的逻辑地址还分别标记有对应的顺序流标识,分别为:stream1_0、stream2_0、stream3_0、stream4_0、stream1_1、stream2_1、stream3_1、stream4_1;
在SLC BLK1中第一访问单元中的逻辑地址还分别标记有对应的顺序流标识,分别为:stream1_2、stream2_2、stream3_2、stream4_2、stream1_3、stream2_3、stream3_3、stream4_3。具体的,SLC BLK2、SLC BLK3中分别具有的第一访问单元如图3所示,这里就不再赘述。每个第一逻辑块中的多个第一访问单元都是按照第一单元顺序存储的。而且,多个第一逻辑块之间的逻辑地址也都是符合顺序流标识的顺序规则的,方便后续对逻辑地址按照顺序流进行转存。
在本申请一个或者多个实施例中,待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理,包括:若在所述第一存储池中逻辑地址的数据量大于第一阈值;或者,所述第一访问单元的数据量为一个所述第二访问单元的数据容量的整数倍;则将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
如前文所述,第二访问单元支持更大的数据容量的存储,为了缓解在针对第二访问单元读写数据所造成的写放大等问题,可以针对第一访问单元中的逻辑地址组合成逻辑地址组对应的第二访问单元设定限制要求。这里所说的要求可以有多种,比如,可以是为第一存储池设定对逻辑地址进行组合处理的第一阈值,也就是当第一存储池中的逻辑地址的数据量或者第一存储池中生成的包含有逻辑地址的第一访问单元的数量。也可以不设定第一阈值,当第一访问单元的数量或者逻辑地址的数据量满足至少一个第二访问单元的数据容量的整数倍的时候,就将第一存储池中的逻辑地址转存到第二访问单元中,这种方式能够减少对第一存储池的数据容量的需求,相当于实现了实时转存。如前文所述可知,在第二存储池中,进行数据读写的时候,是以第二访问单元为最小基本单元进行读写操作,假设第二访问单元的数据容量为第一访问单元的数据容量的N倍,则当第一存储池中有N个第一访问单元存储有逻辑地址后,可以将N个第一访问单元中的逻辑地址组合到一个第二访问单元中。完成转存之后,第一存储池中的多个第一访问单元中的逻辑地址失效,可以对其进行擦除处理,进而,将访问单元的数量缩减为原来第一存储池中的N分之一,此外,第一访问单元对应的第一映射表的数量也缩减为原来第一存储池中的N分之一,能够显著节省存储空间。
例如,假设第一存储池大小为512KB,当中包含16个第一逻辑块,在每个第一逻辑块中又包含有8个第一访问单元,每个第一访问单元为4KB。假设第二存储池大小为2048KB,当中包含有16个第二逻辑块,在每个第二逻辑块中国又分别包含有8个第二访问单元,每个第二访问单元为16KB。可知,第二访问单元的数据容量为第一访问单元的4倍,换言之,需要4个第一访问单元存储的逻辑地址才能够组合到一个第二访问单元中。若设定第一阈值为256KB,则当第一存储池中有64个第一访问单元都存储有逻辑地址的时候,会将这64个第一访问单元中的逻辑地址组合存储到对应的16个第二访问单元中。还可以在不设定第一阈值的情况下进行组合存储,具体来说,当第一存储池中,有4个第一访问单元中都存储有逻辑地址,也就是,第一访问单元中的数据量为第二访问单元的数据容量(16KB)的1倍,则可以将这4个第一访问单元中的逻辑地址组合到第二访问单元中。
此外,还可以根据第一逻辑块的数量与第二逻辑块之间的关系确定是否需要进行转移。具体来说,若设定第一阈值为256KB,则当第一存储池中有16个第一逻辑块都存储有逻辑地址的时候,会将这16个第一逻辑块中的逻辑地址组合存储到对应的4个第二逻辑块的第二访问单元中。
如图4为本申请实施例提供的组合存储方法的流程示意图。从图4中可以看到,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,包括:
401:根据所述第一访问单元中所述逻辑地址的顺序流标识,将所述逻辑地址顺序组合成逻辑地址组,并将逻辑地址组作为第二访问单元。
402:将由所述第二访问单元构成的第二逻辑块存入所述第二存储池内。
按照顺序流标号进行存储的时候,能够确保数据的物理地址相邻,当存储设备以块为单位进行数据删除的时候,对应的垃圾逻辑块也会收敛,从而能够缓解写放大问题。这里所说的顺序流标识,可以是根据主机所提供的待处理数据的顺序进行标记的。具体来说,垃圾收集(GC)将从第一存储池中选择顺序流,从第一存储池中读取多个第一访问单元中的多个逻辑地址并将其编程到第二存储池(比如,QLC/PLC)中。
如图5为本申请实施例提供的第二存储池的结构示意图。从图5中可以看到,假设该第二存储池有1个逻辑块,QLC BLK0。而在该第二逻辑块中包含有多个第二访问单元AU。比如,AU0、AU1、AU2、AU3、AU4、AU5、AU6、AU7。如前文所述,第二访问单元的数据容量为第一访问单元的整数倍(本实施例中,第二访问单元为第一访问单元的4倍)。在第二访问单元AU0中,包含的逻辑地址及其对应的顺序流标识为:stream1_0、stream1_1、stream1_2、stream1_3;在第二访问单元AU1中,包含的逻辑地址及其对应的顺序流标识为:stream1_4、stream1_5、stream1_6、stream1_7。可见,不仅在第二访问单元AU0中的逻辑地址是按照顺序流标识连续的,在第二访问单元AU0和AU1之间的顺序流标识也是连续的。采用与AU0和AU1相同的组合处理方式,按照顺序流标识继续组合处理得到AU2、AU3、AU4、AU5、AU6、AU7,在AU2、AU3、AU4、AU5、AU6、AU7中分别具有的逻辑地址及其对应的顺序流标识如图5所示,这里就不再赘述。
在本申请一个或者多个实施例中,所述根据所述第一访问单元中所述逻辑地址的顺序流标识,将所述逻辑地址顺序组合成逻辑地址组,并将逻辑地址组作为第二访问单元,包括:若多个所述第一访问单元分别在多个第一逻辑块中存储,则分别获取多个所述第一逻辑单元中逻辑地址的顺序流标识。根据所述顺序流标识顺序,将所述逻辑地址按照第二访问单元的数据容量的大小进行分组组合。生成第二访问单元。
从图3中可以看到,在第一逻辑块中,各个第一访问单元是按照第一单元顺序进行分组并存储的。从图5中可以看到,在第二逻辑块中,则是根据顺序流标识进行存储。可以看到,第一单元顺序和顺序流标识不同,也就可能会出现像图3那种情况,多个顺序流标识连续的逻辑地址被分配到多个第一逻辑块中。因此,利用垃圾回收(GC)将第一访问单元中的逻辑地址组合到第二访问单元中的时候,需要获取多个第一逻辑块中各个逻辑地址分别对应的顺序流标识。例如,需要将4个第一逻辑块中的逻辑地址组合到一个第二逻辑块当中,利用垃圾回收获取到这4个第一逻辑块中所有逻辑地址的顺序流标识,按照顺序流标识排序后,根据各个第二访问单元的数据容量,一次对逻辑地址进行分组组合,得到如图5所示的8个第二访问单元。进而,将这8个第二访问单元作为一个第二逻辑块存储到第二存储池当中。
在本申请的一个或者多个实施例中,将由所述第二访问单元构成的第二逻辑块存入所述第二存储池内之后,还包括:确定用于组合所述第二访问单元的多个所述第一访问单元对应的多个第一映射表。将所述多个第一映射表从所述第一存储单元池中删除。基于所述多个第一映射表包含的映射关系,生成第二访问单元对应的一个第二映射表。
需要说明的是,在建立物理地址与逻辑地址的映射表的时候,是基于访问单元建立的。也就意味着,在针对数据量的待处理数据建立映射表的时候,访问单元的数据容量越大,所需要的映射表越少;映射表所需要占用的闪存存储空间也就越少。所以,在基于第一存储池进行逻辑地址存储的时候,基于第一访问单元所产生的映射表的数据量也比较大。将会在闪存中占据很大的存储空间,也就意味着需要付出很高的成本来提供更多的存储空间存储映射表。因此,在本申请技术方案中,在完成对第一访问单元中逻辑地址的组合操作之后,需要对第一访问单元所在存储空间及其对应的映射表的存储空间进行回收。以便能够释放出更多的存储空间用于存储主机新提供的待处理数据的逻辑地址和映射表。
在本申请的一个或者多个实施例中,所述将所述多个第一映射表从所述第一存储单元池中删除,包括:确定被标记为删除状态的第一逻辑块和对应的所述多个第一映射表;根据所述被标记为删除状态的第一逻辑块和对应的所述多个第一映射表,确定所述第一存储池内可回收第一逻辑块,并对所述可回收第一逻辑块进行垃圾回收,以便将所述多个第一映射表从所述第一存储单元池中删除。
容易理解的是,在完成对第一映射表的擦除的同时,还要为第二访问单元建立对应的第二映射表。如前文所述可知,假设,第一访问单元为4KB,第二访问单元为16KB,当完成对256KB的逻辑地址的组合操作后,映射表的数量也由64个缩小为16个,映射表占用的存储空间缩小为原来的四分之一,在垃圾回收的同时实现对垃圾逻辑块和对应映射表的收敛。
为了便于理解本申请实施例,下面对垃圾回收过程进行解释说明。对于固态硬盘来说,垃圾回收(GC)是指把现存数据转移到其他闪存位置,并且把一些无用的数据彻底删除的过程。上面介绍了,数据写入的方式,即以访问单元为单位写入,但是要想删除数据却需要以块为单位。因此要删除无用的数据,固态硬盘首先需要把一个块内包含有用的数据先复制粘贴到全新的块中的页面内,这样原来块中包含的无用数据才能够以块为单位删除。删除后,才能够写入新的数据,而在擦除之前是无法写入新数据的。
当在操作***中删除文件时,操作***只是在其内部文件表中做标记表示该文件已删除状态(表示对应的第一逻辑块和多个第一映射表也被标记为删除状态)。由于NAND闪存设备不能覆盖现有数据,所以在固态硬盘SSD上,当前无效的数据仍然保留在硬盘上。这样的话就会产生大量的失效数据(包括失效的逻辑地址和对应的映射表)。为了提升固态硬盘的利用效率,这时候就需要及时进行“垃圾回收”,擦除第一访问单元中的逻辑地址及其对应的映射表。
在本申请的一个或者多个实施例中,还包括:若所述第一存储池中的所述逻辑地址的数据量小于所述第二访问单元的数据容量,则等待主机发送新的待处理数据对应的逻辑地址。
如前文所述,第二访问单元作为第二存储池中最小的读写单元,如果第一存储池中的数据量小于第二访问单元的数据容量时将逻辑地址写入第二访问单元,则将会导致第二访问单元无法写满,造成存储空间闲置浪费。因此,需要确保第一存储池中的逻辑地址的数据量至少满足一个第二访问单元的数据容量的时候,才能够进行逻辑地址的组合操作。反之,将继续等待主机发送新的待处理数据对应的逻辑地址。
例如,假设当前第一存储池中具有的逻辑地址的数据量为516KB,假设这些逻辑地址存储在16个整的第一逻辑块以及一个存储有4KB逻辑地址的第一逻辑块,在每个第一逻辑块中又包含有8个第一访问单元,每个第一访问单元存储有4KB的逻辑地址。因此,在进行第一访问单元组合处理的是,将16个整的第一访问单元中的逻辑地址组合得到4个整的第二访问单元。但是由于还有1KB的逻辑地址既不满足第一访问单元的数据容量,也不满足第二访问单元的数据容量,这最后1KB的逻辑地址将暂时无法进行组合处理,只能继续等待新的逻辑地址存入第一访问单元之后,再将其组合到第二访问单元中。
需要说明的是,所述第二存储池的闪存颗粒密度大于所述第一存储池的闪存颗粒密度。第二逻辑块的数据容量大于第一逻辑块的数据容量,第二访问单元的数据容量大于第一访问单元的数据容量。进而,在完成对逻辑地址的组合处理后,使得第一访问单元和对应的第一映射表实现聚敛。
基于同样的思路,本申请实施例还提供一种数据处理***。如图6为本申请实施例提供的一种数据处理***的结构示意图。该数据处理***为固态硬盘执行数据读写处理的***,如图6所示,该***包括:
第一存储池61,用于接收待处理数据对应的逻辑地址;将所述逻辑地址作为第一访问单元存入第一存储池内;待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内。
所述第二存储池62,用于存储由所述多个第一访问单元中的逻辑地址组合得到的第二访问单元,并基于所述第二访问单元对数据进行处理。
为了便于理解上述***的工作原理,下面将具体举例说明。从图6中可以看到,主机提供了多个逻辑地址,首先,将逻辑地址按照第一单元顺序分别存储到第一存储池中的4个第一逻辑块中。由于此时在第一存储池中的逻辑地址的数量能够满足一个第二逻辑块的数据容量,将会按照逻辑地址对应的顺序流标识将逻辑地址组合到第二逻辑块中。
本申请一个实施例还提供一种电子设备。如图7为本申请实施例提供的一种电子设备的结构示意图。该电子设备包括存储器701、处理器702及通信组件703,所述存储器701包括:非固态硬盘和固态硬盘,所述非固态硬盘中存储有数据处理程序,所述固态硬盘用于存储待处理数据对应的逻辑地址;
所述处理器与所述存储器耦合,用于执行所述输出处理程序,以用于:
接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
上述存储器701可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
进一步地,本实施例中的所述处理器702可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。
上述处理器702在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图7所示,电子设备还包括:显示组件704等其它组件。
基于同样的思路,本申请实施例还提供一种基于固态硬盘的存储***。如图8为本申请实施例提供的一种基于固态硬盘的存储***的结构示意图。该数据处理***包括:主机81和挂载于所述主机上的固态硬盘82;
所述固态硬盘82,用于接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
接收待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
可选地,固态硬盘82,还用于将所述待处理数据对应的逻辑地址存储到所述第一访问单元;
确定所述逻辑地址的顺序流标识和所述第一访问单元的第一单元顺序;
基于所述第一单元顺序,将多个所述第一访问单元组成第一逻辑块;
将多个所述第一逻辑块存储到所述第一存储池内。
可选地,固态硬盘82,还用于确定所述待处理数据的物理地址与所述逻辑地址之间的映射关系;
基于所述映射关系,生成所述第一访问单元对应的第一映射表。
可选地,固态硬盘82,还用于若在所述第一存储池中逻辑地址的数据量大于第一阈值;或者,所述第一访问单元的数据量为一个所述第二访问单元的数据容量的整数倍;
则将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
可选地,固态硬盘82,还用于根据所述第一访问单元中所述逻辑地址的顺序流标识,将所述逻辑地址顺序组合成第二访问单元;
将由所述第二访问单元构成的第二逻辑块存入所述第二存储池内。
可选地,固态硬盘82,还用于若多个所述第一访问单元分别在多个第一逻辑块中存储,则分别获取多个所述第一逻辑单元中逻辑地址的顺序流标识;
根据所述顺序流标识顺序,将所述逻辑地址按照第二访问单元的数据容量的大小进行分组组合;
生成第二访问单元。
可选地,固态硬盘82,还用于确定用于组合所述第二访问单元的多个所述第一访问单元对应的多个第一映射表;
将所述多个第一映射表从所述第一存储单元池中删除;
基于所述多个第一映射表包含的映射关系,生成第二访问单元对应的一个第二映射表。
可选地,固态硬盘82,还用于确定被标记为删除状态的第一逻辑块和对应的所述多个第一映射表;
根据所述被标记为删除状态的第一逻辑块和对应的所述多个第一映射表,确定所述第一存储池内可回收第一逻辑块,并对所述可回收第一逻辑块进行垃圾回收,以便将所述多个第一映射表从所述第一存储单元池中删除。
可选地,固态硬盘82,还用于若所述第一存储池中的所述逻辑地址的数据量小于所述第二访问单元的数据容量,则等待主机发送新的待处理数据对应的逻辑地址。
可选地,固态硬盘82中的所述第二存储池的闪存颗粒密度大于所述第一存储池的闪存颗粒密度。
本申请实施例还提供一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如图1至图5所述的方法。
基于上述实施例,当主机有数据想要存入到固态硬盘的时候,需要建立用于管理这些待处理数据的逻辑地址与物理地址映射关系的映射表。在进行存储的时候,可以先将待处理数据的逻辑地址存储到第一存储池中的第一访问单元中;当第一存储池中的逻辑地址的数据量满足要求时(比如,满足第一存储池中的逻辑地址的数据量是第二存储池中第二访问单元的数据容量的整数倍的时候),可以将多个第一访问单元中的逻辑地址转移存储到至少一个第二访问单元中。由于第二存储池中的闪存颗粒密度大于第一存储池中的闪存颗粒密度,换言之,第一存储池中的第一访问单元具有更小的访问单元和映射表,当进行数据写入或读取的时候,可以基于第一存储池实现,而第二存储池中的第二存储块则支持更大的访问单元和更大的映射表,尽可能避免基于第二存储池进行部分数据写入或者读取,从而能够有效缓解写放大和服务质量不佳等问题。进而,在保证数据存储需求的同时,能够减轻存储***硬件成本。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (14)
1.一种数据处理方法,包括:
接收待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
2.根据权利要求1所述的方法,所述将所述逻辑地址作为第一访问单元存入第一存储池内,包括:
将所述待处理数据对应的逻辑地址存储到所述第一访问单元;
确定所述逻辑地址的顺序流标识和所述第一访问单元的第一单元顺序;
基于所述第一单元顺序,将多个所述第一访问单元组成第一逻辑块;
将多个所述第一逻辑块存储到所述第一存储池内。
3.根据权利要求2所述的方法,将所述待处理数据对应的逻辑地址存储到第一访问单元之后,还包括:
确定所述待处理数据的物理地址与所述逻辑地址之间的映射关系;
基于所述映射关系,生成所述第一访问单元对应的第一映射表。
4.根据权利要求1至3中任一项所述的方法,待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理,包括:
若在所述第一存储池中逻辑地址的数据量大于第一阈值;或者,所述第一访问单元的数据量为一个所述第二访问单元的数据容量的整数倍;
则将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
5.根据权利要求4所述的方法,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,包括:
根据所述第一访问单元中所述逻辑地址的顺序流标识,将所述逻辑地址顺序组合成逻辑地址组,并将逻辑地址组作为第二访问单元;
将由所述第二访问单元构成的第二逻辑块存入所述第二存储池内。
6.根据权利要求5所述的方法,所述根据所述第一访问单元中所述逻辑地址的顺序流标识,将所述逻辑地址顺序组合成逻辑地址组,并将逻辑地址组作为第二访问单元,包括:
若多个所述第一访问单元分别在多个第一逻辑块中存储,则分别获取多个所述第一逻辑单元中逻辑地址的顺序流标识;
根据所述顺序流标识顺序,将所述逻辑地址按照第二访问单元的数据容量的大小进行分组组合;
生成第二访问单元。
7.根据权利要求5所述的方法,将由所述第二访问单元构成的第二逻辑块存入所述第二存储池内之后,还包括:
确定用于组合所述第二访问单元的多个所述第一访问单元对应的多个第一映射表;
将所述多个第一映射表从所述第一存储单元池中删除;
基于所述多个第一映射表包含的映射关系,生成第二访问单元对应的一个第二映射表。
8.根据权利要求7所述的方法,所述将所述多个第一映射表从所述第一存储单元池中删除,包括:
确定被标记为删除状态的第一逻辑块和对应的所述多个第一映射表;
根据所述被标记为删除状态的第一逻辑块和对应的所述多个第一映射表,确定所述第一存储池内可回收第一逻辑块,并对所述可回收第一逻辑块进行垃圾回收,以便将所述多个第一映射表从所述第一存储单元池中删除。
9.根据权利要求1所述的方法,还包括:
若所述第一存储池中的所述逻辑地址的数据量小于所述第二访问单元的数据容量,则等待主机发送新的待处理数据对应的逻辑地址。
10.根据权利要求1所述的方法,所述第二存储池的闪存颗粒密度大于所述第一存储池的闪存颗粒密度。
11.一种数据处理***,包括:
第一存储池,用于接收待处理数据对应的逻辑地址;将所述逻辑地址作为第一访问单元存入第一存储池内;待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内;
所述第二存储池,用于存储由所述多个第一访问单元中的逻辑地址组合得到的第二访问单元,并基于所述第二访问单元对数据进行处理。
12.一种电子设备,包括:存储器和处理器;
所述存储器包括:非固态硬盘和固态硬盘,所述非固态硬盘中存储有数据处理程序,所述固态硬盘用于存储待处理数据;
所述处理器与所述存储器耦合,用于执行所述处理程序,以用于:
接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
13.一种基于固态硬盘的存储***,包括:主机和挂载于所述主机上的固态硬盘;
所述固态硬盘,用于接收主机发送的待处理数据对应的逻辑地址;
将所述逻辑地址作为第一访问单元存入第一存储池内;
待所述第一存储池内存入的第一访问单元数量满足要求时,将多个第一访问单元组合成逻辑地址组,将该逻辑地址组作为第二访问单元存入第二存储池内,以基于所述第二访问单元对数据进行处理。
14.一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现根据权利要求1至10中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111600004.XA CN114297092A (zh) | 2021-12-24 | 2021-12-24 | 数据处理方法、***、设备、存储***及介质 |
PCT/CN2022/129853 WO2023116235A1 (zh) | 2021-12-24 | 2022-11-04 | 数据处理方法、***、设备、存储***及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111600004.XA CN114297092A (zh) | 2021-12-24 | 2021-12-24 | 数据处理方法、***、设备、存储***及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114297092A true CN114297092A (zh) | 2022-04-08 |
Family
ID=80970476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111600004.XA Pending CN114297092A (zh) | 2021-12-24 | 2021-12-24 | 数据处理方法、***、设备、存储***及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114297092A (zh) |
WO (1) | WO2023116235A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023116235A1 (zh) * | 2021-12-24 | 2023-06-29 | 阿里巴巴(中国)有限公司 | 数据处理方法、***、设备、存储***及介质 |
WO2024113688A1 (zh) * | 2022-11-30 | 2024-06-06 | 深圳大普微电子科技有限公司 | 闪存设备及其数据管理方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117632039B (zh) * | 2024-01-25 | 2024-05-03 | 合肥兆芯电子有限公司 | 存储器管理方法、存储器存储装置及存储器控制电路单元 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104503710B (zh) * | 2015-01-23 | 2018-02-13 | 福州瑞芯微电子股份有限公司 | 一种提高闪存写入速度的方法和装置 |
CN106021159B (zh) * | 2016-05-12 | 2018-03-20 | 北京匡恩网络科技有限责任公司 | 大容量固态硬盘逻辑地址到物理地址映射方法 |
CN106802777A (zh) * | 2017-01-20 | 2017-06-06 | 杭州电子科技大学 | 一种用于固态存储设备的闪存转换层控制方法 |
US10223259B1 (en) * | 2017-08-31 | 2019-03-05 | Micron Technology, Inc. | Memory device with dynamic storage mode control |
CN109684238A (zh) * | 2018-12-19 | 2019-04-26 | 湖南国科微电子股份有限公司 | 一种固态硬盘映射关系的存储方法、读取方法及固态硬盘 |
CN110750466A (zh) * | 2019-10-18 | 2020-02-04 | 深圳豪杰创新电子有限公司 | 提高闪存擦写寿命的方法和装置 |
CN114297092A (zh) * | 2021-12-24 | 2022-04-08 | 阿里巴巴(中国)有限公司 | 数据处理方法、***、设备、存储***及介质 |
-
2021
- 2021-12-24 CN CN202111600004.XA patent/CN114297092A/zh active Pending
-
2022
- 2022-11-04 WO PCT/CN2022/129853 patent/WO2023116235A1/zh unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023116235A1 (zh) * | 2021-12-24 | 2023-06-29 | 阿里巴巴(中国)有限公司 | 数据处理方法、***、设备、存储***及介质 |
WO2024113688A1 (zh) * | 2022-11-30 | 2024-06-06 | 深圳大普微电子科技有限公司 | 闪存设备及其数据管理方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2023116235A1 (zh) | 2023-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI805323B (zh) | 儲存裝置 | |
US10372331B2 (en) | Storage system, information processing system and method for controlling nonvolatile memory | |
US10838859B2 (en) | Recency based victim block selection for garbage collection in a solid state device (SSD) | |
US10353612B2 (en) | Storage system, information processing system and method for controlling nonvolatile memory | |
EP2565792B1 (en) | Block management schemes in hybrid SLC/MLC memory | |
CN113138713A (zh) | 存储器*** | |
CN114297092A (zh) | 数据处理方法、***、设备、存储***及介质 | |
US9772797B2 (en) | Buffer memory management method, memory control circuit unit and memory storage device | |
CN106874211A (zh) | 存储器***及非易失性存储器的控制方法 | |
CN106874217A (zh) | 存储器***及控制方法 | |
JP7353934B2 (ja) | メモリシステムおよび制御方法 | |
US8516184B2 (en) | Data updating using mark count threshold in non-volatile memory | |
US20100042775A1 (en) | Block management method for flash memory, and storage system and controller using the same | |
JP2021033849A (ja) | メモリシステムおよび制御方法 | |
CN112130749B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US11748012B2 (en) | Memory system and method for controlling nonvolatile memory | |
US20100318726A1 (en) | Memory system and memory system managing method | |
CN110389712B (zh) | 数据写入方法及其装置、固态硬盘和计算机可读存储介质 | |
US20100180072A1 (en) | Memory controller, nonvolatile memory device, file system, nonvolatile memory system, data writing method and data writing program | |
CN110688323B (zh) | 一种***控制器和***垃圾回收方法 | |
CN113986773A (zh) | 基于固态硬盘的写放大优化方法、装置及计算机设备 | |
JP2021033945A (ja) | メモリシステムおよび制御方法 | |
CN106205707A (zh) | 存储器装置 | |
JP2022143231A (ja) | ストレージデバイス、ストレージシステム、及び制御方法 | |
CN106205708A (zh) | 高速缓冲存储器装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |