CN104731515B - 控制存储设备机群磨损均衡的方法及设备 - Google Patents

控制存储设备机群磨损均衡的方法及设备 Download PDF

Info

Publication number
CN104731515B
CN104731515B CN201310698514.4A CN201310698514A CN104731515B CN 104731515 B CN104731515 B CN 104731515B CN 201310698514 A CN201310698514 A CN 201310698514A CN 104731515 B CN104731515 B CN 104731515B
Authority
CN
China
Prior art keywords
memory node
degree
planes
value
storage device
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
CN201310698514.4A
Other languages
English (en)
Other versions
CN104731515A (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.)
Tsinghua University
Huawei Technologies Co Ltd
Original Assignee
Tsinghua University
Huawei Technologies Co 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 Tsinghua University, Huawei Technologies Co Ltd filed Critical Tsinghua University
Priority to CN201310698514.4A priority Critical patent/CN104731515B/zh
Publication of CN104731515A publication Critical patent/CN104731515A/zh
Application granted granted Critical
Publication of CN104731515B publication Critical patent/CN104731515B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种控制存储设备机群磨损均衡的方法及设备,该方法包括:确定存储设备机群中每个存储节点的磨损程度值;根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值;若磨损离散程度值大于预设阈值,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。基于上述技术方案,在存储设备机群的磨损离散程度超过阈值时,将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。

Description

控制存储设备机群磨损均衡的方法及设备
技术领域
本发明实施例涉及通信领域,并且更具体地,涉及一种控制存储设备机群磨损均衡的方法及设备。
背景技术
闪存(Flash)存储器具有非易失性、固态性、体积小、重量轻、抗震动、高性能和低能耗等特点。随着嵌入式技术发展,Flash应用越来越广泛。由于Flash存储器具有擦除次数有限、先擦后写的特点,导致其使用寿命有限。因此,在不影响正常使用的情况下,如何延长Flash存储器的使用寿命,成为目前的一个研究热点。
在对Flash存储器进行擦写管理时,会建立一张逻辑扇区映射到物理扇区的文件分区表。将文件分区表写入固定的物理扇区,以便快速读写数据。由于每次擦写数据都会修改文件区表所在的扇区,导致文件分区表所在的扇区不断的被擦写,会在较短的时间内造成该物理扇区损坏,甚至导致全部存储数据丢失。此外,对普通文件进行擦写时按照文件分区表来分配,未对扇区的使用频率做评估,导致文件分区表中靠前的物理扇区使用频率将大大超过靠后的部分。因此,导致Flash存储器磨损不均衡,降低了Flash存储器的使用寿命。
目前的磨损均衡方法中,将同一逻辑地址映射到不同的物理地址,从而保证写入或擦除操作遍历整个Flash扇区。该算法核心思想是将新数据写到擦除次数最少的空闲Flash扇区中。具体地,将Flash存储器的物理单元块的操作状态标记为四种:空闲块,该块已被擦除,块中所有页面为空闲状态,可写入数据;干净块,该块已进行写入数据操作,并且写入数据完全有效;脏块,对该块进行写入数据操作失败,可对其进行擦除,使其成为空闲块;坏块,该块只能读取数据,无法再次写入数据,应当丢弃。
对应以上四种操作状态标记,分别设置四个状态列,各列均采用链表方式对各物理块进行管理。在各状态列中,按照擦除次数升次方式对各物理单元块进行连接。当有空闲单元块进入空闲块列时,根据其擦除次数将该块插入到链表中相应位置。出列时,按照链表顺序,从链表头取出空闲单元块。采用这种管理方式,能够保证每次写入的空闲单元块都是使用频率最小的单元块,从而实现动态磨损均衡管理。
此磨损均衡方法可以实现独立Flash设备的磨损均衡,但在多个存储节点的Flash机群的应用场景下,无法确保整个机群的磨损均衡。仍会出现部分存储节点磨损次数过多而其它存储节点磨损次数较少的情况,从而降低了整个机群的使用寿命。
发明内容
本发明实施例提供了一种控制存储设备机群磨损均衡的方法及设备,能够提高整个存储设备机群的使用寿命。
第一方面,提供了一种控制存储设备机群磨损均衡的方法,包括:确定存储设备机群中每个存储节点的磨损程度值;根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值;若磨损离散程度值大于预设阈值,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
结合第一方面,在第一方面的第一种实现方式中,确定存储设备机群中每个存储节点的磨损程度值,包括:根据存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,根据以下公式确定每个存储节点的擦除次数E,
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
结合第一方面及其上述实现方式,在第一方面的第三种实现方式中,根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值,包括:
确定存储设备机群中所有存储节点的磨损程度值的均方差;根据均方差,确定存储设备机群的磨损离散程度值。
结合第一方面及其上述实现方式,在第一方面的第四种实现方式中,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,包括:根据第一存储节点的磨损程度值和第二存储节点的磨损程度值,确定迁移量;将第一存储节点存储的与迁移量对应数量的对象迁移到第二存储节点中。
结合第一方面及其上述实现方式,在第一方面的第五种实现方式中,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,包括:根据第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;优先将第一存储节点存储的热度值最大的一个或多个对象迁移到第二存储节点中。
结合第一方面及其上述实现方式,在第一方面的第六种实现方式中,根据以下公式确定每个对象的热度值R,
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
第二方面,提供了一种控制存储设备机群磨损均衡的设备,包括:第一确定单元,用于确定存储设备机群中每个存储节点的磨损程度值;第二确定单元,用于根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值;迁移单元,若磨损离散程度值大于预设阈值,用于将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
结合第二方面,在第二方面的第一种实现方式中,第一确定单元,具体用于根据存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
结合第二方面及其上述实现方式,在第二方面的第二种实现方式中,第一确定单元,具体用于根据以下公式确定每个存储节点的擦除次数E,
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
结合第二方面及其上述实现方式,在第二方面的第三种实现方式中,第二确定单元,具体用于确定存储设备机群中所有存储节点的磨损程度值的均方差;根据均方差,确定存储设备机群的磨损离散程度值。
结合第二方面及其上述实现方式,在第二方面的第四种实现方式中,迁移单元,具体用于根据第一存储节点的磨损程度值和第二存储节点的磨损程度值,确定迁移量;将第一存储节点存储的与迁移量对应数量的对象迁移到第二存储节点中。
结合第二方面及其上述实现方式,在第二方面的第五种实现方式中,迁移单元,具体用于根据第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;优先将第一存储节点存储的热度值最大的一个或多个对象迁移到第二存储节点中。
结合第二方面及其上述实现方式,在第二方面的第六种实现方式中,迁移单元,具体用于根据以下公式确定每个对象的热度值R,
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
基于上述技术方案,在本发明实施例中,在存储设备机群的磨损离散程度超过阈值时,将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例控制存储设备机群磨损均衡的方法的示意性流程图。
图2是本发明实施例另一实施例控制存储设备机群磨损均衡的方法的示意性流程图。
图3是本发明实施例中存储设备机群访问对象的方法的示意性流程图。
图4是本发明一个实施例控制存储设备机群磨损均衡的设备的示意性框图。
图5是本发明另一实施例控制存储设备机群磨损均衡的设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明一个实施例控制存储设备机群磨损均衡的方法的示意性流程图。图1的方法100可以由存储设备机群中的控制设备实现,例如,SSD(Solid State Disk,固态硬盘)服务器或者MDS(Metadata Server,元数据服务器)。
101,确定存储设备机群中每个存储节点的磨损程度值。
102,根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值。
103,若磨损离散程度值大于预设阈值,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
基于上述技术方案,在本发明实施例中,在存储设备机群的磨损离散程度超过阈值时,将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。
另外,本发明实施例适用于基于对象存储的存储设备机群中,对用户透明,并不影响用户使用的上层应用。不满足数据迁移的条件时,不对存储设备机群产生任何影响;满足数据迁移条件时,在短暂的数据迁移期间暂停对迁移数据的访问。
应理解,磨损程度值表示一个存储节点的磨损程度,磨损程度越大,该存储节点的剩余使用寿命越短;反之,磨损程度越小,该存储节点的剩余使用寿命越长。磨损离散程度值衡量了该存储设备机群中各个存储节点之间的磨损程度差异,也就是说,各个存储节点磨损程度差异越大,磨损离散程度值越大;反之,各个存储节点磨损程度差异越小,磨损离散程度值越小。
可选地,作为一个实施例,在步骤101中,在确定存储设备机群中每个存储节点的磨损程度值时,先根据存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;再基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
例如,在不能获取存储设备底层的实际擦除及读写次数时,从控制层面估计每个存储节点的擦除次数。然后,基于该擦除次数估计该存储节点的磨损程度。应理解,擦除次数越大,该存储节点的磨损程度值越大;反之,擦除次数越小,该存储节点的磨损程度值越小。
可选地,作为另一实施例,根据公式(1)确定每个存储节点的擦除次数E,
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
应理解,(1-ur)表示每次垃圾回收产生的平均空闲页面比率。相应地,Np·(1-ur)表示一次垃圾回收产生的平均空闲页面数。如果该存储节点在预定义的一个时间段内总共写入了W页,那么即可得出该存储节点在这段时间内擦除E次。还应理解,公式(1)的等同变型公式都落在本发明实施例的保护范围内。
具体地,可以由单独的检测模块获取写入页数W。根据本发明实施例的方法估计存储节点擦除次数,参量个数少,算法简单且复杂度低,从而减小了开销。
可选地,作为另一实施例,在步骤102中,在根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值时,先确定存储设备机群中所有存储节点的磨损程度值的均方差,再根据均方差,确定存储设备机群的磨损离散程度值。
应理解,均方差越大,磨损离散程度值越大;反之,均方差越小,磨损离散程度值越小。还应理解,根据与均方差类似的其它能够表征存储设备机群中各个存储节点磨损程度差异大小的统计特征值确定磨损离散程度值得方法,也应落在本发明实施例的保护范围内。
可选地,作为另一实施例,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中时,先根据第一存储节点的磨损程度值和第二存储节点的磨损程度值,确定迁移量;再将第一存储节点存储的与迁移量对应数量的对象迁移到第二存储节点中。
例如,在选择将第一存储节点中的部分对象迁移到第二存储节点中时,先确定迁移量,以实现更好地磨损均衡效率。具体地,假设第一存储节点的写入页数为W1,第二存储节点的写入页数为W2,第一存储节点包含的页数为Np1,第二存储节点包含的页数为Np2,第一存储节点一次垃圾回收产生的平均有效页面比率为ur1,第二存储节点一次垃圾回收产生的平均有效页面比率为ur2。迁移量ΔW可以根据公式(2)确定:
可选地,根据公式(2)迭代多次,当计算得到一个迁移量后,将该值代入迁移节点(第一存储节点和第二存储节点),重新从存储设备机群中选择迁移节点,并确定迁移量。
可选地,作为另一实施例,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中时,先根据第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;再优先将第一存储节点存储的热度值最大的一个或多个对象迁移到第二存储节点中。
应理解,对象的热度值衡量了该对象未来会对存储节点造成的磨损量,热度值越大,表明对该对象未来会对存储节点造成的磨损越大;反之,热度值越小,表明该对象未来会对存储节点造成的磨损越小。一个对象的写入次数越多,其热度值越大;反之,一个对象的写入次数越少,其热度值越低。根据本发明实施例的方法,在进行数据迁移时,优先迁移热度值较大的对象,可以提高迁移效率,同时进一步提升了存储设备机群的使用寿命。
可选地,作为另一实施例,可以根据公式(3)确定每个对象的热度值R,
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
具体地,预测该对象在不同时间区间内的写入次数,按照公式(3)估计该对象的热度值。离当前时刻最近的时间区间内的写入次数对热度值的影响最大,离当前时刻越远,相应的时间区间内的写入次数对热度值的影响越小。这样,可以进一步提高迁移效率,实现更好地存数设备机群磨损均衡,提高存储设备机群的使用寿命。
可选地,存储设备机群中的每个存储节点在写入数据时,将数据写到擦除次数最少的空闲块中。这样,可以进一步提高存储设备机群的使用寿命。
下面将结合具体的例子详细描述本发明实施例。应注意,这些例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。
图2是本发明实施例另一实施例控制存储设备机群磨损均衡的方法的示意性流程图。
201,确定存储设备机群中每个存储节点的磨损程度值。
202,确定存储设备机群的磨损程度离散值。
203,判断磨损程度离散值是否大于预设的阈值。若大于预设阈值,进入步骤204;否则,进入步骤201。
204,根据各个存储节点的磨损程度值,从存储设备机群中选择迁移节点,以将磨损程度较大的存储节点存储的部分对象迁移到磨损程度较小的存储节点中。
205,确定迁移量及迁移对象。确定迁移量时可以使用前文所述的方法,为避免重复,在此不再赘述。选取迁移对象时,可以根据公式(4)选取:
其中,W1表示迁出储存节点的写入页数,R1,R2,……,Rj表示迁出存储节点当前存储的每个对象的热度值,ΔW表示迁移量,R表示迁移的热度值总量。具体地,可以在确定R值后,从迁出存储节点中选择相适应的一个或多个对象作为迁移对象。
206,将选取的迁移对象从迁出存储节点迁移到目的存储节点,并更新逻辑扇区映射到物理扇区的映射表。可选地,可以优先将映射表中已迁移对象进行迁移。这样可以限制映射表开销的不断增长,减小了内存开销。
在这种情况下,存储设备机群中的各个存储节点在进行数据读写时,需要根据更新后的映射表执行。如图3所示,图3是本发明实施例中存储设备机群访问对象的方法的示意性流程图:
301,在访问对象时,计算该对象的初始地址。
302,查询映射表,确定该对象的地址是否变更。若映射表中有该对象的标识,表明该对象的地址没有变更,否则,地址变更。若地址变更,进入步骤304。若地址没有变更,进入步骤303。
303,返回该数据的初始地址,以便读取该数据。
304,确定该数据迁移后的更新地址。
305,返回该数据的更新地址,以便正常读取该数据。
在本发明实施例中,在存储设备机群的磨损离散程度超过阈值时,将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。
图4是本发明一个实施例控制存储设备机群磨损均衡的设备的示意性框图。图4的设备40包括第一确定单元401、第二确定单元402和迁移单元403。
第一确定单元401,用于确定存储设备机群中每个存储节点的磨损程度值;
第二确定单元402,用于根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值;
迁移单元403,若磨损离散程度值大于预设阈值,用于将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
基于上述技术方案,在本发明实施例中,在存储设备机群的磨损离散程度超过阈值时,控制存储设备机群磨损均衡的设备将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。
另外,本发明实施例适用于基于对象存储的存储设备机群中,对用户透明,并不影响用户使用的上层应用。不满足数据迁移的条件时,不对存储设备机群产生任何影响;满足数据迁移条件时,在短暂的数据迁移期间暂停对迁移数据的访问。
应理解,磨损程度值表示一个存储节点的磨损程度,磨损程度越大,该存储节点的剩余使用寿命越短;反之,磨损程度越小,该存储节点的剩余使用寿命越长。磨损离散程度值衡量了该存储设备机群中各个存储节点之间的磨损程度差异,也就是说,各个存储节点磨损程度差异越大,磨损离散程度值越大;反之,各个存储节点磨损程度差异越小,磨损离散程度值越小。
可选地,作为一个实施例,第一确定单元401,具体用于根据存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
例如,在不能获取存储设备底层的实际擦除及读写次数时,从控制层面估计每个存储节点的擦除次数。然后,基于该擦除次数估计该存储节点的磨损程度。应理解,擦除次数越大,该存储节点的磨损程度值越大;反之,擦除次数越小,该存储节点的磨损程度值越小。
可选地,作为另一实施例,第一确定单元401,具体用于根据以下公式确定每个存储节点的擦除次数E,
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
应理解,(1-ur)表示每次垃圾回收产生的平均空闲页面比率。相应地,Np·(1-ur)表示一次垃圾回收产生的平均空闲页面数。如果该存储节点在预定义的一个时间段内总共写入了W页,那么即可得出该存储节点在这段时间内擦除E次。还应理解,公式(5)的等同变型公式都落在本发明实施例的保护范围内。
根据本发明实施例的方法估计存储节点擦除次数,参量个数少,算法简单且复杂度低,从而减小了开销。
可选地,作为另一实施例,第二确定单元402,具体用于确定存储设备机群中所有存储节点的磨损程度值的均方差;根据均方差,确定存储设备机群的磨损离散程度值。
应理解,均方差越大,磨损离散程度值越大;反之,均方差越小,磨损离散程度值越小。还应理解,根据与均方差类似的其它能够表征存储设备机群中各个存储节点磨损程度差异大小的统计特征值确定磨损离散程度值得方法,也应落在本发明实施例的保护范围内。
可选地,作为另一实施例,迁移单元403,具体用于根据第一存储节点的磨损程度值和第二存储节点的磨损程度值,确定迁移量;再将第一存储节点存储的与迁移量对应数量的对象迁移到第二存储节点中。
例如,在选择将第一存储节点中的部分对象迁移到第二存储节点中时,先确定迁移量,以实现更好地磨损均衡效率。具体地,假设第一存储节点的写入页数为W1,第二存储节点的写入页数为W2,第一存储节点包含的页数为Np1,第二存储节点包含的页数为Np2,第一存储节点一次垃圾回收产生的平均有效页面比率为ur1,第二存储节点一次垃圾回收产生的平均有效页面比率为ur2。迁移量ΔW可以根据公式(2)确定:
可选地,根据公式(6)迭代多次,当计算得到一个迁移量后,将该值代入迁移节点(第一存储节点和第二存储节点),重新从存储设备机群中选择迁移节点,并确定迁移量。
可选地,作为另一实施例,迁移单元403,具体用于根据第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;优先将第一存储节点存储的热度值最大的一个或多个对象迁移到第二存储节点中。
应理解,对象的热度值衡量了该对象未来会对存储节点造成的磨损量,热度值越大,表明对该对象未来会对存储节点造成的磨损越大;反之,热度值越小,表明该对象未来会对存储节点造成的磨损越小。一个对象的写入次数越多,其热度值越大;反之,一个对象的写入次数越少,其热度值越低。根据本发明实施例的方法,在进行数据迁移时,优先迁移热度值较大的对象,可以提高迁移效率,同时进一步提升了存储设备机群的使用寿命。
可选地,作为另一实施例,迁移单元403,具体用于根据公式(7)确定每个对象的热度值R,
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
具体地,预测该对象在不同时间区间内的写入次数,按照公式(7)估计该对象的热度值。离当前时刻最近的时间区间内的写入次数对热度值的影响最大,离当前时刻越远,相应的时间区间内的写入次数对热度值的影响越小。这样,可以进一步提高迁移效率,实现更好地存数设备机群磨损均衡,提高存储设备机群的使用寿命。
图5是本发明另一实施例控制存储设备机群磨损均衡的设备的示意性框图。
图5的控制存储设备机群磨损均衡的设备50可用于实现上述方法实施例中各步骤及方法。图5的实施例中,控制存储设备机群磨损均衡的设备50包括处理器504、存储器505及接口501。处理器504控制设备50的操作,并且可用于处理信号。处理器504还可以称为CPU(Central Processing Unit,中央处理单元)。存储器505可以包括只读存储器和随机存取存储器,并向处理器504提供指令和数据。存储器505的一部分还可以包括非易失行随机存取存储器(NVRAM)。控制存储设备机群磨损均衡的设备50的各个组件通过总线系统509耦合在一起,其中总线系统509除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都标为总线系统509。
具体地,存储器505可存储使得处理器504执行以下操作的指令:
确定存储设备机群中每个存储节点的磨损程度值;根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值;若磨损离散程度值大于预设阈值,将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
基于上述技术方案,在本发明实施例中,在存储设备机群的磨损离散程度超过阈值时,将其中磨损程度较大的存储节点存储的部分对象迁移到其中磨损程度较小的存储节点中,以实现存储设备机群磨损均衡。这样,提高了整个存储设备机群的使用寿命。
另外,本发明实施例适用于基于对象存储的存储设备机群中,对用户透明,并不影响用户使用的上层应用。不满足数据迁移的条件时,不对存储设备机群产生任何影响;满足数据迁移条件时,在短暂的数据迁移期间暂停对迁移数据的访问。
应理解,磨损程度值表示一个存储节点的磨损程度,磨损程度越大,该存储节点的剩余使用寿命越短;反之,磨损程度越小,该存储节点的剩余使用寿命越长。磨损离散程度值衡量了该存储设备机群中各个存储节点之间的磨损程度差异,也就是说,各个存储节点磨损程度差异越大,磨损离散程度值越大;反之,各个存储节点磨损程度差异越小,磨损离散程度值越小。
可选地,作为一个实施例,存储器505还可存储使得处理器504执行以下操作的指令:
在确定存储设备机群中每个存储节点的磨损程度值时,先根据存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;再基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
可选地,作为另一实施例,存储器505还可存储使得处理器504执行以下操作的指令:
根据公式(8)确定每个存储节点的擦除次数E,
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
可选地,作为另一实施例,存储器505还可存储使得处理器504执行以下操作的指令:
在根据每个存储节点的磨损程度值,确定存储设备机群的磨损离散程度值时,先确定存储设备机群中所有存储节点的磨损程度值的均方差;再根据均方差,确定存储设备机群的磨损离散程度值。
可选地,作为另一实施例,存储器505还可存储使得处理器504执行以下操作的指令:
将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中时,先根据第一存储节点的磨损程度值和第二存储节点的磨损程度值,确定迁移量;再将第一存储节点存储的与迁移量对应数量的对象迁移到第二存储节点中。
可选地,作为另一实施例,存储器505还可存储使得处理器504执行以下操作的指令:
将存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中时,先根据第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;再优先将第一存储节点存储的热度值最大的一个或多个对象迁移到第二存储节点中。
可选地,作为另一实施例,存储器505还可存储使得处理器504执行以下操作的指令:
根据以下公式确定每个对象的热度值R,
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (14)

1.一种控制存储设备机群磨损均衡的方法,其特征在于,包括:
确定所述存储设备机群中每个存储节点的磨损程度值;
根据所述每个存储节点的磨损程度值,确定所述存储设备机群的磨损离散程度值,其中,所述磨损离散程度值用于表征所述存储设备机群中每个存储节点之间的磨损程度差异;
若所述磨损离散程度值大于预设阈值,将所述存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,所述第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
2.根据权利要求1所述的方法,其特征在于,所述确定所述存储设备机群中每个存储节点的磨损程度值,包括:
根据所述存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;
基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
3.根据权利要求2所述的方法,其特征在于,根据以下公式确定每个存储节点的擦除次数E,
<mrow> <mi>E</mi> <mo>=</mo> <mfrac> <mi>W</mi> <mrow> <msub> <mi>N</mi> <mi>p</mi> </msub> <mo>&amp;CenterDot;</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>u</mi> <mi>r</mi> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> </mrow>
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据所述每个存储节点的磨损程度值,确定所述存储设备机群的磨损离散程度值,包括:
确定所述存储设备机群中所有存储节点的磨损程度值的均方差;
根据所述均方差,确定所述存储设备机群的磨损离散程度值。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述将所述存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,包括:
根据所述第一存储节点的磨损程度值和所述第二存储节点的磨损程度值,确定迁移量;
将所述第一存储节点存储的与所述迁移量对应数量的对象迁移到所述第二存储节点中。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述将所述存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,包括:
根据所述第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;
优先将所述第一存储节点存储的热度值最大的一个或多个对象迁移到所述第二存储节点中。
7.根据权利要求6所述的方法,其特征在于,根据以下公式确定每个对象的热度值R,
<mrow> <mi>R</mi> <mo>=</mo> <msubsup> <mi>&amp;Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <mfrac> <msub> <mi>A</mi> <mi>i</mi> </msub> <msup> <mn>2</mn> <mrow> <mi>m</mi> <mo>-</mo> <mi>i</mi> </mrow> </msup> </mfrac> <mo>,</mo> </mrow>
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
8.一种控制存储设备机群磨损均衡的设备,其特征在于,包括:
第一确定单元,用于确定所述存储设备机群中每个存储节点的磨损程度值;
第二确定单元,用于根据所述每个存储节点的磨损程度值,确定所述存储设备机群的磨损离散程度值,其中,所述磨损离散程度值用于表征所述存储设备机群中每个存储节点之间的磨损程度差异;
迁移单元,若所述磨损离散程度值大于预设阈值,用于将所述存储设备机群中的第一存储节点存储的全部或部分对象迁移到第二存储节点中,其中,所述第一存储节点的磨损程度值大于第二存储节点的磨损程度值。
9.根据权利要求8所述的设备,其特征在于,所述第一确定单元,具体用于根据所述存储设备机群中每个存储节点的写入的页数、包含的页数和一次垃圾回收产生的平均有效页面比率,确定每个存储节点的擦除次数;基于每个存储节点的擦除次数,确定每个存储节点的磨损程度值。
10.根据权利要求9所述的设备,其特征在于,所述第一确定单元,具体用于根据以下公式确定每个存储节点的擦除次数E,
<mrow> <mi>E</mi> <mo>=</mo> <mfrac> <mi>W</mi> <mrow> <msub> <mi>N</mi> <mi>p</mi> </msub> <mo>&amp;CenterDot;</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>u</mi> <mi>r</mi> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>,</mo> </mrow>
其中,W表示写入的页数,Np表示一个闪存块包含的页数,ur表示一次垃圾回收产生的平均有效页面比率。
11.根据权利要求8至10中任一项所述的设备,其特征在于,所述第二确定单元,具体用于确定所述存储设备机群中所有存储节点的磨损程度值的均方差;根据所述均方差,确定所述存储设备机群的磨损离散程度值。
12.根据权利要求8至10中任一项所述的设备,其特征在于,所述迁移单元,具体用于根据所述第一存储节点的磨损程度值和所述第二存储节点的磨损程度值,确定迁移量;将所述第一存储节点存储的与所述迁移量对应数量的对象迁移到所述第二存储节点中。
13.根据权利要求8至10中任一项所述的设备,其特征在于,所述迁移单元,具体用于根据所述第一存储节点存储的每个对象的写入次数,确定每个对象的热度值;优先将所述第一存储节点存储的热度值最大的一个或多个对象迁移到所述第二存储节点中。
14.根据权利要求13所述的设备,其特征在于,所述迁移单元,具体用于根据以下公式确定每个对象的热度值R,
<mrow> <mi>R</mi> <mo>=</mo> <msubsup> <mi>&amp;Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <mfrac> <msub> <mi>A</mi> <mi>i</mi> </msub> <msup> <mn>2</mn> <mrow> <mi>m</mi> <mo>-</mo> <mi>i</mi> </mrow> </msup> </mfrac> <mo>,</mo> </mrow>
其中,Ai为对象在等分的时间区间[ti-1,ti]内的写入次数,m为等分的时间区间的个数。
CN201310698514.4A 2013-12-18 2013-12-18 控制存储设备机群磨损均衡的方法及设备 Active CN104731515B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310698514.4A CN104731515B (zh) 2013-12-18 2013-12-18 控制存储设备机群磨损均衡的方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310698514.4A CN104731515B (zh) 2013-12-18 2013-12-18 控制存储设备机群磨损均衡的方法及设备

Publications (2)

Publication Number Publication Date
CN104731515A CN104731515A (zh) 2015-06-24
CN104731515B true CN104731515B (zh) 2018-02-23

Family

ID=53455452

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310698514.4A Active CN104731515B (zh) 2013-12-18 2013-12-18 控制存储设备机群磨损均衡的方法及设备

Country Status (1)

Country Link
CN (1) CN104731515B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105260320B (zh) * 2015-10-12 2020-06-16 珠海格力电器股份有限公司 用于flash存储器的数据处理方法和装置
CN107025066A (zh) 2016-09-14 2017-08-08 阿里巴巴集团控股有限公司 在基于闪存的存储介质中写入存储数据的方法和装置
TWI668699B (zh) * 2018-10-25 2019-08-11 群聯電子股份有限公司 資料儲存方法、記憶體控制電路單元以及記憶體儲存裝置
CN109375880A (zh) * 2018-11-05 2019-02-22 郑州云海信息技术有限公司 一种数据均衡方法、装置和计算机可读存储介质
CN111124305B (zh) * 2019-12-20 2021-08-31 浪潮电子信息产业股份有限公司 固态硬盘磨损均衡方法、装置及计算机可读存储介质
CN111651126B (zh) * 2020-06-04 2023-05-16 重庆芯讯通无线科技有限公司 存储器的写操作方法、系统、电子设备和介质
CN114880777B (zh) * 2022-05-12 2023-01-06 北京航空航天大学 一种机群均衡使用管理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101652762A (zh) * 2008-04-24 2010-02-17 株式会社东芝 存储器系统
CN102081576A (zh) * 2011-03-01 2011-06-01 华中科技大学 一种闪存的磨损平衡方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100881669B1 (ko) * 2006-12-18 2009-02-06 삼성전자주식회사 비휘발성 데이터 저장장치의 정적 데이터 영역 검출 방법,마모도 평준화 방법 및 데이터 유닛 병합 방법과 그 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101652762A (zh) * 2008-04-24 2010-02-17 株式会社东芝 存储器系统
CN102081576A (zh) * 2011-03-01 2011-06-01 华中科技大学 一种闪存的磨损平衡方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
《OEBS:一种闪存磨损均衡算法》;刘洋等;《小型微型计算机系统》;20091231;第30卷(第12期);第2490-2492页 *
《一种有效的混合式闪存磨损均衡算法》;邢春波等;《小型微型计算机系统》;20090930;第30卷(第9期);第1903-1906页 *
《闪存磨损均衡算法综述》;黄德才,邢春波,吕莲;《浙江工业大学学报》;20090228;第37卷(第1期);第73-78页 *

Also Published As

Publication number Publication date
CN104731515A (zh) 2015-06-24

Similar Documents

Publication Publication Date Title
CN104731515B (zh) 控制存储设备机群磨损均衡的方法及设备
CN103559138B (zh) 固态硬盘及其空间管理方法
CN105493051B (zh) 自适应高速缓冲存储器控制器
CN102622189B (zh) 存储虚拟化的装置、数据存储方法及系统
CN104516471B (zh) 一种管理存储器系统的电源的方法和装置
CN103092766B (zh) 一种用于nand flash的均衡损耗实现方法
CN105487823B (zh) 一种数据迁移的方法及装置
CN105573681B (zh) 一种ssd盘片内部raid组建方法及系统
CN103577336B (zh) 一种存储数据处理方法及装置
CN107346290A (zh) 使用并行化日志列表重放分区逻辑到物理数据地址转换表
CN109164975A (zh) 一种将数据写入固态硬盘的方法以及固态硬盘
CN103229136B (zh) 磁盘阵列刷盘方法及磁盘阵列刷盘装置
CN101552032A (zh) 用较大容量dram参与闪存介质管理构建高速固态存储盘的方法及装置
CN103688248A (zh) 一种存储阵列的管理方法、装置和控制器
CN104699424A (zh) 一种基于页面热度的异构内存管理方法
WO2015029102A1 (ja) ストレージ装置及び階層制御方法
CN104662518A (zh) 数据迁移方法、数据迁移装置和存储设备
JP2008015769A (ja) ストレージシステム及び書き込み分散方法
CN103473298B (zh) 数据归档方法和装置以及存储系统
CN102498466A (zh) 数据存储实体之间的数据迁移
CN103064765A (zh) 数据恢复方法、装置及集群存储系统
CN104899154B (zh) 基于嵌入式系统混合主存的页面管理方法
CN104778018A (zh) 基于非对称混合型磁盘镜像的宽条带磁盘阵列及存储方法
CN102981966A (zh) 一种均衡分配Flash存储块的数据存储方法
CN106873908A (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
GR01 Patent grant
GR01 Patent grant