CN113448778A - 一种混合式ssd中关键数据的备份方法 - Google Patents

一种混合式ssd中关键数据的备份方法 Download PDF

Info

Publication number
CN113448778A
CN113448778A CN202110799718.1A CN202110799718A CN113448778A CN 113448778 A CN113448778 A CN 113448778A CN 202110799718 A CN202110799718 A CN 202110799718A CN 113448778 A CN113448778 A CN 113448778A
Authority
CN
China
Prior art keywords
data
backup
medium
slow
fast
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110799718.1A
Other languages
English (en)
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.)
East China Normal University
Original Assignee
East China Normal University
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 East China Normal University filed Critical East China Normal University
Priority to CN202110799718.1A priority Critical patent/CN113448778A/zh
Publication of CN113448778A publication Critical patent/CN113448778A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明涉及一种混合式SSD中的关键数据备份方法,主要包括以下步骤:判断数据是否需要备份,对于备份数据的读操作,默认从快介质读,慢介质的数据用于恢复;对于备份数据的写操作,根据其请求大小选择备份方式。对于较小的写请求,使用累积式的备份,先把数据写两份到快介质,等累积到一定数据量之后迁移到慢介质;对于大的写请求,使用传统的备份方式,将数据同时写入快介质和慢介质。本发明具有如下的优点:通过先写快介质累积后再迁移到慢介质的方法,避免了同时写快慢两种介质造成的延迟和写放大大幅增加的问题,有助于降低数据备份的性能和写放大开销。

Description

一种混合式SSD中关键数据的备份方法
技术领域
本发明涉及存储可靠性技术领域,特别是涉及一种混合式SSD中的关键数据备份方法。
背景技术
随着数据规模的不断增长和用户体验要求的不断提高,用户对存储设备的容量、访问性能和可靠性同时提出了较高的要求。出于性能和容量的综合考虑,出现了由多种存储介质组成的混合式存储设备。其中,由低密度、高性能、高成本闪存(SLC、Z-NAND等)和高密度、低性能、低成本闪存(TLC、QLC等)构成的混合式SSD得到了广泛的应用。这种混合式SSD能够提供很好的性价比,在实现高性能的同时维持较低的单位容量成本,同时满足性能和容量的需求。
同时,在计算机系统中有一些关键的数据,例如系统的一些关键元数据以及一些重要的用户数据,需要存储设备提供有效的数据保护机制来提高数据可靠性。RAID技术通过数据冗余来提高数据可靠性,RAID不仅可以用来组织HDD阵列、SSD阵列,还可以用在SSD内部。现有许多工作利用SSD内部的并行单元组建SSD设备内的RAID,包括通道级RAID和芯片级RAID,即在SSD的通道和芯片之间使用RAID架构,将数据在不同通道和芯片上各存一份(RAID1),或者将数据以条带写入并对每个条带数据保存一份校验数据(RAID4、RAID5)。
在混合式的SSD中,也可以使用类似于RAID1技术对数据进行保护,出于性能和容量开销的综合考虑,数据备份应该在快介质和慢介质之间进行。然而,由于两种介质在读写速度、访问粒度上存在较大差异,如果使用现有的方法实现数据备份,将数据同时写入快介质和慢介质,会存在两个问题。第一,为了完成备份的功能,只有当两份数据都完成写入,请求才会返回。因此,快介质上的写会被慢介质上的写拖慢,延迟升高,备份操作带来的写性能开销过大。第二,慢介质的写粒度大于快介质的写粒度,例如,TLC的写粒度是16KB,而SLC的写粒度是4KB。对于较小的请求,同时写入两种介质会导致慢介质写放大严重。
发明内容
本发明的目的是提供一种混合式SSD中的关键数据备份方法,通过将需要备份的数据先累积再迁移的策略,能够有效解决在异构存储介质上进行数据备份时存在的延迟和写放大大幅增加的问题,降低数据备份的开销。
实现本发明目的的具体技术方案是:
一种混合式SSD中关键数据的备份方法,所述关键数据已经由主机端定义好并打上备份标签,所述混合式SSD由两种类型的闪存介质构成,所述两种类型的闪存介质在延迟和写粒度上存在较大差异,将延迟低的闪存称为快介质,延迟高的闪存称为慢介质;具体包括:
根据读写请求附带的备份标签,判断其请求的数据是普通数据还是备份数据;普通数据的读写按照常规混合式SSD的读写流程处理,备份数据的读写按照以下步骤处理:
对于备份数据的读请求,默认从快介质读数据,当从快介质上读数据出错时,再从慢介质读,并利用慢介质上备份的数据进行数据恢复;
对于备份数据的写请求,将数据在快介质和慢介质上各存一份,实现数据的备份;若写请求的大小小于阈值,采用累积式的备份方法;若写请求的大小大于阈值,采用常规的备份方法;阈值大小与混合式SSD中两种类型介质的延迟和写粒度差异有关;两种类型介质的延迟和写粒度差异越大,阈值越高。
所述累积式的备份方法:当备份数据的写请求到来时,先将写请求的数据在快介质上写两份,当备份数据在快介质中累积到一个慢介质的条带大小时,再将其中一份数据从快介质迁移到慢介质,至此完成数据在快介质和慢介质间的备份。
所述一个慢介质的条带大小指的是覆盖SSD中所有慢介质并行单元的最小数据量;即在一个SLC-TLC混合的SSD中,有2个通道中存在TLC,每个通道有1个TLC芯片,每个TLC芯片有2个晶圆,每个晶圆内有2个分组,则在这个SSD中,一个TLC条带的大小为2*1*2*2*16KB=128KB。
本发明提出的方法,在提高混合式SSD数据可靠性的同时,能够维持较好的性能和较低的写放大。
附图说明
图1为本发明中读操作的流程图;
图2为本发明中写操作的流程图;
图3为本发明中TLC条带的示意图。
具体实施方式
下面结合附图及实施例对本发明作进一步说明。
假定主机端下发请求时会附带一个备份标志,SSD控制器通过检查请求的备份标志来确定该请求是否需要备份。
根据读写请求附带的备份标签,判断该请求的数据是普通数据还是备份数据。普通数据的读写按照传统混合式SSD的读写流程处理,备份数据的读写按照以下步骤处理:
对于备份数据的读请求,默认从快介质读数据,当从快介质上读数据出错时,再从慢介质读,并利用慢介质上备份的数据进行数据恢复;
对于备份数据的写请求,将数据在快介质和慢介质上各存一份,实现数据的备份;若写请求的大小小于阈值,采用累积式的备份方法;若写请求的大小大于阈值,采用传统的备份方法;阈值大小与混合式SSD中两种介质的延迟和写粒度差异有关。两种介质的延迟和写粒度差异越大,阈值越高。
所述累积式的备份方法:当备份数据的写请求到来时,先将写请求的数据在快介质上写两份,当备份数据在快介质中累积到一个慢介质的条带大小时,再将其中一份数据从快介质迁移到慢介质,至此完成数据在快介质和慢介质间的备份。需要在SSD的DRAM中维护一个LPN数组来记录正在累积数据的LPN。当有新的数据被累积时,LPN数组长度加1,当累积数据的大小达到一个慢介质条带大小时,将累积的数据迁移,LPN数组清空。
所述一个慢介质条带大小指的是覆盖SSD中所有慢介质并行单元的最小数据量。例如,在一个SLC-TLC混合的SSD中,有2个通道中存在TLC,每个通道有1个TLC芯片,每个TLC芯片有2个晶圆,每个晶圆内有2个分组,则在这个SSD中,一个TLC条带的大小为2*1*2*2*16KB=128KB。
实施例
以SLC-TLC混合SSD为例,参阅图1,是本实施例发明的读操作流程图,从步骤101开始,然后:
在步骤102,当读请求到来后,SSD会将一个大的读请求拆分成多个小的读子请求分别处理。
在步骤103,SSD控制器查看随着请求下发的备份标签,确定该请求的数据是否有备份。如果请求的数据没有备份,则执行步骤104,按照混合式SSD传统的读处理流程处理该读子请求,然后进入步骤109结束;如果请求的数据有备份,则执行步骤105,从SLC读数据,然后进入步骤106。
在步骤106,判断在SLC读数据时是否发生读出错。如果发生读出错,则执行步骤107,从TLC读数据,然后执行步骤108,用TLC上保存的备份数据进行数据恢复,最后进入步骤109结束;如果没有发生读出错,直接进入步骤109结束。
以SLC-TLC混合SSD为例,参阅图2,是本发明中的写操作流程图,从步骤201开始,然后:
在步骤202,当写请求到来后,SSD会将一个大的写请求拆分成多个小的写子请求分别处理。
在步骤203,SSD控制器检查随着写请求下发的备份标签,确定该请求的数据是否需要备份。如果该请求的数据不需要备份,则执行步骤204,按照混合式SSD传统的写处理流程处理该写子请求,然后进入步骤210结束;如果该请求的数据需要备份,则执行步骤205。
在步骤205,判断当前子请求所属请求的大小是否大于阈值。如果大于阈值,则说明这个请求不需要进行累积,执行步骤206,直接将数据各写一份到SLC和TLC;如果小于或等于阈值,则说明这个请求需要进行累积式的备份,进入步骤207。
在步骤207,将该子请求的数据在SLC上写两份,并将累积的页面数量acc_count加1,然后执行下一步骤208。
在步骤208,判断累积的页面数量acc_count是否达到TLC条带页面数量。如果是,执行步骤209,将累积数据的其中一份迁移到TLC,并把acc_count置为0,进入步骤210结束;如果还没有达到,则直接进入步骤210结束。
图3是本发明中TLC条带的示意图。
这里需要对TLC条带作进一步说明。由于SSD内部存在通道、芯片、晶圆、分组四级并行,同一个请求的不同子请求会被分配到不同的并行单元上并行处理。而对于TLC来说,由于其物理页大小是16KB,每4个逻辑页对应一个物理页,当请求以逻辑页为单位被分配到不同的通道、芯片、晶圆、分组上时,如果请求大小不对齐,极有可能导致有些物理页没有凑满4个逻辑页,从而导致TLC的写放大。如图3所示,当一个包含有16个逻辑页的请求写入TLC时,这些逻辑页会对应位于2个通道、2个芯片、4个晶圆、8个分组的8个物理页,而每个物理页都只对应了2个逻辑页,因此会产生一倍的写放大。本发明中TLC条带大小为跨越TLC所有并行单元的最少数据量,TLC条带页面数量是能够写满一个TLC条带的4KB页面数量,将其设为累积过程中触发迁移的阈值。与TLC条带大小对齐的迁移能完全避免小请求备份造成的TLC的写放大,达到理想的降低写放大的效果。TLC条带大小由SSD的并行架构和分配策略共同决定。在图3所示的架构中,TLC分布在2个通道上,每个通道有1个TLC芯片,每个芯片有2个晶圆,每个晶圆有两个2个分组,两个红色虚线框内的内容合起来为一个TLC条带,共2*1*2*2=8个16KB页面,即32个4KB页面,TLC条带页面数量为32,TLC条带大小为128KB。也即,当SLC中累积的页面数量达到32时,会将累积的数据迁移到TLC,而这一过程中TLC没有写放大。

Claims (3)

1.一种混合式SSD中关键数据的备份方法,所述关键数据已经由主机端定义好并打上备份标签,所述混合式SSD由两种类型的闪存介质构成,所述两种类型的闪存介质在延迟和写粒度上存在差异,将延迟低的闪存称为快介质,延迟高的闪存称为慢介质;其特征在于,该方法包括:
根据读写请求附带的备份标签,判断其请求的数据是普通数据还是备份数据;普通数据的读写按照常规混合式SSD的读写流程处理,备份数据的读写按照以下步骤处理:
对于备份数据的读请求,默认从快介质读数据,当从快介质上读数据出错时,再从慢介质读,并利用慢介质上备份的数据进行数据恢复;
对于备份数据的写请求,将数据在快介质和慢介质上各存一份,实现数据的备份;若写请求的大小小于阈值,采用累积式的备份方法;若写请求的大小大于阈值,采用常规的备份方法;阈值大小与混合式SSD中两种类型介质的延迟和写粒度差异有关;两种类型介质的延迟和写粒度差异越大,阈值越高。
2.如权利要求1所述的混合式SSD中关键数据备份方法,其特征在于,所述累积式的备份方法:当备份数据的写请求到来时,先将写请求的数据在快介质上写两份,当备份数据在快介质中累积到一个慢介质的条带大小时,再将其中一份数据从快介质迁移到慢介质,至此完成数据在快介质和慢介质间的备份。
3.如权利要求2所述的混合式SSD中关键数据备份方法,其特征在于,所述一个慢介质的条带大小指的是覆盖SSD中所有慢介质并行单元的最小数据量;即在一个SLC-TLC混合的SSD中,有2个通道中存在TLC,每个通道有1个TLC芯片,每个TLC芯片有2个晶圆,每个晶圆内有2个分组,则在这个SSD中,一个TLC条带的大小为2*1*2*2*16KB=128KB。
CN202110799718.1A 2021-07-15 2021-07-15 一种混合式ssd中关键数据的备份方法 Pending CN113448778A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110799718.1A CN113448778A (zh) 2021-07-15 2021-07-15 一种混合式ssd中关键数据的备份方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110799718.1A CN113448778A (zh) 2021-07-15 2021-07-15 一种混合式ssd中关键数据的备份方法

Publications (1)

Publication Number Publication Date
CN113448778A true CN113448778A (zh) 2021-09-28

Family

ID=77816239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110799718.1A Pending CN113448778A (zh) 2021-07-15 2021-07-15 一种混合式ssd中关键数据的备份方法

Country Status (1)

Country Link
CN (1) CN113448778A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591748A (zh) * 2011-12-29 2012-07-18 记忆科技(深圳)有限公司 固态硬盘及其掉电保护方法、系统
US20130254458A1 (en) * 2012-03-26 2013-09-26 Michael H. Pittelko Single-level cell and multi-level cell hybrid solid state drive
CN104220991A (zh) * 2012-03-16 2014-12-17 马维尔国际贸易有限公司 用于允许数据在nand闪存上的有效存储的架构
CN108664218A (zh) * 2018-04-23 2018-10-16 浙江大华技术股份有限公司 一种基于数据特征的ssd存储方法、装置及系统
CN110471863A (zh) * 2019-08-13 2019-11-19 深圳忆联信息系统有限公司 基于固态硬盘的数据写入读取方法、装置和计算机设备
CN112632643A (zh) * 2020-12-29 2021-04-09 深圳大普微电子科技有限公司 防止闪存数据丢失的方法、固态硬盘控制器、固态硬盘

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102591748A (zh) * 2011-12-29 2012-07-18 记忆科技(深圳)有限公司 固态硬盘及其掉电保护方法、系统
CN104220991A (zh) * 2012-03-16 2014-12-17 马维尔国际贸易有限公司 用于允许数据在nand闪存上的有效存储的架构
US20130254458A1 (en) * 2012-03-26 2013-09-26 Michael H. Pittelko Single-level cell and multi-level cell hybrid solid state drive
CN108664218A (zh) * 2018-04-23 2018-10-16 浙江大华技术股份有限公司 一种基于数据特征的ssd存储方法、装置及系统
CN110471863A (zh) * 2019-08-13 2019-11-19 深圳忆联信息系统有限公司 基于固态硬盘的数据写入读取方法、装置和计算机设备
CN112632643A (zh) * 2020-12-29 2021-04-09 深圳大普微电子科技有限公司 防止闪存数据丢失的方法、固态硬盘控制器、固态硬盘

Similar Documents

Publication Publication Date Title
US8984253B2 (en) Transaction log recovery
US8806111B2 (en) Apparatus, system, and method for backing data of a non-volatile storage device using a backing store
US20170336990A1 (en) Multi-tier scheme for logical storage management
US10127166B2 (en) Data storage controller with multiple pipelines
KR101447786B1 (ko) 파워 인터럽트 관리
KR20150067583A (ko) 불휘발성 메모리 장치 및 그것의 중복 데이터 제거 방법
US20160179403A1 (en) Storage controller, storage device, storage system, and semiconductor storage device
KR20140045269A (ko) 저전력 저지연 고용량 스토리지 클래스 메모리용 장치 및 방법
US9904472B2 (en) Memory system and method for delta writes
CN109213693B (zh) 存储管理方法、存储系统和计算机程序产品
US11500727B2 (en) ZNS parity swapping to DRAM
US9857994B2 (en) Storage controller, control method, and computer product
US11204833B1 (en) NVM endurance group controller using shared resource architecture
WO2020007030A1 (zh) 一种系统控制器和系统垃圾回收方法
US20190243578A1 (en) Memory buffer management for solid state drives
US11487609B2 (en) Separating parity data from host data in a memory sub-system
CN116126251B (zh) 一种实现多并发写入的方法、控制器和固态存储设备
WO2017107162A1 (zh) 一种异构混合内存组件、系统及存储方法
US20210373809A1 (en) Write Data-Transfer Scheduling in ZNS Drive
CN113448778A (zh) 一种混合式ssd中关键数据的备份方法
EP2780812B1 (en) Apparatuses and methods for storing validity masks
Cui et al. Exploiting disturbance-aware read redirection for performance improvement in 3D flash memory
CN114730247A (zh) 具有数据的最小写入大小的存储设备
US11966582B2 (en) Data storage device that detects and releases bottlenecks
US20240111427A1 (en) Data Storage Device That Detects And Releases Input Queue Bottlenecks

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210928

WD01 Invention patent application deemed withdrawn after publication