CN103270487A - 存储系统及其数据控制方法 - Google Patents
存储系统及其数据控制方法 Download PDFInfo
- Publication number
- CN103270487A CN103270487A CN2011800627807A CN201180062780A CN103270487A CN 103270487 A CN103270487 A CN 103270487A CN 2011800627807 A CN2011800627807 A CN 2011800627807A CN 201180062780 A CN201180062780 A CN 201180062780A CN 103270487 A CN103270487 A CN 103270487A
- Authority
- CN
- China
- Prior art keywords
- physical
- controller
- page
- storage
- block
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种闪存封装的封装控制器在接收到关于与被视作备份目标的第一LU相对应的第一逻辑存储区域的更新数据写入请求时,在保持预更新数据的情况下,将第一物理存储区域作为备份存储区域来管理,向第一逻辑存储区域新分配第二物理存储区域,以及将更新数据写入第二物理存储区域。该封装控制器在接收到关于与被视作非备份目标的第二LU相对应的第二逻辑存储区域的更新数据写入请求时,将分配给第二逻辑存储区域的第三物理存储区域作为无效存储区域来管理,并且将更新数据写入新分配给第二逻辑存储区域的第四物理存储区域。封装控制器执行控制以便使用第一物理存储区域来提供针对第一LU的备份数据,并且删除存储在第三物理存储区域中的预更新数据。
Description
技术领域
本发明涉及使用闪存存储器作为存储介质的存储系统中的数据控制技术,该存储介质是电可复写的非易失性存储器。
背景技术
与HDD(硬盘驱动)或其他这样的存储介质相比,闪存存储器的特征在于下述事实:随着写入次数的增加,闪存存储器显著劣化。利用闪存存储器的存储装置通常被控制以使得通过限制写入的次数、限制写入数据的大小以及定期删除数据来尽可能延长存储装置的寿命,即使是在使用闪存存储器时也是如此。例如,在特定类型的存储装置中,禁止对物理存储区域覆写数据,并且在已经接收到用于更新数据的写入请求的情况下,进行控制以使得向请求目的地逻辑存储区域分配新的物理存储区域,更新数据被存储在新的物理存储区域中,并且其中存储了预更新旧数据的物理存储区域被视作无效区域,并且使得无法从外部对其访问。
同时,作为备份功能,存储系统具有快照(snap shot)功能,该快照功能存储过去的特定时间点的数据,并且提供过去的数据图像。
已经提出了一种方法(专利文献1),在该方法中,使用闪存存储器作为存储介质的存储系统利用上述控制,通过该控制,即使在已经存储了更新数据之后也将预更新旧数据存储在该系统中;管理作为在快照中使用的数据的该预更新旧数据,这保持了在其中存储了旧数据的物理存储区域和逻辑存储区域之间的关联;并且通过使用相关数据和已经存储在还没有对其发出过更新数据写入请求的另一逻辑存储区域中的数据来提供过去的数据图像。
引用列表
专利文献
PTL1:日本专利申请特开No.2008-159013
发明内容
技术问题
在专利文献1中的问题在于,即使在期望仅获取存储系统的逻辑存储区域的一部分的快照的情况下,也相对于存储系统的整个逻辑存储区域来执行快照获取,由此使得必需管理作为并不真正需要管理的快照存储区域,并且继续存储不需要的旧数据。此外,在专利文献1中描述的传统存储系统中的问题在于,包括管理在逻辑存储区域和物理存储区域之间的关联、转换地址、控制RAID以及管理用于存储系统的所有存储区域的快照的控制被集中于单个控制器中,从而对控制器产生了巨大的负荷。
因此,本发明的目的在于,在使用闪存存储器作为存储介质的存储系统的快照功能中,使得能够获取和提供与用户的需要相对应的灵活的快照。
本发明的另一目的在于,在使用闪存存储器作为存储介质的存储系统中,防止负荷集中于特定控制器。
对问题的解决方案
一种耦合到主机装置的存储系统,所述存储系统包括下述部件:
多个闪存封装,该多个闪存封装中的每一个包括:多个闪存存储器芯片以及一个封装控制器,该封装控制器用于控制多个闪存存储器芯片的存储区域;以及
存储控制器,该存储控制器使用多个闪存存储器封装的存储区域来向主机装置提供第一LU(逻辑单元)和第二LU。
当将第一LU作为备份目标来管理并且将第二LU作为非备份目标来管理时,该封装控制器执行控制以便:
在接收到关于与第一LU相对应的第一逻辑存储区域的更新数据写入请求时,在保持预更新数据的状态下,将分配给第一逻辑存储区域的第一物理存储区域作为备份存储区域来管理,向第一逻辑存储区域新分配第二物理存储区域,并且将更新数据写入第二物理存储区域,
在接收到关于与第二LU相对应的第二逻辑存储区域的更新数据写入请求时,将分配给第二逻辑存储区域的第三物理存储区域作为无效存储区域来管理,并且将更新数据写入新分配给第二逻辑存储区域的第四物理存储区域,
使用作为备份存储区域来管理的第一物理存储区域来提供针对第一LU的备份数据,以及
删除作为无效存储区域来管理的第三物理存储区域中所存储的预更新数据。
本发明的有益效果
根据本发明,可以在使用闪存存储器作为存储介质的存储系统的快照功能中获取和提供与用户的需要相对应的灵活的快照。此外,目的在于在使用闪存存储器作为存储介质的存储系统中防止负荷集中于特定控制器。
附图说明
图1是图示本发明的实施例中的快照功能的示图。
图2是图示本发明的实施例中的回收(reclamation)过程的概况的示图。
图3是图示本发明的实施例中的刷新过程的概况的示图。
图4是示出与本发明的实施例有关的信息处理系统的配置的示图。
图5是示出在FM封装120内的FM芯片413的细节的示图。
图6是示出存储在非易失性存储器404中的多个表的示图。
图7是示出RAID组配置表610的配置的示图。
图8是示出LU配置表620的配置的示图。
图9是示出快照配置表630的配置的示图。
图10是示出存储在非易失性存储器414中的多个表的示图。
图11是示出快照管理表2410的配置的示图。
图12是示出逻辑-物理转换表1020的配置的示图。
图13是示出生成管理条目组1030的配置的示图。
图14是示出在逻辑-物理转换表1020和生成管理条目之间的对应关系的示意性示图。
图15是示出物理页面状态管理表1040的配置的示图。
图16是示出物理块状态管理表1050的配置的示图。
图17是示出存储控制器110快照过程的流程图。
图18是示出FM封装120快照过程的流程图。
图19是示出存储控制器110写入过程的流程图。
图20是示出FM封装120写入过程的流程图。
图21是示出存储控制器110读取过程的流程图。
图22是示出FM封装120读取过程的流程图。
图23是示出回收过程的流程图。
图24是示出刷新过程的流程图。
具体实施方式
以下将说明本发明的实施例。
此外,在下面的说明中,可以使用表述“xxx表”来说明各种类型的信息,但是该各种信息还可以使用除了表之外的数据结构来表达。为了示出各种信息不取决于数据结构,“xxx表”可以被称为“xxx信息”。
此外,在下面的说明中,编号将用作对于各种目标(例如,逻辑单元、块和页面)的标识信息的类型,但是也可以使用其他类型的标识信息。
此外,在下面的说明中,将根据执行计算机程序的处理器(例如,CPU(中央处理单元))来执行下文中描述的由存储控制器和FM控制器执行的处理的至少一部分。处理器可以是CPU本身,或者可以包括执行由处理器执行的一部分或全部处理的硬件电路。程序可以从程序源被安装在相应的控制器中。程序源可以是例如程序递送服务器或存储介质。
以下将通过参考图1至图3来说明该实施例的概况。
如在图1中,存储系统100包括多个闪存存储器封装(下文中称为FM封装)120以及耦合到多个FM封装120的存储控制器110。
FM封装120包括多个闪存存储器芯片(下文中称为FM芯片)。在该实施例中,FM芯片是NAND型FM芯片,但是FM芯片可以是其他的类型。FM芯片包括多个物理块。每个物理块包括多个物理页面。
RAID组140由多个FM封装120中的两个或更多个FM封装120来配置(RAID是对独立(或廉价)磁盘冗余阵列的缩写)。RAID组140还可以被称为奇偶组(parity group)。此外,在该实施例中,RAID组140包括两个或更多个FM封装120,但是RAID组并不必须这样进行配置。例如,存储系统可以具有一个FM封装。
存储控制器110通过对由RAID组140提供的存储空间200在逻辑上进行划分来形成多个(或一个)逻辑单元(在下文中称为LU)。向用作存储系统100的更高层装置的主机装置2提供包括存储空间200的多个LU130中的至少一个。在图1中,LU#1被示作LU130的示例。在下面的说明中,具有LU编号n(其中n是整数)的LU130可以被表达为“LU#n”。
存储控制器110从主机装置2接收I/O命令(写入命令或读取命令)。例如,I/O命令包括LU130标识信息以及作为示出I/O目的地的信息的、表示该LU130的区域的逻辑地址。LU130标识信息例如是LUN(逻辑单元编号)。逻辑地址例如是LBA(逻辑块地址)。
存储控制器110从主机装置2接收指定LU#1的I/O命令,并且通过将写入目标数据写入由该I/O命令(写入命令)指定的LU#1中来对该I/O命令进行响应。或者,从由该I/O命令(读取命令)指定的LU#1中读取读取目标数据。将写入目标数据写入LU#1中是指将写入目标数据写入与表示该写入目的地的逻辑地址相对应的一个或多个物理页面。此外,从LU#1中读取读取目标数据是指从与表示该读取目的地的逻辑地址相对应的一个或多个物理页面中读取读取目标数据。
此外,该存储系统100包括快照功能作为备份功能。该快照功能用于从LU#1获取主机装置2能够识别的特定时间点的完全备份图像。例如,使用快照功能使得能够恢复由主机装置2请求的在规定时间点的LU#1的完全备份图像。根据图1中所示的示例,LU#1上的三个不同时间点的完全备份图像作为快照1、2和3来管理。存储控制器110从主机装置2接收指定LU#1的快照命令(下文中称为SS命令),并且响应于该SS命令,获取由该SS命令指定的时间点(或者接收到该SS命令的时间点)处的LU#1的快照。快照获取指下述过程,该过程使得此后在该获取的时间处存储在包括LU的相应区域(由相应逻辑地址表示的区域)中的数据能够被读取。更具体地,在该快照获取时或该快照获取之后已经对其执行了更新的相应区域的预更新数据作为差异数据来管理而不是被删除。然后,该差异数据被存储在FM封装120中,并且关于差异数据的时间点的附加信息作为生成信息被分离地(或者一起)进行管理。为此,能够知道哪个差异数据被包括在哪个快照(完全备份图像)中,并且能够恢复快照获取时的快照。
那么,现在在该实施例中,如上所述,NAND型FM芯片用作FM封装120的组件。NAND型FM芯片包括下面的特性特征。
(1)NAND型FM芯片的读取-写入单位是页面,而删除单位是块。在写入命令的情况下,写入目标数据被写入到一个或多个物理页面。此外,在读取命令的情况下,已经被写入一个或多个物理页面的读取目标数据被读取。此外,在该情况下的写入目标(或读取目标)数据没有必要被写入一个完整的(或多个)物理页面。还存在写入目标(或读取目标)数据被写入一个(或多个)物理页面的一部分的情况。此外,针对包括多个页面的每个块执行数据的删除。
(2)NAND型FM芯片是可记录存储介质。NAND型FM芯片的页面无法被覆写。当更新数据时,写入目标数据被写入可用页面(freepage),并且其中存储了预更新数据的页面成为无效页面。为此,回收过程是必需的以便有效利用该数据区域。
(3)在NAND型FM芯片中删除块的次数受到限制。
(4)NAND型FM芯片根据数据保持力(retention)而经受读取错误。此外,如这里使用的,数据保持力指闪存存储器的下述特性特征:根据该特性特征,存储在FM芯片中的数据仅可被保持固定时间段。
为此,期望存储系统100执行FM特定过程,诸如回收过程和刷新过程以及耗损均衡(wear-leveling)过程。以下将说明这些过程和耗损均衡过程。在下面的说明中,可能存在存储在LU中的数据被称为有效数据而没有存储在LU中的数据被称为无效数据(在有效数据的更新之后变成无效的数据)的情况。此外,可能存在快照获取时的差异数据被称为快照数据(下文中称为SS数据)的情况。此外,还可能存在其中有效数据被存储在FM芯片内的页面被称为有效页面、其中无效数据被存储在FM芯片内的页面被称为无效页面、并且其中SS数据被存储在FM芯片内的页面被称为快照页面(下文中称为SS页面)的情况。
回收过程创建仅包括可用页面的块(下文中称为可用块)。具体地,在多个有效页面分散地存在于多个(或一个)物理块的情况下,回收过程将在多个有效页面内的有效数据合并成单个物理块、创建仅包括无效页面的块(下文中称为无效块)、并且删除该无效块。作为回收过程所针对的目标的块(下文中的RC目标块)例如是其中分配给该块的页面中的无效页面的数目等于或大于阈值的块。
刷新过程将已经度过了规定时间或更长时间的块的数据移动到另一物理块,以防止数据保留力生成的读取错误。在该实施例中,作为刷新过程所针对的目标的块(下文中称为RF目标块)例如是其从最后的写入时间开始所度过的时间段已经超过阈值的块。然而,刷新过程所针对的块不限于其从最后的写入时间开始所度过的时间段已经超过阈值的块,并且例如可以是其从规定操作开始所度过的时间已经超过阈值的块,诸如其从第一写入时间开始所度过的时间等于或大于阈值的块。
耗损均衡过程用于均衡对FM芯片内的每个块的删除的数目(或写入的数目(在下文中这也成立))。具体地,在要对闪存存储器内的页面执行写入的情况下,耗损均衡过程例如分配其中删除的数目小于阈值的块的页面,以均衡对每个块的删除的数目。
在该实施例中,由每个FM封装内的控制器(下文中称为FM控制器)对每个FM封装执行上述过程(回收过程、刷新过程和耗损均衡过程),这将在以下进一步说明。此外,各个FM控制器类似地执行以下将说明的SS数据保存过程。以下将说明概况。
图2是图示在该实施例中的回收过程的执行期间的SS数据保存过程的概况的示图。此外,在下面的说明中,“删除块”具体地指示通过针对块执行删除过程来创建可用块。
以下将描述由FM控制器执行的处理。
FM控制器执行回收过程。在RC目标块511RC内存在SS页面的情况下,FM控制器执行SS数据保存过程作为用于执行回收过程的预过程。具体地,FM控制器从FM封装内的块组511G中选择其无效页面的数目等于或大于阈值的块作为RC目标块511RC。FM控制器确定在所选择的RC目标块511RC内是否存在SS页面。在存在SS页面的情况下,FM控制器执行下面的SS数据保存过程。
(A)FM控制器从FM封装内的块组511G中选择其删除的数目等于或大于阈值的块(下文中称为第一复制目标块)511Ca。
(B)FM控制器针对RC目标块511RC中的一个或多个SS页面中的每一个执行下面的过程(b1)和(b2)。
(b1)FM控制器将SS页面中的SS数据复制到第一复制目标块内的可用页面。
(b2)FM控制器将复制源SS改变为无效页面,并且将复制目的地可用页面改变为SS页面。
明显的是,使用SS数据保存过程来在第一复制目标块中创建SS页面导致了不对其删除的数目等于或大于阈值的块(第一复制目标块)执行对SS页面的更新写入,从而使得能够维持删除的数目。
FM控制器针对不具有SS页面的RC目标块(具体地是,根据SS数据保存过程被执行而丢失了SS页面的RC目标块和/或即使还没有执行SS数据保存过程、其中也不存在SS页面的RC目标块)执行回收过程。以下将说明回收过程。
(F)FM控制器从FM封装内的块组511G中选择其删除的数目小于阈值的块(下文中称为第二复制目标块)511Cb。
(G)FM控制器确定在RC目标块511RC中是否存在一个或多个有效页面。
(H)在上述(G)中的确定的结果是肯定的情况下,FM控制器针对每个有效页面执行下述(h1)和(h2)。
(h1)FM控制器将有效页面的有效数据复制到第二复制目标块的可用页面。
(h2)FM控制器将复制源有效页面改变为无效页面,并且将复制目的地有效页面改变为有效页面。
(I)FM控制器删除其所有页面已经变成无效页面的RC目标块,从而创建可用块。
使用回收过程来增加在第二复制目标块中的有效页面使得能够增加删除其删除的数目小于阈值的块的可能性。
图3是图示在该实施例中的刷新过程期间的SS数据保存过程的概况的示图。此外,在下面的说明中,“删除块”具体地指示通过对块执行删除过程来创建可用块。
以下将描述由FM控制器执行的处理。
FM控制器执行刷新过程。在RF目标块511RF内存在SS页面的情况下,FM控制器执行SS数据保存过程作为用于执行刷新过程的预过程。具体地,FM控制器从FM封装内的块组511G中选择其从最后的写入时间开始所度过的时间段(从最后的写入时间到当前时间的时间差)等于或大于阈值的块作为RF目标块511RF。FM控制器确定在所选择的RF目标块511RF内是否存在SS页面。在存在SS页面的情况下,FM控制器执行下面的SS数据保存过程。
(J)FM控制器从FM封装内的块组511G中选择其删除的数目等于或大于阈值的块(下文中称为第三复制目标块)511Cd。
(K)FM控制器针对RC目标块511RF中的一个或多个SS页面中的每一个执行下面的过程(b1)和(b2)。
(k1)FM控制器将SS页面中的SS数据复制到第三复制目标块511Cd内的可用页面。
(k2)FM控制器将复制源SS页面改变为无效页面,并且将复制目的地可用页面改变为SS页面。
明显的是,使用SS数据保存过程来在第三复制目标块511Cd中创建SS页面导致了不对其删除的数目等于或大于阈值的块(第三复制目标块)执行对SS页面的更新写入,从而使得能够维持删除的数目。
FM控制器针对不具有SS页面的RC目标块(具体地是,根据SS数据保存过程被执行而丢失了SS页面的RC目标块和/或即使还没有执行SS数据保存过程、其中也不存在SS页面的RC目标块)执行刷新过程。以下将说明刷新过程。
(L)FM控制器从FM封装内的块组511G中选择其删除的数目小于阈值的块(下文中称为第四复制目标块)511Ce。
(M)FM控制器确定在RC目标块511RF中是否存在一个或多个有效页面。
(N)在上述(M)中的确定的结果是肯定的情况下,FM控制器针对每个有效页面执行下述(n1)和(n2)。
(n1)FM控制器将有效页面的有效数据复制到第四复制目标块的可用页面。
(n2)FM控制器将复制源有效页面改变为无效页面,并且将复制目的地有效页面改变为有效页面。
(O)FM控制器删除其所有页面已经变成无效页面的RF目标块,从而创建可用块。
使用刷新过程来增加在第四复制目标块中的有效页面使得能够增加删除其删除的数目小于阈值的块的可能性。
以下将通过参考附图来详细说明该实施例。
首先,将通过参考图4和图5来说明与该实施例相关的存储系统的配置。图4是存储系统100的框图。图5是示出在FM封装120内的FM芯片413的细节的示图。
存储系统100包括多个FM封装120以及耦合到主机装置2和多个FM封装120的存储控制器110。存储控制器110根据来自主机装置2的I/O命令来对多个FM封装120中的一个或多个FM封装120执行数据I/O。
存储控制器110包括主机接口(下文中的主机I/F)401、RAID控制器402、非易失性存储器404以及盘接口403(下文中称为盘I/O)。主机I/F401耦合到主机装置2。盘I/F403耦合到各个FM封装120。RAID控制器402耦合到主机I/F401、盘I/F403以及非易失性存储器404。
非易失性存储器404存储数据和程序。以下将进一步描述存储在非易失性存储器404中的数据。
RAID控制器402包括用于执行非易失性存储器404内的程序的微处理器(在附图中未示出)。RAID控制器402经由主机I/F401从主机装置2接收I/O命令,并且根据该I/O命令,经由盘I/F403向一个或多个FM封装发出I/O命令的数据。
每个FM封装120包括闪存存储器控制器(在下文中称为FM控制器)412、与之耦合的多个NAND型FM芯片413、非易失性存储器414和盘I/F411。
非易失性存储器414存储数据和程序。以下将进一步描述存储在非易失性存储器414中的数据。
FM控制器412根据来自存储控制器110的I/O命令来对多个FM芯片413中的一个或多个FM芯片413执行数据I/O。FM控制器412包括用于执行包括该FM控制器412的FM封装120的非易失性存储器414内的程序的微处理器(在附图中未示出)。
FM封装120内的每个FM芯片413耦合到该FM封装120内的FM控制器412。每个FM芯片413包括多个物理块511。每个物理块511包括多个物理页面512(参考图5)。
如上所述,RAID组由存储系统100内的两个或更多个FM封装120来配置。在逻辑上划分的多个(或一个)LU是基于一个RAID组来形成的。在图5中,LU#1和LU#2是基于RAID组#1来形成的。逻辑地址被分配给包括LU的每个区域。
在下面的说明中,对于包括LU的每个区域,存在从主机装置2侧来看的第一逻辑地址以及从存储控制器110和FM控制器120侧来看的第二逻辑地址。
图6是示出存储在存储控制器110的非易失性存储器404中的多个表的示图。
非易失性存储器404,例如非易失性存储器404存储RAID组配置表610、LU配置表620以及快照配置表630作为多个表。可以在操作存储系统100之后创建这些表中的至少一个。以下将说明非易失性存储器404内的表。
图7示出了RAID组配置表610的配置。
RAID组配置表610示出了配置每个RAID组140的FM封装120。具体地,表610对于每个RAID组包括下面的信息:
(*)RAID组编号701,这是RAID组的编号;以及
(*)FM封装编号702,这是RAID组所属的FM封装的编号。
根据附图中示出的示例,明显的是,5个FM封装120,即FM封装#0、1、2、3、4属于RAID组#1。
图8示出了LU配置表620的配置。
LU配置表620示出了每个LU的配置。具体地,表620例如对于每个LU部分包括下面的信息:
(*)LU编号801,这是包括LU部分的LU的编号;
(*)RAID组编号802,这是构成LU部分的基础的RAID组的编号;
(*)逻辑地址范围803,这是分配给LU部分的第二逻辑地址的范围;以及
(*)FM封装编号804,这是构成LU部分的基础的FM封装的编号。
根据附图中示出的示例,清楚的是,LU#0的第一部分(包括LU#0的顶部的部分)基于RAID组#0内的FM封装#0,并且向该第一部分分配0X0000至0X00FF作为第二逻辑地址范围。此外,清楚的是,LU#0的第二部分(LU#0的第一部分之后的下一部分)基于RAID组#0内的FM封装#1,并且向该第二部分分配0X0100至0X01FF作为第二逻辑地址范围。因此,根据该附图的示例,在LU#0的第一部分是I/O目的地的情况下,仅对RAID组#0的FM封装#0执行I/O,并且在LU#0的第二部分是I/O目的地的情况下,仅对RAID组#0的FM封装#1执行I/O。即,在该实施例中,RAID组#0中的数据不被分散地写入包括RAID组#0的5个FM封装#0至#4。
图9示出了快照配置表630的配置。
快照配置表630示出了与每个LU的快照相关的信息。具体地,表630对于每个LU例如包括下面的信息:
(*)LU编号901,这是LU的编号;
(*)快照标志902,这表示LU快照获取是(开)还是(关);以及
(*)快照获取值903,这表示针对LU已经获取的快照的数目。
根据该附图中示出的示例,清楚的是,对于LU#0,快照标志902是“开”并且要获取快照,而且已经获取了3个快照。此外,清楚的是,对于LU#1,快照标志902是“关”并且将不要获取快照,而且已经获取了0个快照。
图10是示出存储在每个FM封装120的非易失性存储器414中的多个表的示图。
非易失性存储器414,例如,存储快照管理表1010、逻辑-物理转换表1020、生成管理条目组1030、物理页面状态管理表1040以及物理块状态管理表1050作为多个表。可以在存储系统1操作之后创建这些表中的至少一个。以下将说明非易失性存储器414内的表。
图11示出了快照管理表1010的配置。
快照管理表1010示出了与向FM封装120提供的快照有关的信息。具体地,例如,表1010对于每个LU包括下面的信息:
(*)LU编号1101,这是LU的编号;
(*)逻辑地址1102,这表示LU第二逻辑地址的范围;
(*)快照标志1103,这表示LU快照获取是(开)还是(关);以及
(*)快照获取值1104,这表示对于LU已经获取的快照的数目。
根据该附图中示出的示例,清楚的是,对于LU#1,第二逻辑地址是范围0X0000至0X04FF,快照标志是“开”并且要获取快照,而且已经获取了3个快照。
图12示出了逻辑-物理转换表1020的配置。
逻辑-物理转换表1020示出了逻辑页面和物理页面之间的对应关系。具体地,表1020例如对于每个逻辑页面包括下面的信息:
(*)逻辑页面编号1201,这是逻辑页面的编号;以及
(*)物理页面编号1202,这是与逻辑页面相关联的物理页面的编号。
根据该附图的示例,清楚的是,物理页面#500与逻辑页面#0相关联。此外,虽然在附图中未示出,但是逻辑页面与第二逻辑地址相关联。
图13示出了生成管理条目组1030的配置。
生成管理条目组1030是表示快照的生成的一个或多个条目(下文中的生成管理条目)的集合。每个生成管理条目组例如包括作为表示快照的生成的编号的生成编号1301以及作为存储包括该生成的快照的SS数据的物理页面的编号的物理页面编号1302。
如图14中所示,经由队列格式来使生成管理条目与包括逻辑-物理转换表1020的条目(下文中的逻辑-物理条目)相关。每当存储在逻辑页面中的SS数据的生成增加时,与对应于该逻辑页面的逻辑-物理条目相关的生成管理条目的数目增加。例如,在图14中,假定对应于生成#1的生成管理条目与对应于逻辑页面#0的逻辑-物理条目相关。据此,假定存储在逻辑页面#0中的生成#2SS数据被存储在物理页面#340中。在该情况下,对应于生成#2的生成管理条目(该条目包括生成编号1301“生成2”和物理页面编号1302“340”)与对应于逻辑页面#0的逻辑-物理条目相关,并且现有的生成管理条目(该条目包括生成编号1301“生成1”和物理页面编号1302“0”)与该生成管理条目相关。
图15示出了物理页面状态管理表1040的配置。
物理页面状态管理表1040示出了物理页面的状态。具体地,表1040对于每个物理页面例如包括下面的信息:
(*)物理页面编号1501,这表示物理页面的编号;以及
(*)物理页面状态1502,这表示物理页面的状态。
根据该附图的示例,清楚的是,物理页面#1是有效页面,物理页面#2是SS页面,物理页面#3是可用页面,并且物理页面#4是无效页面。此外,可用页面是其中没有存储数据的物理页面。
图16示出了物理块状态管理表1050的配置。
物理块状态管理表1050示出了物理块的状态。具体地,表1050对于每个物理块例如包括下面的信息:
(*)物理块编号1601,这表示物理块的编号;
(*)删除的数目1602,这表示物理块已经被删除的次数;
(*)最后的写入时间1603,这表示数据最后被写入物理块内的物理页面的时间;
(*)无效页面数目1604,这表示物理块的无效页面的数目;以及
(*)物理页面列表1605,这示出了从物理块的第一物理页面的编号到最后物理页面的编号的物理页面编号的列表。
根据该附图的示例,清楚的是,物理块#0到当前已经被删除了1000次,数据被存储在该物理块内的页面中的最后时间是“2010/10/10/15:34:26”,并且存在998个无效页面。此外,清楚的是,物理块#0包括物理页面编号0至1000。
接下来,将说明与该实施例相关的由存储系统100执行的各种类型的处理。
图17示出了存储控制器110快照过程。在下面的说明中,快照可以被缩写为“SS”。
存储控制器110接收来自主机装置2的SS命令(S1701)。
存在多种类型的SS命令。多种类型的SS命令例如是SS获取命令(用于获取SS的命令)、SS删除命令(用于删除SS的命令)、以及SS读取命令(用于从SS读取数据的命令)。多种类型的SS命令还可以包括SS写入命令(用于将数据写入到SS的命令)。
在SS命令中至少指定了LU。具体地,例如,SS获取命令、SS删除命令和SS读取命令全部都包括LU编号,LU编号构成SS的源。SS读取命令另外包括SS生成编号和与其中存储了读取目标数据的区域相对应的第一逻辑地址。在对图17的说明中,在SS命令中指定的LU将被称为“目标LU”。
存储控制器110基于SS命令来识别将作为PKG-SS命令的目的地的FM封装(PKG)(S1702)。具体地,例如,存储控制器110从LU配置表620中识别与目标LU相对应的FM封装。在SS命令包括第一逻辑地址的情况下,存储控制器110基于目标LU编号来识别与第一逻辑地址相对应的第二逻辑地址,并且从LU配置表620中识别与该LU编号相对应的FM封装和该第二逻辑地址。所识别的FM封装是PKG-SS命令的目的地。PKG-SS命令是发送到FM封装的SS命令。
存储控制器110确定SS命令的类型(S1703)。在SS命令的类型是SS删除的情况下,存储控制器110执行S1704和S1705的处理。在SS命令的类型是SS获取的情况下,存储控制器110执行S1707和S1708的处理。在SS命令的类型是SS读取的情况下,存储控制器110执行S1709的处理。
下文中将说明SS命令类型是SS删除的情况。
在S1703中将SS命令类型确定为SS删除的情况下,存储控制器110取消针对目标LU的快照获取(S1704)。具体地,存储控制器110将与SS命令的LU编号相对应的快照配置表630中的快照标志902改变为“关”。
接下来,存储控制器110使得关于目标LU的所有快照无效(S1705)。具体地,存储控制器110将与SS命令的LU编号相对应的快照配置表630中的快照获取值902改变为“0”。接下来,存储控制器110执行S1706。
下文中将说明SS命令类型是SS获取的情况。
在S1703中将SS命令类型确定为SS获取的情况下,存储控制器110更新关于目标LU的快照获取(S1707)。具体地,存储控制器110将与目标LU相对应的快照配置表630中的快照标志902改变为“开”。
接下来,存储控制器110使与目标LU相对应的快照配置表630中的快照获取值902增加1(S1708)。即,每当接收到SS获取命令时,目标LU的快照数目都增加1。接下来执行S1706。
下文中将说明SS命令类型是SS读取的情况。
在S1703中将SS命令类型确定为SS读取的情况下,存储控制器110获取在SS命令中配置的生成编号(S1708)。接下来执行S1706。
将说明S1706的处理。存储控制器110创建基于SS命令的PKG-SS命令,并且将该PKG-SS命令发送到在S1502中识别的FM封装。与SS命令相同,PKG-SS命令类型例如包括SS删除、SS获取和SS读取。
包括在要发出的PKG-SS命令中的信息根据在S1703中确定的SS命令类型而不同。在SS命令类型是SS删除和SS获取的情况下,LU编号被包括在PKG-SS命令中。在SS命令类型是SS读取的情况下,第二逻辑地址和生成编号也被包括在PKG-SS命令中。
图18示出了FM封装120快照过程。
FM封装120接收来自存储控制器110的PKG-SS命令(S1801)。在对图18的说明中,在PKG-SS命令中指定的LU将被称为“目标LU”。图18中的目标LU与图17中的目标LU相同。
FM控制器412确定接收到的PKG-SS命令的类型(S1802)。具体地,FM控制器412确定PKG-SS命令类型是SS删除、SS获取还是SS读取。
在确定的结果是SS命令类型是SS删除的情况下,FM控制器412执行S1803至S1806的处理。在SS命令类型是SS获取的情况下,FM控制器412执行S1807至S1809或者S1807和S1809的处理。在SS命令类型是SS读取的情况下,FM控制器412执行S1811至S1814或者S1811至S1813和S1815的处理。
以下将说明PKG-SS命令类型是SS删除的情况。
在S1802中SS命令类型被确定为SS删除的情况下,FM控制器412取消针对目标LU的快照获取(S1803)。具体地,FM控制器412将与目标LU相对应的快照管理表1010中的快照标志1103改变为“关”。
接下来,FM控制器412使得关于目标LU的所有快照无效(S1804)。具体地,FM控制器412将与PKG-SS命令的LU编号相对应的快照管理表1010中的快照获取值1104改变为“0”。
此外,FM控制器412使与目标LU相关的所有SS数据无效(S1805)。具体地,FM控制器412识别在逻辑-物理转换表1020中的与目标LU相对应的所有逻辑-物理条目,并且使在所识别的多个逻辑-物理条目中的所有生成管理条目关系无效。此外,FM控制器412针对每个无效的生成管理条目来识别在生成管理条目中登记的物理页面编号,并且此外,将包括所识别的物理页面编号的条目(在物理页面状态管理表1040中的条目)内的物理页面状态1502从“SS”改变为“无效”(S1806)。
以下将说明PKG-SS命令类型是SS获取的情况。
在S1802中SS命令类型被确定为SS获取的情况下,FM控制器412还进行关于快照标志是否是开的确定(S1807)。
在确定的结果是快照标志为开的情况下,FM控制器412执行处理以提升快照标志(S1808)。具体地,FM控制器412将与目标LU相对应的快照管理表1010中的快照标志902改变为“开”。
接下来,FM控制器412使与目标LU相对应的快照管理表1010中的快照获取值1104递增1(S1809)。即,每当接收到PKG-SS获取命令时,目标LU的快照数目都增加1。
以下将说明PKG-SS命令类型是SS读取的情况。
在S1802中PKG-SS命令类型被确定为SS读取的情况下,FM控制器412从PKG-SS命令中获取生成编号(S1811)。
FM控制器412从PKG-SS命令中获取第二逻辑地址,基于该第二逻辑地址来计算逻辑页面编号,并且从逻辑-物理转换表1020中识别与该逻辑页面相对应的物理页面(S1812)。
FM控制器412确定在与S1812中识别的物理页面相对应的逻辑-物理条目中是否存在包括在S1811中识别的生成编号的生成管理条目(S1813)。
在S1813中不存在生成管理条目的情况下,FM控制器412从在S1812中识别的物理页面中读取数据(S1814)。
在S1813中存在生成管理条目的情况下,FM控制器412从与该生成管理条目的物理页面编号相对应的物理页面中读取数据(S1815)。
FM控制器412将在S1814或S1815中读取的数据发送到存储控制器110。存储控制器110将该数据发送到主机装置2。据此,主机装置2能够获取在SS命令指定的生成快照中的与由该SS命令指定的第一逻辑地址相对应的数据。
图19示出了存储控制器110的写入过程。
存储控制器110接收来自主机装置2的写入命令和写入目标数据(S1901)。表示写入目的地的信息,例如包括LU编号和第一逻辑地址的信息,被包括在接收到的写入命令中。
存储控制器110从写入命令中识别写入目的地FM封装(S1902)。具体地,存储控制器110从写入命令的LU编号和第一逻辑地址计算第二逻辑地址,并且从LU配置表620中识别与LU编号和该第二逻辑地址相对应的FM封装。该FM封装是写入目的地FM封装。
存储控制器110向在S1902中识别的写入目的地FM封装发出写入命令和写入目标数据(下文中,该写入命令将被称为PKG-WR命令)(S1903)。LU编号和第二逻辑地址例如被包括在PKG-WR命令中。LU编号可与写入命令的LU编号相同。
图20示出了FM封装120的写入过程。
FM封装120接收来自存储控制器110的PKG-WR命令(S2001)。
FM控制器412从接收到的PKG-WR命令中识别写入目的地物理页面(S2002)。具体地,FM控制器412从包括在PKG-WR命令中的LU编号和第二逻辑地址来计算逻辑页面编号。然后,FM控制器412从逻辑-物理转换表1020中识别与该逻辑页面编号相对应的物理页面编号。在物理页面不与目标逻辑页面编号相对应的情况下,可以获取用于该效果的信息来代替物理页面编号。
FM控制器412选择具有小的删除数目的物理块(S2003)。例如,FM控制器412基于物理块状态管理表150来选择具有最小删除数目的物理块。此外,例如,FM控制器412可以任意选择具有等于或小于规定值的删除数目的物理块。下文中所选择的物理块被称为所选块。
FM控制器412从所选块内的多个物理页面中选择可用物理页面(S2004)。具体地,FM控制器412基于物理块状态管理表150来获取在所选块内存在的物理页面的物理页面编号。然后,FM控制器412基于物理页面状态管理表140来从这些物理页面编号中选择具有“可用”的物理页面状态1502的物理页面编号。下文中所选择的物理页面被称为所选页面。
FM控制器412将写入目标数据写入到所选页面(S2005)。
FM控制器412更新最后WR时间(S2006)。具体地,FM控制器412基于内部计时器(附图中未示出)来获取在S2005中写入目标数据被写入所选页面的时间。然后,FM控制器412将所获取的时间写入到物理块状态管理表1050中的与所选块(物理块1601)相关的最后WR时间列1603。
FM控制器412将在与所选页面相对应的物理页面状态管理表1040中的物理页面状态1502改变为“有效”(S2007)。
FM控制器412更新逻辑-物理转换表1020的物理页面数目(S2008)。具体地,FM控制器412将与在S2002中计算的逻辑页面编号相对应的逻辑-物理转换表1020中的物理页面编号1202改变为所选页面的物理页面编号。在以下图20的说明中,在被改变为所选页面的物理页面编号之前的物理页面编号将被称为“旧物理页面编号”。
FM控制器412进行关于与写入目的地LU相对应的快照管理表1010中的快照标志1103是否是“开”的确定(S2009)。在快照标志1103是“关”的情况下,FM控制器412移动到S2010。替代地,在快照标志1103是“开”的情况下,FM控制器412移动到S2012。
将说明在快照标志1103是“关”的情况。在与快照管理表1010中的目标LU编号1101相对应的快照标志1103是“关”的情况下,FM控制器412将与旧物理页面编号相对应的物理页面状态管理表1040中的物理页面状态1502改变为“无效”(S2010)。
接下来,FM控制器412使关于所选块的物理块状态管理表1050中的无效页面的数目1604递增(S2011)。无效页面的数目1604与在S2010中被配置为“无效”的页面的数目成比例地递增。
将说明快照标志1103是“开”的情况。在与写入目的地LU相对应的快照管理表1010中的快照标志1103是“开”的情况下,FM控制器412确定针对该写入目的地LU是否存在SS数据的最新生成(S2012)。不存在SS数据的最新生成的情况是其中包括最新生成的编号的生成管理条目不与包括在S2002中计算的逻辑页面编号的逻辑-物理条目相关的情况。替代地,存在SS数据的最新生成的情况是其中包括最新生成的编号的生成管理条目与包括在S2002中计算的逻辑页面编号的逻辑-物理条目相关的情况。在不存在SS数据的最新生成的情况下,FM控制器412前进到S2013。在存在SS数据的最新生成的情况下,FM控制器412执行上述S2010至S2011的处理,并且结束该处理。
将说明S2013的处理。FM控制器412使包括旧物理页面编号和最新生成编号的生成管理条目1030与包括在S2002中计算的逻辑页面编号的逻辑物理条目重新相关(S2013)。
FM控制器412将与旧物理页面编号相对应的物理页面状态管理表1040中的物理页面状态1502改变为“无效”(S2014)。
图21示出了存储控制器110的读取过程。
存储控制器110接收来自主机装置2的读取命令(S2101)。包括LU编号和第一逻辑地址的信息例如被包括在接收到的读取命令中作为表示读取源的信息。
存储控制器110从读取命令中识别读取源FM封装(S2102)。具体地,存储控制器110从读取命令的LU编号和第一逻辑地址计算第二逻辑地址,并且从LU配置表620中识别与LU编号和该第二逻辑地址相对应的FM封装。该FM封装是读取源FM封装。
存储控制器110向在S2102中识别的读取源FM封装发出读取命令(下文中,该读取命令将被称为PKG-RD命令)(S2103)。LU编号和第二逻辑地址例如被包括在PKG-RD命令中。LU编号可以与读取命令的LU编号相同。
图22示出了FM封装120的读取过程。
FM封装120接收来自存储控制器110的PKG-RD命令(S2201)。
FM控制器412从接收到的PKG-RD命令中识别读取源物理页面(S2202)。具体地,FM控制器412从包括在PKG-RD命令中的LU编号和第二逻辑地址计算逻辑页面编号。然后,FM控制器412从逻辑-物理转换表1020中识别与该计算的逻辑页面编号相对应的物理页面编号。
FM控制器412从所识别的物理页面中读取数据(S2203)。
FM控制器412将该读取数据发送到存储控制器110。存储控制器110将该数据发送到主机装置2。据此,主机装置2能够获取在该读取命令指定的LU中的与由该读取命令指定的第一逻辑地址相对应的数据。
接下来,将参考图23说明回收过程。由FM封装412执行回收过程。
FM控制器412相对于在FM封装120中的每个物理块511确定是否存在具有等于或大于阈值的无效页面的物理块(S2301)。具体地,FM控制器412基于物理块状态管理表1050来选择具有等于或大于阈值的无效页面的数目1604的物理块(在该说明中,具有等于或大于阈值的无效页面的物理块将被称为无效块)的物理块编号1401。在确定的结果是不存在无效块的情况下,FM控制器412结束该回收过程(结束)。
替代地,在S2301的确定的结果是在FM封装120中存在无效块的情况下,FM控制器412执行S2302和后续步骤的处理。在下面的说明中,将相对于一个无效块来说明S2302和后续步骤的处理。然而,在存在多个无效块的情况下,FM控制器412可以相对于首先从物理块状态管理表1050中删除的无效块来执行S2302和后续步骤的处理,或者可以基于规定的规则来执行该处理,诸如以最小物理块编号开始来执行S2302和后续步骤的处理。
FM控制器412进行关于在无效块中是否存在SS页面的确定(S2302)。具体地,FM控制器412基于物理块状态管理表1050来选择与无效块的物理块编号1601相对应的物理页面列表1605。然后,FM控制器412基于物理页面状态管理表1040来进行关于与所选物理页面相关的物理页面状态1502是否是“SS”的确定。在存在具有“SS”的物理页面状态1502的物理页面的情况下,FM控制器412移动到S2303。替代地,在不存在具有“SS”的物理页面状态1502的物理页面的情况下,FM控制器412移动到S2307。
将说明S2303。FM控制器412选择具有等于或大于阈值的删除数目并且此外包括可用页面的物理块(S2303)。在该处理的说明中,在S2303中选择的物理块被称为第一所选块。具体地,FM控制器412基于物理块状态管理表1050来选择具有等于或大于阈值的删除数目1602的物理块编号1601,并且获取与所选物理块编号1601相对应的物理页面列表1605。然后,FM控制器412基于物理块状态管理表1040来搜索所获取的物理页面编号1501的物理页面状态1502是否是“可用”。在搜索的结果是物理页面状态1502是“可用”的情况下,FM控制器412选择包括该物理页面的无效页面作为第一所选块。此外,在存在构成第一所选块的候选的多个物理块的情况下,例如,具有最多可用页面的物理块可以用作第一所选块,或者其删除数目落在规定范围内的物理块可以用作第一所选块。
FM控制器412将无效块中的SS页面的数据(SS数据)复制到第一所选块的可用页面(S2304)。下文中,无效块中的复制源SS页面被称为复制源页面,并且第一所选块中的数据的复制目的地可用页面被称为复制目的地页面。
FM控制器412将与复制源页面相对应的逻辑-物理转换表1020中的物理页面编号1202改变为复制目的地页面的物理页面编号(S2305)。
FM控制器412将与复制源页面的物理页面编号1501相对应的物理页面状态1502改变为“无效”,并且在物理页面状态管理表1040中将与复制目的地页面的物理页面编号1501相对应的物理页面状态1502改变为“SS”(S2306)。
FM控制器412更新无效块的无效页面的数目和所选块的最后写入时间(S2312)。具体地,首先,FM控制器412使在物理块状态管理表1050中的与无效块的物理块编号1601相对应的无效页面的数目1604递增。与无效页面的数目成比例地执行无效页面的数目1604的递增。接下来,FM控制器412在物理状态管理表1050中将与所选块的物理块编号1601相对应的最后写入时间1603更新为在S2304中复制的时间。
在S2312的处理之后,在S2302的确定的结果是在物理页面状态管理表1040中不存在具有“SS”的物理页面状态1502的物理页面的情况下,执行以下将说明的S2307。
FM控制器412确定在无效块中是否存在有效页面(S2307)。具体地,第一FM控制器412基于物理块状态管理表1050来获取与无效块的物理块编号1601相关的物理页面列表1605。接下来,FM控制器412基于物理页面状态管理表1040来确定是否存在具有“有效”的所选物理页面状态1502的物理页面编号1501。在无效块中存在有效页面的情况下,FM控制器412移动到S2308。在无效块中不存在有效页面的情况下,FM控制器412移动到S2313。
将说明S2308的处理。FM控制器412选择具有小于阈值的删除数目并且此外包括可用页面的物理块(S2308)。在该处理的说明中,在S2308中选择的物理块被称为第二所选块。具体地,首先,FM控制器412基于物理块状态管理表1050来选择具有小于阈值的删除数目1602的物理块编号1601,并且获取与所选物理块1601相对应的物理页面列表1605。然后,FM控制器412基于物理页面状态管理表1040来确定所获取的物理页面编号1501的物理页面状态1502是否是“可用”。在该确定的结果是肯定的情况下,FM控制器412选择包括具有“可用”的物理页面状态1502的物理页面的无效块作为第二所选块。此外,在多个物理块构成第二所选块候选的情况下,例如,具有最多可用页面的物理块可以被选择为第二所选块,或者具有最小删除数目的物理块可以被选择为第二所选块。
FM控制器412将无效块中的有效页面的数据(有效数据)复制到第二所选块的可用页面(S2309)。下文中,无效块中的复制源有效页面将被称为复制源页面,并且第二所选块中的数据的复制目的地可用页面将被称为复制目的地页面。
FM控制器412将与复制源页面相对应的逻辑-物理转换表1020中的物理页面编号1202改变为复制目的地页面的物理页面编号(S2310)。
关于物理页面状态管理表1040,FM控制器412将与复制源页面相对应的物理页面状态1502改变为“无效”,并且将与复制目的地页面相对应的物理页面状态1502改变为“有效”(S2311)。
FM控制器412执行上述S2312的处理。即,FM控制器412更新无效块的无效页面的数目和所选块的最后写入时间(S2312)。在S2312的处理之后,执行上述S2302和后续步骤的处理。
接下来将说明S2313和后续步骤的处理。
在S2307中的确定的结果是在无效块中不存在有效页面的情况下,FM控制器412确定在FM封装120中的无效块中是否存在其中无效页面数目等于或大于规定值的无效块(S2313)。具体地,FM控制器412基于物理块状态管理表1050来确定是否存在等于或大于规定值的无效页面数目1604。在该确定的结果是不存在具有等于或大于规定值的无效页面数目的无效块的情况下,处理结束(结束)。
替代地,在该确定的结果是存在具有等于或大于规定值的无效页面数目的无效块的情况下,FM控制器412获取该无效块的物理块编号1601。在存在具有等于或大于规定值的无效页面数目的多个无效块的情况下,FM控制器412获取这些无效块中的具有最大无效页面数目的无效块的物理块编号1601。下文中,包括在S2314中获取的物理块编号1601的无效块将被称为目标无效块。
FM控制器412删除目标无效块(S2314)。无效块的删除指将无效块中的所有物理页面改变为可用物理页面。
FM控制器412使目标无效块的删除的数目递增1,并且此外,初始化最后写入时间(S2315)。具体地,FM控制器412在物理块状态管理表1050中使与目标无效块的物理编号1601相对应的删除的数目递增1,并且初始化(例如,键入“-”)最后写入时间。
接下来,将参考图24来说明刷新过程。由FM封装412执行该刷新过程。
FM控制器412针对FM封装120中的每个物理块511确定是否存在其从最后写入时间开始所度过的时间等于或大于阈值的物理块(S2401)。具体地,FM控制器412基于物理块状态管理表1050来选择其当前时间和最后写入时间之间的差等于或大于阈值的物理块的物理块编号1401(在该说明中,其当前时间和最后写入时间之间的差等于或大于阈值的物理块将被称为时间过期块)。在确定的结果是不存在时间过期块的情况下,FM控制器结束刷新处理(结束)。
替代地,在S2401的确定的结果是在FM封装120中存在时间过期块的情况下,FM控制器412执行S2402和后续步骤的处理。在下面的说明中,将相对于一个时间过期块来说明S2402和后续步骤的处理。然而,在存在多个时间过期块的情况下,FM控制器412可以相对于在物理块状态管理表1050中最初找到的时间过期块来执行S2402和后续步骤,或者可以从最小物理块编号开始基于规定的规则来执行S2302和后续步骤的处理。
FM控制器412进行关于在时间过期块中是否存在SS页面的确定(S2402)。具体地,FM控制器412基于物理块状态管理表1050来选择与时间过期块的物理块编号1601相对应的物理页面列表1605。然后,FM控制器412基于物理页面状态管理表1040来进行关于与所选物理页面相关的物理页面状态1502是否是“SS”的确定。在存在具有“SS”的物理页面状态1502的物理页面的情况下,FM控制器412移动到S2403。替代地,在不存在具有“SS”的物理页面状态1502的物理页面的情况下,FM控制器412移动到S2407。
将说明S2403。FM控制器412选择具有等于或大于阈值的删除数目并且此外包括可用页面的物理块(S2403)。在该处理的说明中,在S2403中选择的物理块被称为第三所选块。具体地,FM控制器412基于物理块状态管理表1050来选择其删除数目1602等于或大于阈值的物理块编号1601,并且获取与所选物理块编号1601相对应的物理页面列表1605。然后,FM控制器412基于物理页面状态管理表1040来搜索所获取的物理页面编号1501的物理页面状态1502是否是“可用”。在搜索的结果是物理页面状态1502是“可用”的情况下,FM控制器412选择包括该物理页面的时间过期块作为第三所选块。此外,在存在构成第三所选块候选的多个物理块的情况下,例如,具有最多可用页面的物理块可以是第三所选块,或者其删除数目落在规定范围内的物理块可以是第三所选块。
FM控制器412将时间过期块中的SS页面的数据(SS数据)复制到第三所选块的可用页面(S2404)。下文中,第三所选块中的复制源SS页面被称为复制源页面,并且第三所选块中的复制目的地可用页面被称为复制目的地页面。
FM控制器412将与复制源页面相对应的逻辑-物理转换表1020中的物理页面编号1202改变为复制目的地页面的物理页面编号(S2405)。
在物理页面状态管理表1040中,FM控制器412将与复制源页面相对应的物理页面状态1502改变为“无效”,并且将与复制目的地页面相对应的物理页面状态1502改变为“SS”(S2406)。
FM控制器412更新第三所选块的无效页面数目和第三所选块的最后写入时间(S2412)。具体地,首先,FM控制器412在物理状态管理表1050中使与第三所选块相对应的无效页面数目1604递增。与无效页面数目成比例地执行无效页面数目1604的递增。接下来,FM控制器412将物理状态管理表1050中的与第三所选块相对应的最后写入时间1603更新为在S2404中执行复制的时间。
在S2412的处理之后,在S2402的确定的结果是在物理页面状态管理表1040中不存在具有“SS”的物理页面状态1502的物理页面的情况下,执行以下将说明的S2407。
FM控制器412确定在时间过期块中是否存在有效页面(S2407)。具体地,首先,FM控制器412基于物理块状态管理表1050来获取与时间过期块的物理块编号1601相关的物理页面列表1605。接下来,FM控制器412基于物理页面状态管理表1040来确定是否存在具有“有效”的所获取的物理页面状态1502的物理页面编号1501。在时间过期块中存在有效页面的情况下,FM控制器412移动到S2408。在时间过期块中不存在有效页面的情况下,FM控制器412移动到S2413。
将说明S2408的处理。FM控制器412选择具有小于阈值的删除数目并且此外包括可用页面的物理块(S2408)。在对该过程的说明中,在S2408中选择的物理块被称为第四所选块。具体地,首先,FM控制器412基于物理块状态管理表1050来选择具有小于阈值的删除数目1602的物理块编号1601,并且获取与所选物理块1601相对应的物理页面列表1605。然后,FM控制器412基于物理页面状态管理表1040来确定所获取的物理页面编号1501的物理页面状态1502是否是“可用”。在该确定的结果是肯定的情况下,FM控制器412选择包括具有“可用”的物理页面状态1502的时间过期块作为第四所选块。此外,在存在构成第四所选块候选的多个物理块的情况下,例如,具有最多可用页面的物理块可以被选择为第四所选块,或者具有最小删除数目的物理块可以被选择为第四所选块。
FM控制器412将时间过期块中的有效页面的数据(有效数据)复制到第四所选块的可用页面(S2409)。下文中,第四所选块中的复制源有效页面被称为复制源页面,并且第四所选块中的数据的复制目的地可用页面被称为复制目的地页面。
FM控制器412将与复制源页面相对应的逻辑-物理转换表1020中的物理页面编号1202改变为复制目的地页面的物理页面编号(S2410)。
在物理页面状态管理表1040中,FM控制器412将与复制源页面相对应的物理页面状态1502改变为“无效”,并且将与复制目的地页面相对应的物理页面状态1502改变为“有效”(S2411)。
FM控制器412执行上述S2412的处理。即,FM控制器412更新第四所选块的无效页面的数目和第四所选块的最后写入时间(S2412)。在S2412的处理之后,执行上述S2402和后续步骤的处理。
接下来将说明S2413和后续步骤的处理。
在S2407中的确定的结果是在无效块中不存在有效页面的情况下,FM控制器412确定在FM封装120中的时间过期块中是否存在其中无效页面数目等于或大于规定值的时间过期块(S2413)。具体地,FM控制器412基于物理块状态管理表1050来确定是否存在等于或大于规定值的无效页面数目1604。在该确定的结果是不存在具有等于或大于规定值的无效页面数目的时间过期块的情况下,处理结束(结束)。
替代地,在该确定的结果是存在具有等于或大于规定值的无效页面数目的时间过期块的情况下,FM控制器412获取该时间过期块的物理块编号1601。在存在具有等于或大于规定值的无效页面数目的多个时间过期块的情况下,获取这些时间过期块中的具有最大无效页面数目的时间过期块的物理块编号1601。下文中,包括在S2414中获取的物理块编号1601的时间过期块被称为目标时间过期块。
FM控制器412删除目标时间过期块(S2414)。时间过期块的删除指将该时间过期块中的所有物理页面改变为可用物理页面。
FM控制器412使目标时间过期块的删除的数目递增1,并且此外,初始化最后写入时间(S2415)。具体地,FM控制器412在物理块状态管理表1050中使与目标时间过期块的物理编号1601相对应的删除的数目递增1,并且初始化最后写入时间(例如,键入“-”)。然后,处理结束(结束)。
以上已经说明了本发明的实施例,但是这是用于说明本发明的示例,而并不意在将本发明的范围仅限于该实施例。还可以使用各种其他模式来实践本发明。
附图标记列表
100 存储系统
110 存储控制器
120 FM封装
Claims (16)
1.一种耦合到主机装置的存储系统,所述存储系统包括:
多个闪存封装,所述多个闪存封装每一个都包括多个闪存存储器芯片以及一个封装控制器,所述封装控制器用于控制所述多个闪存存储器芯片的存储区域;以及
存储控制器,所述存储控制器使用多个闪存存储器封装的所述存储区域来向所述主机装置提供第一LU(逻辑单元)和第二LU,
其中当将所述第一LU作为备份目标来管理并且将所述第二LU作为非备份目标来管理时,所述封装控制器执行控制以便:
在接收到关于与所述第一LU相对应的第一逻辑存储区域的更新数据写入请求时,在保持预更新数据的状态下将分配给所述第一逻辑存储区域的第一物理存储区域作为备份存储区域来管理,向所述第一逻辑存储区域新分配第二物理存储区域,并且将所述更新数据写入所述第二物理存储区域,
在接收到关于与所述第二LU相对应的第二逻辑存储区域的更新数据写入请求时,将分配给所述第二逻辑存储区域的第三物理存储区域作为无效存储区域来管理,并且将所述更新数据写入新分配给所述第二逻辑存储区域的第四物理存储区域,
使用作为所述备份存储区域来管理的所述第一物理存储区域来提供针对所述第一LU的备份数据,以及
删除作为所述无效存储区域来管理的所述第三物理存储区域中所存储的预更新数据。
2.根据权利要求1所述的存储系统,其中所述存储控制器在从所述主机装置接收到关于所述第二LU的备份获取请求时,向所述多个闪存封装的所述封装控制器中的每一个封装控制器发送所述备份获取请求,并且
所述封装控制器在接收到关于所述第二LU的所述备份获取请求时,将所述第二LU作为所述备份目标来管理。
3.根据权利要求1所述的存储系统,其中所述存储控制器在从所述主机装置接收到关于所述第一LU的备份删除请求时,向所述多个闪存封装的所述封装控制器中的每一个封装控制器发送所述备份删除请求,并且
所述封装控制器在接收到关于所述第一LU的所述备份删除请求时,将所述第二LU作为所述非备份目标来管理以及将所述第一物理存储区域作为所述无效存储区域来管理。
4.根据权利要求1所述的存储系统,其中所述封装控制器执行控制以便针对第一物理块,将数据复制到第二物理块中所包括的多个物理存储区域,所述数据被存储在所述第一物理块中所包括的多个物理存储区域中的、分配给与所述第一LU或所述第二LU相对应的逻辑存储区域的至少一个物理存储区域中,
将数据复制到第三物理块中所包括的多个物理存储区域,所述数据被存储在所述第一物理块中所包括的多个物理存储区域中的、作为所述备份存储区域来管理的至少一个物理存储区域中,并且
在完成所述复制之后,删除被存储在所述第一物理块中所包括的所述多个物理存储区域中的数据。
5.根据权利要求4所述的存储系统,其中所述封装控制器管理删除的数目,所述删除的数目是已经针对所述闪存封装的多个物理块中的每一个物理块执行了用于删除数据的控制的次数,并且
从所述多个物理块中选择具有等于或大于阈值的所述删除的数目的物理块作为所述第二物理块,并且选择具有等于或大于阈值的所述删除的数目的物理块作为所述第三物理块。
6.根据权利要求4所述的存储系统,其中所述第二物理块的所述删除的数目大于所述第三物理块的所述删除的数目。
7.根据权利要求4所述的存储系统,其中在所述第一物理块中所包括的所述多个物理存储区域中的、作为所述无效存储区域来管理的物理存储区域的比率等于或大于阈值的情况下,执行所述复制过程。
8.根据权利要求4所述的存储系统,其中在从数据被写入所述第一物理块中所包括的所述多个物理存储区域中的任何一个物理存储区域的最后时间开始已经经过了规定时间的情况下,执行所述复制过程。
9.一种存储系统的控制方法,所述存储系统包括多个闪存封装,所述多个闪存封装每一个都包括多个闪存存储器芯片,
其中当提供给主机装置的第一LU(逻辑单元)作为备份目标被管理并且提供给所述主机装置的第二LU作为非备份目标被管理时,所述存储系统控制方法包括步骤:
在接收到关于与所述第一LU相对应的第一逻辑存储区域的更新数据写入请求时,在保持预更新数据的状态下将分配给所述第一逻辑存储区域的第一物理存储区域作为备份存储区域来管理,向所述第一逻辑存储区域新分配第二物理存储区域,并且将所述更新数据写入所述第二物理存储区域,
在接收到关于与所述第二LU相对应的第二逻辑存储区域的更新数据写入请求时,将分配给所述第二逻辑存储区域的第三物理存储区域作为无效存储区域来管理,并且将所述更新数据写入新分配给所述第二逻辑存储区域的第四物理存储区域,
使用作为所述备份存储区域来管理的所述第一物理存储区域来提供针对所述第一LU的备份数据,以及
删除作为所述无效存储区域来管理的所述第三物理存储区域中所存储的预更新数据。
10.根据权利要求9所述的存储系统的控制方法,进一步包括步骤:
在接收到关于所述第二LU的备份获取请求时,向所述多个闪存封装中的每一个闪存封装发送所述备份获取请求;以及
在接收到关于所述第二LU的所述备份获取请求时,将所述第二LU作为所述备份目标来管理。
11.根据权利要求9所述的存储系统的控制方法,进一步包括步骤:
在接收到关于所述第一LU的备份删除请求时,向所述多个闪存封装中的每一个闪存封装发送所述备份删除请求;以及
在接收到关于所述第一LU的所述备份删除请求时,将所述第二LU作为所述非备份目标来管理以及将所述第一物理存储区域作为所述无效存储区域来管理。
12.根据权利要求9所述的存储系统的控制方法,进一步包括步骤:
将数据复制到第二物理块中所包括的多个物理存储区域,所述数据被存储在所述闪存封装的第一物理块中所包括的多个物理存储区域中的、分配给与所述第一LU或所述第二LU相对应的逻辑存储区域的至少一个物理存储区域中;
将数据复制到第三物理块中所包括的多个物理存储区域,所述数据被存储在所述第一物理块中所包括的多个物理存储区域中的、作为所述备份存储区域来管理的至少一个物理存储区域中;以及
在完成所述复制之后,删除被存储在所述第一物理块中所包括的所述多个物理存储区域中的数据。
13.根据权利要求12所述的存储系统的控制方法,进一步包括步骤:
管理删除的数目,所述删除的数目是已经针对所述闪存封装的多个物理块中的每一个物理块执行了用于删除数据的控制的次数,以及
从所述多个物理块中选择具有等于或大于阈值的所述删除的数目的物理块作为所述第二物理块,并且从所述多个物理块中选择具有等于或大于阈值的所述删除的数目的物理块作为所述第三物理块。
14.根据权利要求12所述的存储系统的控制方法,其中所述第二物理块的所述删除的数目大于所述第三物理块的所述删除的数目。
15.根据权利要求12所述的存储系统的控制方法,其中在所述第一物理块中所包括的所述多个物理存储区域中的、作为所述无效存储区域来管理的物理存储区域的比率等于或大于阈值的情况下,执行所述复制过程。
16.根据权利要求12所述的存储系统的控制方法,其中在从数据被写入所述第一物理块中所包括的所述多个物理存储区域中的任何一个物理存储区域的最后时间开始已经经过了规定时间的情况下,执行所述复制过程。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/000573 WO2012104909A1 (en) | 2011-02-02 | 2011-02-02 | Storage system and data control method therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103270487A true CN103270487A (zh) | 2013-08-28 |
CN103270487B CN103270487B (zh) | 2016-06-22 |
Family
ID=44454047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180062780.7A Active CN103270487B (zh) | 2011-02-02 | 2011-02-02 | 存储系统及其数据控制方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8886869B2 (zh) |
EP (1) | EP2633384A1 (zh) |
JP (1) | JP5543026B2 (zh) |
CN (1) | CN103270487B (zh) |
WO (1) | WO2012104909A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103729145A (zh) * | 2013-12-19 | 2014-04-16 | 华为技术有限公司 | Io请求的处理方法及装置 |
CN104425013A (zh) * | 2013-08-30 | 2015-03-18 | 北京兆易创新科技股份有限公司 | 一种闪存单元 |
CN104425012A (zh) * | 2013-08-30 | 2015-03-18 | 北京兆易创新科技股份有限公司 | 一种nand闪存单元 |
CN109117304A (zh) * | 2018-07-05 | 2019-01-01 | 北京珠穆朗玛移动通信有限公司 | 文件备份方法、系统及装置 |
CN110244905A (zh) * | 2018-03-09 | 2019-09-17 | 株式会社日立制作所 | 具有数据量削减功能的计算机系统,和存储控制方法 |
CN110874192A (zh) * | 2018-08-30 | 2020-03-10 | 富士通株式会社 | 存储管理设备和存储管理方法 |
CN112639715A (zh) * | 2018-10-03 | 2021-04-09 | 谷歌有限责任公司 | 使用自由存储空间维护块级快照 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8966205B1 (en) * | 2012-05-10 | 2015-02-24 | Western Digital Technologies, Inc. | System data management using garbage collection and hybrid self mapping |
WO2014057515A1 (en) * | 2012-10-10 | 2014-04-17 | Hitachi, Ltd. | Storage apparatus comprising snapshot function, and storage control method |
JP2014178867A (ja) * | 2013-03-14 | 2014-09-25 | Toshiba Corp | ストレージ制御装置、及びストレージ制御システム |
US9544269B2 (en) * | 2013-05-01 | 2017-01-10 | Comcast Cable Communications, Llc | Logical address configuration and management |
US20190056995A1 (en) * | 2014-01-31 | 2019-02-21 | International Business Machines Corporation | Managing migration of encoded data slices in a dispersed storage network |
JP6242711B2 (ja) * | 2014-02-24 | 2017-12-06 | 株式会社東芝 | ストレージ装置及びデータ管理方法 |
JP6306737B2 (ja) * | 2014-11-04 | 2018-04-04 | 株式会社日立製作所 | 半導体メモリデバイス、及び、半導体メモリデバイスを有するストレージ装置 |
US9671971B2 (en) * | 2015-03-27 | 2017-06-06 | Intel Corporation | Managing prior versions of data for logical addresses in a storage device |
JP6198992B2 (ja) * | 2015-04-08 | 2017-09-20 | 株式会社日立製作所 | 計算機システム、及び、データベース管理方法 |
WO2018051387A1 (ja) * | 2016-09-13 | 2018-03-22 | 株式会社日立製作所 | 情報処理システムおよびデータ格納方法 |
KR102530583B1 (ko) * | 2017-10-31 | 2023-05-09 | 삼성전자주식회사 | 저장 장치 및 메모리 시스템 |
US20190227957A1 (en) * | 2018-01-24 | 2019-07-25 | Vmware, Inc. | Method for using deallocated memory for caching in an i/o filtering framework |
JP7321851B2 (ja) * | 2019-09-09 | 2023-08-07 | キオクシア株式会社 | メモリシステムおよびガベッジコレクション制御方法 |
TWI722938B (zh) * | 2020-07-06 | 2021-03-21 | 慧榮科技股份有限公司 | 記憶裝置、快閃記憶體控制器及其存取方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1896960A (zh) * | 2005-07-12 | 2007-01-17 | 中国科学院计算技术研究所 | 一种快照系统及方法 |
WO2007081638A2 (en) * | 2005-12-21 | 2007-07-19 | Sandisk Corporation | Non-volatile memories and methods with adaptive file handling in a directly mapped file storage system |
US20080126712A1 (en) * | 2006-11-28 | 2008-05-29 | Hitachi, Ltd. | Semiconductor memory system having a snapshot function |
US20090180248A1 (en) * | 2008-01-10 | 2009-07-16 | Karsten Roth | Combination Drive |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484038B1 (en) * | 2005-01-26 | 2009-01-27 | Network Appliance, Inc. | Method and apparatus to manage storage devices |
JP4620111B2 (ja) * | 2005-03-10 | 2011-01-26 | 日本電信電話株式会社 | ネットワークシステム、ストレージ装置へのアクセス制御方法、管理サーバ、ストレージ装置及びログイン制御方法 |
US20070143561A1 (en) * | 2005-12-21 | 2007-06-21 | Gorobets Sergey A | Methods for adaptive file data handling in non-volatile memories with a directly mapped file storage system |
JP5137413B2 (ja) | 2006-11-28 | 2013-02-06 | 株式会社日立製作所 | 半導体記憶装置 |
US8200922B2 (en) * | 2008-12-17 | 2012-06-12 | Netapp, Inc. | Storage system snapshot assisted by SSD technology |
JP2010157188A (ja) * | 2009-01-05 | 2010-07-15 | Sony Corp | 情報処理装置、コンテンツ管理方法及びプログラム |
-
2011
- 2011-02-02 EP EP11705046.8A patent/EP2633384A1/en not_active Withdrawn
- 2011-02-02 WO PCT/JP2011/000573 patent/WO2012104909A1/en active Application Filing
- 2011-02-02 JP JP2013518028A patent/JP5543026B2/ja not_active Expired - Fee Related
- 2011-02-02 US US13/059,000 patent/US8886869B2/en active Active
- 2011-02-02 CN CN201180062780.7A patent/CN103270487B/zh active Active
-
2014
- 2014-10-30 US US14/528,039 patent/US9189391B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1896960A (zh) * | 2005-07-12 | 2007-01-17 | 中国科学院计算技术研究所 | 一种快照系统及方法 |
WO2007081638A2 (en) * | 2005-12-21 | 2007-07-19 | Sandisk Corporation | Non-volatile memories and methods with adaptive file handling in a directly mapped file storage system |
US20080126712A1 (en) * | 2006-11-28 | 2008-05-29 | Hitachi, Ltd. | Semiconductor memory system having a snapshot function |
US20090180248A1 (en) * | 2008-01-10 | 2009-07-16 | Karsten Roth | Combination Drive |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104425013A (zh) * | 2013-08-30 | 2015-03-18 | 北京兆易创新科技股份有限公司 | 一种闪存单元 |
CN104425012A (zh) * | 2013-08-30 | 2015-03-18 | 北京兆易创新科技股份有限公司 | 一种nand闪存单元 |
CN103729145A (zh) * | 2013-12-19 | 2014-04-16 | 华为技术有限公司 | Io请求的处理方法及装置 |
CN103729145B (zh) * | 2013-12-19 | 2017-06-16 | 华为技术有限公司 | Io请求的处理方法及装置 |
CN110244905A (zh) * | 2018-03-09 | 2019-09-17 | 株式会社日立制作所 | 具有数据量削减功能的计算机系统,和存储控制方法 |
CN110244905B (zh) * | 2018-03-09 | 2022-07-22 | 株式会社日立制作所 | 具有数据量削减功能的计算机系统,和存储控制方法 |
CN109117304A (zh) * | 2018-07-05 | 2019-01-01 | 北京珠穆朗玛移动通信有限公司 | 文件备份方法、系统及装置 |
CN109117304B (zh) * | 2018-07-05 | 2022-02-18 | 北京珠穆朗玛移动通信有限公司 | 文件备份方法、系统及装置 |
CN110874192A (zh) * | 2018-08-30 | 2020-03-10 | 富士通株式会社 | 存储管理设备和存储管理方法 |
CN110874192B (zh) * | 2018-08-30 | 2023-07-28 | 富士通株式会社 | 存储管理设备和存储管理方法 |
CN112639715A (zh) * | 2018-10-03 | 2021-04-09 | 谷歌有限责任公司 | 使用自由存储空间维护块级快照 |
Also Published As
Publication number | Publication date |
---|---|
US20150052297A1 (en) | 2015-02-19 |
EP2633384A1 (en) | 2013-09-04 |
JP5543026B2 (ja) | 2014-07-09 |
US8886869B2 (en) | 2014-11-11 |
CN103270487B (zh) | 2016-06-22 |
JP2013541743A (ja) | 2013-11-14 |
US20120198130A1 (en) | 2012-08-02 |
US9189391B2 (en) | 2015-11-17 |
WO2012104909A1 (en) | 2012-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103270487A (zh) | 存储系统及其数据控制方法 | |
US9626286B2 (en) | Hardware and firmware paths for performing memory read processes | |
CN101501623B (zh) | 感知文件系统的块存储系统、装置和方法 | |
CN100565530C (zh) | 一种快照系统及其使用方法 | |
US8140860B2 (en) | Policy-driven file system with integrated RAID functionality | |
JP6388345B2 (ja) | メモリシステム | |
US20140143481A1 (en) | Management of memory array with magnetic random access memory (mram) | |
KR20150083264A (ko) | 플래시 메모리 장치를 위한 주소변환 시스템 및 그 방법 | |
CN100538657C (zh) | 用于时间敏感复制的装置、系统和方法 | |
US20050246480A1 (en) | System and method capable of sequentially writing data to a flash memory | |
EP2391937A1 (en) | Storage system and storage control method that compress and store data elements | |
CN101169972A (zh) | 管理非易失性存储器的设备和方法 | |
KR20090115917A (ko) | 시퀀스 번호 랩 어라운드 장치, 방법 및 물품 | |
CN104106038A (zh) | 具有带有非易失性半导体存储器的非易失性半导体存储设备的存储系统 | |
CN102096561B (zh) | 分层数据存储处理方法、装置以及存储设备 | |
CN103761053A (zh) | 一种数据处理方法和装置 | |
CN113360082B (zh) | 存储系统及其控制方法 | |
US9442666B2 (en) | Optimized management of operation data in a solid-state memory | |
CN101901189A (zh) | 更新用户数据的方法以及恢复用户数据的方法 | |
KR20170102772A (ko) | 로그 구조 파일 시스템의 메타 데이터 저장 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
US20170017405A1 (en) | Systems and methods for improving flash-oriented file system garbage collection | |
US8898423B1 (en) | High performance caching architecture for data storage systems | |
US20170017406A1 (en) | Systems and methods for improving flash-oriented file system garbage collection | |
KR101247388B1 (ko) | 하이브리드-매핑 ftl에서 trim 명령어를 처리하기 위한 방법 및 장치 | |
KR100533683B1 (ko) | 플래시 메모리의 데이터 관리 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |