CN108646977B - 一种ssd冷热数据判断的方法及垃圾回收方法 - Google Patents

一种ssd冷热数据判断的方法及垃圾回收方法 Download PDF

Info

Publication number
CN108646977B
CN108646977B CN201810187323.4A CN201810187323A CN108646977B CN 108646977 B CN108646977 B CN 108646977B CN 201810187323 A CN201810187323 A CN 201810187323A CN 108646977 B CN108646977 B CN 108646977B
Authority
CN
China
Prior art keywords
page
temperature
data
temlp
cold
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
CN201810187323.4A
Other languages
English (en)
Other versions
CN108646977A (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.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System 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 Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN201810187323.4A priority Critical patent/CN108646977B/zh
Publication of CN108646977A publication Critical patent/CN108646977A/zh
Application granted granted Critical
Publication of CN108646977B publication Critical patent/CN108646977B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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
    • 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/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

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)
  • Read Only Memory (AREA)

Abstract

本发明公开了一种SSD冷热数据判断的方法及垃圾回收方法,其特征在于同时增加了页温度和块温度两级数据冷热判断,增加逻辑页温度表用于记录每个逻辑页的页温度值TemLP,所述页温度值由最近写访问次数决定;块温度值TemBlock由各个块各自所包含的页的页温度值TemLP决定,TemLP具体为有效页和无效页的页温度值的和决定。通过引入该方案,使用写访问频率作为数据冷热程度的判断标准,降低后续垃圾回收时冷数据页的无效迁移,提高垃圾回收的效率,减少写放大,延长NAND flash寿命。

Description

一种SSD冷热数据判断的方法及垃圾回收方法
技术领域
本发明涉及存储技术领域,尤其涉及一种SSD冷热数据判断的方法及垃圾回收方法。
背景技术
由于NAND flash的固有特性,NAND flash的可擦写次数是有限的,SLC颗粒可擦写次数最多,TLC颗粒可擦写次数最少。SSD的使用寿命取决于NAND flash的使用寿命,为了提高SSD的使用寿命,需要用到磨损均衡策略,而磨损均衡的关键在于冷热数据分离,现行冷热数据分离都是根据HOST写请求数据量大小来判断,这种方法降低了系统开销,但是无法有效进行数据的冷热分离,会造成大量无效垃圾回收GC操作。
使用写请求数据大小作为冷热数据阈值判断标准,可以区分部分数据,而且系统开销小。缺点是数据写入之后,由于存储冷数据的block擦除次数相对较少,在GC过程中被作为数据迁移目标块使用,需要将冷数据重新迁移,增大写放大。
图1是现有冷热数据判断方法流程图,分开放置冷热数据,依据数据大小,设置数据的冷热程度,将温度相近的数据放在一起,降低垃圾回收的频率;但会增加后续垃圾回收过程中冷数据页的无效迁移。
发明内容
针对以上缺陷,本发明目的在于如何降低垃圾回收操作时冷数据页无效迁移的概率。
为了实现上述目的,本发明提供了一种SSD冷热数据判断的方法,其特征在于同时增加了页温度和块温度两级数据冷热判断,增加逻辑页温度表用于记录每个逻辑页的页温度值TemLP,所述页温度值由最近写访问次数决定;块温度值TemBlock由各个块各自所包含的页的页温度值TemLP决定,TemLP具体为有效页和无效页的页温度值的和决定,其中:有效页的温度就是TemLP,无效页的温度是过期前LP对应的温度值,空闲页的温度为0,sum是valid和invalid之和,valid是一个块中有效页总数,invalid是一个块中无效页总数,TemLP(i)是第i个页的温度,具体为:
Figure BDA0001590680850000021
所述的SSD冷热数据判断的方法,其特征在于所述逻辑页温度表包括每个逻辑页的温度项,每个温度项至少包括逻辑页编号page_ID、总写入次数Luc、最近写访问次数Tuc、最近写访问时间戳Lts和页温度值TemLP。
所述的SSD冷热数据判断的方法,其特征在于所述逻辑页温度表按如下方式进行数据更新:
当写请求A到达时,根据页序号A.page_ID判断当前逻辑页温度表是否存在该页的温度数据,如果不存在则直接向逻辑页温度表增加页序号A.page_ID的温度数据,A对应的逻辑页编号A.page_ID=A、A对应的总写入次数A.Luc=1、A对应的最近写访问次数A.Tuc、A对应最近写访问时间戳A.Lts=ct和页温度值A.TemLP=0,ct为当前系统时间;如果已经存在则执行A.Tuc++,判断当前时间ct与A.Lts的差值是否小于等于更新阀值u,如果小于则A.Luc++,如果大于则设A.Luc=1,A.Lts=ct,A.TemLP=A.Luc。
一种SSD垃圾回收方法,其特征在于根据各个逻辑页温度值和块温度值进行数据冷热程度衡量,将页数据热度在预先设定的范围内页数据写入相同的数据块中,垃圾回收时将同样将有效的页数据热度在预先设定的范围内页数据搬移到相同的数据块中。
本发明有益效果:通过引入该方案,使用写访问频率作为数据冷热程度的判断标准,降低后续垃圾回收时冷数据页的无效迁移,提高垃圾回收的效率,减少写放大,延长NAND flash寿命。
附图说明
图1是现有冷热数据判断方法流程图;
图2是页温度表更新流程。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种将数据进行冷热分离的方法,减少后续GC次数。增加了“页温度”和“块温度”两级考虑,尽可能的将冷热数据分开放置和迁移,降低GC过程中冷数据的无效迁移,提高GC操作的效率,降低写放大,延长SSD的使用寿命。
为实现这一策略,需要维护一张逻辑页(Logical Page,LP)温度表,用于记录每个LP的温度。
表一:
字段 含义
Page_ID LP逻辑页编号
T<sub>uc</sub> 总写入次数
L<sub>uc</sub> 最近写访问次数
L<sub>ts</sub> 最近写访问时间戳
TemLP LP温度值
当接收到写命令时,按照下图流程更新LP温度表。其中,ct是系统的当前时间,u是用于界定是否是最近访问的时间间隔门限,当本次访问时间距离上次访问时间大于u时,将最近访问次数置1.
TemLP由最近写访问次数决定。
一个block中有三种页温度,有效页的温度就是TemLP,无效页的温度是过期前LP对应的温度值,空闲页的温度为0.为了更好地考虑block中数据情况,将数据更准确地放到温度相近的block中,使用block温度TemBlock来表示一个block的访问频率,
Figure BDA0001590680850000031
TemBlock的值由有效页温度和无效页温度计算得到,温度相近的页失效速率也相近,以便于减少回收块时的数据迁移,温度越高的块越容易失效。其中sum是valid和invalid之和,valid是一个块中有效页总数,invalid是一个块中无效页总数,TemLP(i)是第i个页的温度。
图2是页温度表更新流程,逻辑页温度表按如下方式进行数据更新:
当写请求A到达时,根据页序号A.page_ID判断当前逻辑页温度表是否存在该页的温度数据,如果不存在则直接向逻辑页温度表增加页序号A.page_ID的温度数据,A对应的逻辑页编号A.page_ID=A、A对应的总写入次数A.Luc=1、A对应的最近写访问次数A.Tuc、A对应最近写访问时间戳A.Lts=ct和页温度值
A.TemLP=0,ct为当前系统时间;如果已经存在则执行A.Tuc++,判断当前时间ct与A.Lts的差值是否小于等于更新阀值u,如果小于则A.Luc++,如果大于则设A.Luc=1,A.Lts=ct,A.TemLP=A.Luc。
计算“页温度”和“块温度”,将访问频率相近的数据放到同一个block;
基于“页温度”和“块温度”基础上,使用copy-back命令进行同一plane中的数据迁移。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。

Claims (4)

1.一种SSD冷热数据判断的方法,其特征在于同时增加了页温度和块温度两级数据冷热判断,增加逻辑页温度表用于记录每个逻辑页的页温度值TemLP,所述页温度值由最近写访问次数决定;块温度值TemBlock由各个块各自所包含的页的页温度值TemLP决定,TemLP具体为有效页和无效页的页温度值的和决定,其中:有效页的温度就是TemLP,无效页的温度是过期前逻辑页LP对应的温度值,空闲页的温度为0,sum是valid和invalid之和,valid是一个块中有效页总数,invalid是一个块中无效页总数,TemLP(i)是第i个页的温度,具体为:
Figure FDA0002767702380000011
2.根据权利要求1所述的SSD冷热数据判断的方法,其特征在于所述逻辑页温度表包括每个逻辑页的温度项,每个温度项至少包括逻辑页编号page_ID、总写入次数Luc、最近写访问次数Tuc、最近写访问时间戳Lts和页温度值TemLP。
3.根据权利要求2所述的SSD冷热数据判断的方法,其特征在于所述逻辑页温度表按如下方式进行数据更新:
当写请求A到达时,根据页序号A.page_ID判断当前逻辑页温度表是否存在该页的温度数据,如果不存在则直接向逻辑页温度表增加页序号A.page_ID的温度数据,A对应的逻辑页编号A.page_ID=A、A对应的总写入次数A.Luc=1、A对应的最近写访问次数A.Tuc、A对应最近写访问时间戳A.Lts=ct和页温度值A.TemLP=0,ct为当前系统时间;如果已经存在则执行A.Tuc++,判断当前时间ct与A.Lts的差值是否小于等于更新阀值u,如果小于则A.Luc++,如果大于则设A.Luc=1,A.Lts=ct,A.TemLP=A.Luc。
4.一种SSD垃圾回收方法,其特征在于根据权利要求1至3任意一项所述SSD冷热数据判断的方法获得各个逻辑页温度值和块温度值进行数据冷热程度衡量,将页数据热度在预先设定的范围内页数据写入相同的数据块中,垃圾回收时将同样将有效的页数据热度在预先设定的范围内页数据搬移到相同的数据块中。
CN201810187323.4A 2018-03-07 2018-03-07 一种ssd冷热数据判断的方法及垃圾回收方法 Active CN108646977B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810187323.4A CN108646977B (zh) 2018-03-07 2018-03-07 一种ssd冷热数据判断的方法及垃圾回收方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810187323.4A CN108646977B (zh) 2018-03-07 2018-03-07 一种ssd冷热数据判断的方法及垃圾回收方法

Publications (2)

Publication Number Publication Date
CN108646977A CN108646977A (zh) 2018-10-12
CN108646977B true CN108646977B (zh) 2021-02-05

Family

ID=63744282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810187323.4A Active CN108646977B (zh) 2018-03-07 2018-03-07 一种ssd冷热数据判断的方法及垃圾回收方法

Country Status (1)

Country Link
CN (1) CN108646977B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200085522A (ko) * 2019-01-07 2020-07-15 에스케이하이닉스 주식회사 이종 메모리를 갖는 메인 메모리 장치, 이를 포함하는 컴퓨터 시스템 및 그것의 데이터 관리 방법
CN111026673B (zh) * 2019-11-19 2023-05-05 中国航空工业集团公司西安航空计算技术研究所 一种nand flash垃圾回收动态优化方法
CN112988612B (zh) * 2019-12-18 2024-03-19 深圳大普微电子科技有限公司 一种数据处理方法、装置、设备及可读存储介质
CN113010091B (zh) * 2019-12-20 2023-06-16 华为技术有限公司 数据写入固态硬盘的方法、垃圾回收的方法、装置
CN112306414A (zh) * 2020-10-30 2021-02-02 北京泽石科技有限公司 数据处理方法及装置
CN114281251B (zh) * 2021-12-10 2023-08-11 重庆邮电大学 面向3d tlc闪存存储器的数据分配与重编程优化方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010000206A1 (en) * 2008-07-03 2010-01-07 Silicon Motion, Inc. Data storing methods and apparatus thereof
US8161241B2 (en) * 2010-01-12 2012-04-17 International Business Machines Corporation Temperature-aware buffered caching for solid state storage
CN107102954A (zh) * 2017-04-27 2017-08-29 华中科技大学 一种基于失效概率的固态存储分级管理方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010000206A1 (en) * 2008-07-03 2010-01-07 Silicon Motion, Inc. Data storing methods and apparatus thereof
US8161241B2 (en) * 2010-01-12 2012-04-17 International Business Machines Corporation Temperature-aware buffered caching for solid state storage
CN107102954A (zh) * 2017-04-27 2017-08-29 华中科技大学 一种基于失效概率的固态存储分级管理方法及系统

Also Published As

Publication number Publication date
CN108646977A (zh) 2018-10-12

Similar Documents

Publication Publication Date Title
CN108646977B (zh) 一种ssd冷热数据判断的方法及垃圾回收方法
TWI489373B (zh) 資料儲存裝置和快閃記憶體之區塊管理方法
TWI437439B (zh) 用來以動態門檻進行區塊管理之方法及記憶裝置及控制器
WO2015185002A1 (zh) 一种数据写入方法及装置
CN111708713B (zh) 一种固态硬盘智能垃圾回收与调度方法
CN109426622B (zh) 一种提高闪存固态盘寿命的方法及高寿命闪存固态盘
CN108369818A (zh) 一种闪存设备的刷新方法和装置
TW201413448A (zh) 資料儲存方法、記憶體控制器與記憶體儲存裝置
CN109684119B (zh) 应用于NAND Flash损耗均衡的优化方法
TW202042068A (zh) 資料儲存裝置與資料處理方法
CN107291374A (zh) 纪录数据区块的使用时间的方法及其装置
TW202001565A (zh) 管理快閃記憶體模組的方法及相關的快閃記憶體控制器及電子裝置
CN111414138A (zh) 一种固态硬盘磨损均衡方法和装置
CN111090392A (zh) 一种基于特征码的冷热数据分离方法
US10956074B2 (en) Data storage method, memory storage device and memory control circuit unit
CN106445401A (zh) 表格更新方法、存储器储存装置及存储器控制电路单元
CN108563586B (zh) 一种分离固态盘中垃圾回收数据与用户数据的方法
US11010290B2 (en) Method for reading management information according to updating data reflecting both of host write and data merge, memory storage device and memory control circuit unit
CN115114180A (zh) 在快闪存储器中进行耗损平衡操作的方法和相关控制器以及储存系统
US11334273B1 (en) Valid data merging method, memory storage device and memory control circuit unit
CN112347001B (zh) 闪存垃圾回收的校验方法、装置及电子设备
CN111737165B (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN111124295B (zh) 一种基于三元影响因子的农业数据存储处理系统及方法
TW201351140A (zh) 資料儲存方法、記憶體控制器與記憶體儲存裝置
CN103473179A (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
GR01 Patent grant
GR01 Patent grant