CN110362268B - 磨损均衡处理方法和装置 - Google Patents

磨损均衡处理方法和装置 Download PDF

Info

Publication number
CN110362268B
CN110362268B CN201810318060.6A CN201810318060A CN110362268B CN 110362268 B CN110362268 B CN 110362268B CN 201810318060 A CN201810318060 A CN 201810318060A CN 110362268 B CN110362268 B CN 110362268B
Authority
CN
China
Prior art keywords
data
data area
life
area
particle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810318060.6A
Other languages
English (en)
Other versions
CN110362268A (zh
Inventor
王卫新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201810318060.6A priority Critical patent/CN110362268B/zh
Priority to TW108107227A priority patent/TW201944424A/zh
Publication of CN110362268A publication Critical patent/CN110362268A/zh
Application granted granted Critical
Publication of CN110362268B publication Critical patent/CN110362268B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种磨损均衡处理方法和装置。根据第一数据区和第二数据块中各数据块的颗粒寿命,分别计算第一数据区和第二数据区的颗粒寿命;并进而根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,判断第一数据区和第二数据区是否符合需要进行数据交换的条件;若是,则将第一数据区和第二数据区进行数据整体交换。不仅可以保持两个独立数据区之间的数据隔离的特性,同时通过数据整体交换可以对SSD进行磨损均衡处理,从而达到延长SSD的颗粒寿命之目的。

Description

磨损均衡处理方法和装置
技术领域
本发明涉及存储技术领域,尤其涉及一种磨损均衡处理方法和装置。
背景技术
通常,固态硬盘(Solid State Drives,SSD)里面使用的闪存颗粒是有寿命的,如果频繁的使用一部分颗粒,容易使这部分颗粒过早的报废掉,从而影响整个SSD的使用寿命。为了延长SSD的使用寿命,有必要对SSD里面使用的闪存颗粒进行磨损均衡处理,使得不同闪存颗粒尽量使用差不多从而延长使用的寿命。
随着开放式通道的固态硬盘(open channel SSD)的持续发展,不同业务跟自身特点对更好的使用SSD有着新的提升。例如,对延时要求高的业务,往往会采用数据物理上的间隔,避免擦、写对读延迟的影响,这个需求可以通过对不同业务数据物理分隔来得到显著的改进。
然而,数据物理上的间隔与传统的SSD磨损均衡机制之间存在新的问题,因为传统的SSD磨损均衡机制是当不同的数据块之间存在较大的颗粒寿命差距,是需要将不同数据块之间进行交换,那样就失去了数据隔离的特性。但是,放任颗粒寿命之间的较大差距而不予交换的话,将会影响整个SSD的寿命。
因此,有必要对传统的SSD磨损均衡机制进行改进,保证在不同业务数据物理分隔的基础上,对open channel SSD中的闪存颗粒进行磨损均衡处理从而延长open channelSSD的使用寿命。
发明内容
为了解决上述问题,本发明提供一种磨损均衡处理方法和装置,可以保证在不同业务数据物理分隔的基础上,对open channel SSD中的闪存颗粒进行磨损均衡处理从而延长open channel SSD的使用寿命。
本发明实施例提供一种磨损均衡处理方法,包括:
根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;
根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
将所述第一数据区和第二数据区进行数据整体交换;
所述第一数据区与所述第二数据区是不同特性的数据区。
可选地,根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件,包括:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,和/或所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
可选地,将所述第一数据区和第二数据区进行数据整体交换包括:
将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
可选地,所述的方法还包括:
根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
将所述第一数据块和第二数据块在所述第一数据区内部进行数据交换;
所述第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
可选地,根据第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件,包括:
根据所述第一数据区中各数据块的颗粒寿命,若所述第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
本申请还提供一种磨损均衡处理装置,包括:
计算模块,用于根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;
确定模块,用于根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
交换模块,用于将所述第一数据区和第二数据区进行数据整体交换;
所述第一数据区与所述第二数据区是不同特性的数据区。
可选地,所述确定模块具体用于:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,和/或所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
可选地,所述交换模块具体用于:
将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
可选地,所述确定模块,还用于根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
所述交换模块,还用于将所述第一数据块和第二数据块在所述第一数据区内部进行数据交换;
所述第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
可选地,所述确定模块具体还用于:
根据所述第一数据区中各数据块的颗粒寿命,若所述第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
本发明实施例可以根据第一数据区和第二数据区中各数据块的颗粒寿命,分别计算第一数据区和第二数据区的颗粒寿命;并进而根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,判断第一数据区和第二数据区是否符合需要进行数据交换的条件;若是,则将第一数据区和第二数据区进行数据整体交换。不仅可以保持两个独立数据区之间的数据隔离状态,同时通过数据整体交换可以对open channel SSD进行磨损均衡处理,从而达到延长open channel SSD的颗粒寿命之目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为传统的SSD数据混合排列示意图;
图2-1为演变后的一种open channel SSD数据排列示意图;
图2-2为演变后的又一种open channel SSD数据排列示意图;
图3为基于open channel SSD数据排列的传统SSD磨损均衡处理示意图;
图4为本发明一实施例提供的磨损均衡处理方法的流程示意图;
图5为图4所示实施例的一种数据交换示意图;
图6为本发明另一实施例提供的磨损均衡处理方法的流程示意图;
图7为图6所示实施例的一种数据交换示意图;
图8为本发明实施例应用的一种多维度的磨损均衡机制示意图;
图9为本发明一实施例提供的磨损均衡处理装置的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
图1为传统的SSD数据混合排列示意图,在图1所示的数据混合排列情况下存在如下问题,例如,读(read)命令的平均延迟(latency)通常在50us左右。一个擦除(erase)命令平均延迟经常在5ms左右,如果erase,read发到同一个晶片(die)上,read命令需要的时间有点长。
为了解决上述问题,对延时要求高的业务,可以采用数据物理上的间隔,来得到显著的改进,例如,将与读(read)命令的平均延迟时间差不多的业务数据放在一个channel(简称CH)上,将与擦除命令的平均延迟时间差不多的业务数据放在另一个channel上,从而避免擦除、写对读延迟的影响。
图2-1为演变后的一种open channel SSD数据排列示意图,如图2-1所示,为完全独占一条channel的数据排列方法,这种独享情况下会有更小的读延迟(read latency)。例如,CH0和CH1上的业务数据是与CH2和CH3上的业务数据是根据业务需求独立放置的,也就是说,CH0和CH1上的业务数据是与CH2和CH3上的业务数据是采用数据的物理间隔的。
图2-2为演变后的又一种open channel SSD数据排列示意图,如图2-2所示,为共享channel的数据排列方法,这种共享的情况下,read IOPS会更高,其中,IOPS(Input/Output Operations Per Second)为每秒进行读写(I/O)操作的次数,通常,IOPS越高表示硬盘读(写)数据越快,如图2-2所示,上面虚线框内的数据是共享CH0、CH1、CH2和CH3的,下面虚线框内的数据也是共享CH0、CH1、CH2和CH3的,但是上面虚线框内的数据和下面虚线框内的数据是根据业务需求独立放置的,即采用数据的物理间隔的。
图3为基于open channel SSD数据排列的传统SSD磨损均衡处理示意图,如图3所示,例如,在CH1中的数据块和CH2中的数据块之间存在较大的颗粒寿命差距,是需要将这两个数据块进行交换,如交换的话,那样就失去了CH1和CH2中的数据隔离的特性。但是,放任颗粒寿命之间的较大差距而不予交换的话,将会影响整个SSD的寿命。
因为传统的SSD磨损均衡机制是建立在SSD数据混合排列基础上,磨损均衡也只能在各数据块之间进行交换,如果将传统的SSD磨损均衡机制应用在open channel SSD数据排列上,就破坏了数据的隔离性。
为此,本发明实施例建立一种多维度SSD磨损均衡机制,可以数据区(data set)内进行数据交换;也可以在data set之间进行数据交换;也可以在不同存储盘之间进行数据交换;也可以在不同存储节点间进行数据交换。不仅扩展了传统SSD磨损均衡机制,同时又可以保持数据的隔离性。
需要说明的是,本发明采用不同的数据区(data set)将不同业务数据进行物理分隔,其中,位于同一个数据区中的数据块即可以独占一条channel的数据排列方法,也为共享channel的数据排列方法。
图4为本发明一实施例提供的磨损均衡处理方法的流程示意图,如图4所示,本发明实施例是以两个不同特性的数据区的整体数据交换为例进行说明:
101、根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;
通常来说,计算NAND寿命很简单,一般厂家会告诉NAND颗粒PE Cycle(写入数据,擦除数据,这个为一次)。比如颗粒寿命,厂商告诉我们是5000次;那么每次写数据,不用擦完后,这样它就消耗了一次。也就是只能做5000次这样操作。
因此可以在第一数据区和第二数据区中设个计数器,例如执行了写入,擦除操作,就加1,这样就可以计算第一数据区和第二数据区的颗粒寿命。
102、根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
在一种可选的实施方式中,本步骤具体实现是可以包括如下几种条件:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
或者,根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
或者,根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时且所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
103、将所述第一数据区和第二数据区进行数据整体交换;
具体实现时,例如,可以将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
需要说明的是,本发明实施例中所述的第一数据区与所述第二数据区是两个不同特性的数据区,具体地,第一数据区与第二数据区例如是两个数据物理隔离的独立放置的数据区。其中,无论是第一数据区或第二数据区,既可以采用独占一条channel的数据排列方法,也采用共享channel的数据排列方法。
举例来说,图5为图4所示实施例的一种数据交换示意图,如图5所示:
假设CH0和CH1上排列的数据块为第一数据区的数据块(如图5所示的dataset1),CH2和CH3上排列的数据块为第二数据区的数据块(如图5所示的dataset2),本发明可以通过计算dataset1上各数据块的PE而综合计算分析得到dataset1的PE1,通过计算dataset2上各数据块的PE而综合计算分析得到dataset1的PE2。
需要说明的是,上述PE是指program/Erase次数,这是用来衡量颗粒寿命的一种参数,比如,颗粒寿命是PE=5000,每写一次,再擦除数据,这样就消耗一次PE。
假设dataset1的PE1和dataset2的PE2满足下面条件,就可以将dataset1和dataset2的数据进行整体交换:
PE1+PE2>=第一阈值;|PE1-PE2|>=第二阈值;
假设本发明实施例设置的第一阈值的PE次数为5000,第二阈值的PE次数为1000;当data set 1的PE1=3000,data set 2的PE2=2000时候,说明data set 1消耗PE次数的更快一些。
PE1+PE2=3000+2000>=5000,说明data set 1的PE1和data set 2的PE2之和达到第一阈值;
PE1-PE2=3000-2000>=1000,说明data set 1的PE1和data set 2的PE2之差达到第二阈值;
此时可以确定对两个set(data set 1和data set 2)的整体数据进行交换。如图5所示,交换完成之后,data set 1上的所有数据块在PE=2000的块上,这样,即使data set1消耗PE次数快一些,交换之后,data set 1消耗PE次数和data set 2消耗PE次数也差不多达到平衡状态;不仅可以保持data set 1和data set 2的数据隔离状态,同时通过数据交换可以对open channel SSD进行磨损均衡处理,延长open channel SSD的颗粒寿命。
因此,本发明实施例可以根据第一数据区和第二数据区中各数据块的颗粒寿命,分别计算第一数据区和第二数据区的颗粒寿命;并进而根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,判断第一数据区和第二数据区是否符合需要进行数据交换的条件;若是,则将第一数据区和第二数据区进行数据整体交换。不仅可以保持两个独立数据区之间的数据隔离状态,同时通过数据整体交换可以对open channel SSD进行磨损均衡处理,从而达到延长open channel SSD的颗粒寿命之目的。
图6为本发明另一实施例提供的磨损均衡处理方法的流程示意图,如图6所示,本发明实施例是以同一个数据区(如第一数据区)中的数据块交换为例进行说明:
201、根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
例如在第一数据区中设置有计数器,例如执行了写入,擦除操作,就加1,这样就可以计算得到第一数据区的颗粒寿命。
可选地,本发明实施例可以设置数据交换的条件为:
第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于等于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
其中,第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
举例来说,获取第一数据区中各数据块的PE(消耗次数),当最大PE值减去最小PE值之差值大于等于第三阈值时,说明最大PE值对应的数据块和最小PE值对应的数据块之间需要进行数据交换,从而达到数据块之间的颗粒寿命磨损均衡处理的目的。
202、将第一数据块和第二数据块在第一数据区内部进行数据交换;
也就是说,将第一数据区块上的数据搬迁到第二数据块上,将第二数据块上的数据搬迁到第一数据块上。
图7为图6所示实施例的一种数据交换示意图,如图7所示,假设CH0和CH1上排列的数据块为第一数据区的数据块,CH2和CH3上排列的数据块为第二数据区的数据块。当第一数据区中存在最大PE值减去最小PE值之差值大于等于第三阈值时,则满足第一数据区内的数据块交换条件,此时,只需要在第一数据区内进行数据块的交换;同理,当第二数据区中存在最大PE值减去最小PE值之差值大于等于第三阈值时,则满足第二数据区内的数据块交换条件,此时,只需要在第二数据区内进行数据块的交换即可。
本发明实施例所扩展的SSD磨损均衡机制不仅可以在数据区内进行数据块的交换,同时也可以在数据区之间进行整体数据交换,在达到SSD磨损均衡处理的目的同时,也可以保持SSD的数据隔离的特性。
需要说明的是,应用本发明实施例所述的磨损均衡处理方法可以实现多维度的磨损均衡处理,图8为本发明实施例应用的一种多维度的磨损均衡机制示意图,如图8所示,不仅可以在数据区内部通过数据块交换进行数据区内部的磨损均衡处理,还可以扩展到数据区之间通过整体数据的交换进行数据区间的磨损均衡处理;同时,以数据区(data set)为单位,还可以扩展到不同存储盘(同一个存储节点)之间的整体数据交换进行磨损均衡处理,以及不同存储节点之间的整体数据交换进行磨损均衡处理。
图9为本发明一实施例提供的磨损均衡处理装置的流程示意图,如图9所示,包括:
计算模块91,用于根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;
确定模块92,用于根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
交换模块93,用于将所述第一数据区和第二数据区进行数据整体交换;
所述第一数据区与所述第二数据区是不同特性的数据区。
可选地,所述确定模块92具体用于:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,和/或所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
可选地,所述交换模块93具体用于:
将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
可选地,所述确定模块92,还用于根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
所述交换模块93,还用于将所述第一数据块和第二数据块在所述第一数据区内部进行数据交换;
所述第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
可选地,所述确定模块92具体还用于:
根据所述第一数据区中各数据块的颗粒寿命,若所述第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
本实施例所示磨损均衡处理装置可以执行上述所示方法实施例,其实现原理和技术效果不再赘述。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被计算机执行时能够实现上述方法实施例中与磨损均衡处理装置相关的步骤或操作,在此不再赘述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种磨损均衡处理方法,其特征在于,包括:
根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;所述第一数据区和所述第二数据区分别为数据物理隔离的独立放置的数据区;
根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
将所述第一数据区和第二数据区进行数据整体交换;
所述第一数据区与所述第二数据区是不同特性的数据区。
2.根据权利要求1所述的方法,其特征在于,根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件,包括:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,和/或所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
3.根据权利要求2所述的方法,其特征在于,将所述第一数据区和第二数据区进行数据整体交换包括:
将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
4.根据权利要求1所述的方法,其特征在于,还包括:
根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
将所述第一数据块和第二数据块在所述第一数据区内部进行数据交换;
所述第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
5.根据权利要求4所述的方法,其特征在于,根据第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件,包括:
根据所述第一数据区中各数据块的颗粒寿命,若所述第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
6.一种磨损均衡处理装置,其特征在于,包括:
计算模块,用于根据第一数据区和第二数据区中数据块的颗粒寿命,分别计算所述第一数据区和所述第二数据区的颗粒寿命;所述第一数据区和所述第二数据区分别为数据物理隔离的独立放置的数据区;
确定模块,用于根据所述第一数据区的颗粒寿命与所述第二数据区的颗粒寿命,确定所述第一数据区和第二数据区符合需要进行数据交换的条件;
交换模块,用于将所述第一数据区和第二数据区进行数据整体交换;
所述第一数据区与所述第二数据区是不同特性的数据区。
7.根据权利要求6所述的装置,其特征在于,所述确定模块具体用于:
根据第一数据区的颗粒寿命与第二数据区的颗粒寿命,若所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之和大于等于第一阈值时,和/或所述第一数据区的颗粒寿命与第二数据区的颗粒寿命之差大于等于第二阈值时,则确定所述第一数据区和第二数据区符合需要进行数据交换的条件。
8.根据权利要求7所述的装置,其特征在于,所述交换模块具体用于:
将所述第一数据区中的所有数据块搬迁到所述第二数据区所在的存储空间;将所述第二数据区中的所有数据块搬迁到所述第一数据区所在的存储空间。
9.根据权利要求6所述的装置,其特征在于:
所述确定模块,还用于根据所述第一数据区中各数据块的颗粒寿命,确定第一数据块和第二数据块符合需要进行数据交换的条件;
所述交换模块,还用于将所述第一数据块和第二数据块在所述第一数据区内部进行数据交换;
所述第一数据块和第二数据块是位于所述第一数据区中的两个不同的数据块。
10.根据权利要求9所述的装置,其特征在于,所述确定模块具体还用于:
根据所述第一数据区中各数据块的颗粒寿命,若所述第一数据块的颗粒寿命和第二数据块的颗粒寿命之差大于第三阈值时,则确定所述第一数据块和第二数据块符合需要进行数据交换的条件。
CN201810318060.6A 2018-04-10 2018-04-10 磨损均衡处理方法和装置 Active CN110362268B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810318060.6A CN110362268B (zh) 2018-04-10 2018-04-10 磨损均衡处理方法和装置
TW108107227A TW201944424A (zh) 2018-04-10 2019-03-05 磨損均衡處理方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810318060.6A CN110362268B (zh) 2018-04-10 2018-04-10 磨损均衡处理方法和装置

Publications (2)

Publication Number Publication Date
CN110362268A CN110362268A (zh) 2019-10-22
CN110362268B true CN110362268B (zh) 2023-10-03

Family

ID=68214268

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810318060.6A Active CN110362268B (zh) 2018-04-10 2018-04-10 磨损均衡处理方法和装置

Country Status (2)

Country Link
CN (1) CN110362268B (zh)
TW (1) TW201944424A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111078158A (zh) * 2019-12-29 2020-04-28 北京浪潮数据技术有限公司 一种数据迁移方法及相关装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382918A (zh) * 2008-07-26 2009-03-11 深圳市硅格半导体有限公司 一种基于数据交换区的NAND Flash闪存优化管理方法
CN101419842A (zh) * 2008-11-07 2009-04-29 成都市华为赛门铁克科技有限公司 硬盘的损耗均衡方法、装置及系统
CN105068938A (zh) * 2015-08-12 2015-11-18 华中科技大学 一种基于多层单元的非易失内存的磨损均衡方法
CN106610901A (zh) * 2015-10-21 2017-05-03 深圳市江波龙电子有限公司 存储器的磨损次数平衡方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382918A (zh) * 2008-07-26 2009-03-11 深圳市硅格半导体有限公司 一种基于数据交换区的NAND Flash闪存优化管理方法
CN101419842A (zh) * 2008-11-07 2009-04-29 成都市华为赛门铁克科技有限公司 硬盘的损耗均衡方法、装置及系统
CN105068938A (zh) * 2015-08-12 2015-11-18 华中科技大学 一种基于多层单元的非易失内存的磨损均衡方法
CN106610901A (zh) * 2015-10-21 2017-05-03 深圳市江波龙电子有限公司 存储器的磨损次数平衡方法及装置

Also Published As

Publication number Publication date
CN110362268A (zh) 2019-10-22
TW201944424A (zh) 2019-11-16

Similar Documents

Publication Publication Date Title
US10409502B2 (en) Method and apparatus for writing metadata into cache
TWI446345B (zh) 用來進行區塊管理之方法以及記憶裝置及控制器
US9652382B1 (en) Look-ahead garbage collection for NAND flash based storage
TWI425357B (zh) 用來進行區塊管理之方法以及記憶裝置及控制器
US20160098350A1 (en) Sizing a cache while taking into account a total bytes written requirement
US8140600B2 (en) Memory power control method and memory power control program
KR102553539B1 (ko) 고체 상태 드라이브에서 가비지 수집 리소스 할당을 적응시키는 메커니즘
US20160092121A1 (en) Unmap storage space
US10409525B2 (en) Memory management method, memory control circuit unit and memory storage device
KR20180031289A (ko) 스토리지 장치 및 상기 스토리지 장치의 동작 방법
US9886352B2 (en) De-duplicated virtual machine image transfer
CN108959526B (zh) 日志管理方法以及日志管理装置
US10031673B2 (en) Techniques for selecting amounts of over-provisioning
CN102880556A (zh) 一种实现Nand Flash磨损均衡的方法及其系统
CN101419573A (zh) 一种存储管理的方法、系统和存储设备
US10324833B2 (en) Memory controller, data storage device, and memory control method
JP2018101301A5 (zh)
US20230393877A1 (en) Apparatus with dynamic arbitration mechanism and methods for operating the same
CN102169727A (zh) 基于随机游走的固态硬盘磨损均衡方法
CN103605478B (zh) 存储地址标示、配置方法和数据存取方法及系统
CN104714891A (zh) 一种闪存数据管理方法及装置
US20120017052A1 (en) Information Handling System Universal Memory Wear Leveling System and Method
CN110362268B (zh) 磨损均衡处理方法和装置
EP4209887A1 (en) Method for memory management, and apparatus for same
JP2019028572A (ja) 情報処理装置、情報処理システム、情報処理方法及び情報処理プログラム

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
GR01 Patent grant
GR01 Patent grant