CN107957852B - 一种提升固态硬盘性能一致性的方法 - Google Patents

一种提升固态硬盘性能一致性的方法 Download PDF

Info

Publication number
CN107957852B
CN107957852B CN201710950447.9A CN201710950447A CN107957852B CN 107957852 B CN107957852 B CN 107957852B CN 201710950447 A CN201710950447 A CN 201710950447A CN 107957852 B CN107957852 B CN 107957852B
Authority
CN
China
Prior art keywords
mapping table
solid state
state disk
temporary
disk system
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
CN201710950447.9A
Other languages
English (en)
Other versions
CN107957852A (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.)
Ramaxel Technology Shenzhen Co Ltd
Original Assignee
Ramaxel Technology Shenzhen 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 Ramaxel Technology Shenzhen Co Ltd filed Critical Ramaxel Technology Shenzhen Co Ltd
Priority to CN201710950447.9A priority Critical patent/CN107957852B/zh
Publication of CN107957852A publication Critical patent/CN107957852A/zh
Application granted granted Critical
Publication of CN107957852B publication Critical patent/CN107957852B/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/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • 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/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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/0674Disk device
    • G06F3/0676Magnetic disk device

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统中增加一个创建临时映射表操作,固态硬盘系统在创建映射表的同时也创建一个空的临时映射表,固态硬盘系统在响应主机下发的写命令过程中,当固态硬盘系统执行到需要更新映射表时,检测到当前映射表处于锁定状态无法执行时,则直接将需要更新到映射表的表项数据更新到临时映射表;映射表解锁时判断临时映射表中是否为空,如果不为空则将临时映射表中的表项数据合并到映射表中,并清空临时映射表。通过增加临时映射表来达到在映射表存储阶段响应用户数据写操作的方法,从而有效提升此阶段SSD的写性能,减少性能抖动,提升固态硬盘性能一致性。

Description

一种提升固态硬盘性能一致性的方法
技术领域
本发明涉及固态硬盘控制技术,特别涉及一种提升固态硬盘性能一致性的方法。
背景技术
SSD运行期间在处理用户数据的同时,还要处理一些系统数据,而往往在处理系统数据时,SSD会阻塞对于用户数据的响应。其中典型场景之一是固态硬盘设备通常在内存中维护了逻辑到物理地址的映射表,随着用户数据的写入,映射表会不断的更新,系统为了应对掉电后再次上电的映射表重建,会定时的将映射表的全部或者部分写入到NAND flash中。这期间现有的策略都是暂停对于映射表的修改和存储时,这就涉及到在此期间映射表处于锁定状态,用户的写请求会被暂停,导致无法响应用户数据的写命令,从而在此操作期间,SSD性能会一定程度的下降。图1是映射表存储期间的写性能抖动示意图,在系统维护中对映射表修改Mapping table flush期间造成短时间的写性能下降也就是写性能抖动。在外部看来此时的SSD的写性能将会下降,整体来看就是写速度不一致存在写性能抖动问题。
发明内容
针对以上缺陷,本发明目的是如何克服在系统维护中对映射表修改Mappingtable flush期间造成的固态硬盘性能抖动问题。
为了解决以上问题本发明提出了一种提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统中增加一个创建临时映射表操作,固态硬盘系统在创建映射表的同时也创建一个空的临时映射表,固态硬盘系统在响应主机下发的写命令过程中,当固态硬盘系统执行到需要更新映射表时,检测到当前映射表处于锁定状态无法执行时,则直接将需要更新到映射表的表项数据更新到临时映射表;映射表解锁时判断临时映射表中是否为空,如果不为空则将临时映射表中的表项数据合并到映射表中,并清空临时映射表。
所述的提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统响应主机的读命令或写命令中在需要检索或更新映射表的操作后增加判断临时映射表是否为空,如果不为空,则增加检索或更新临时映射表的操作,所述检索或更新临时映射表的操作方法与操作映射表的方法保持一致。
所述的提升固态硬盘性能一致性的方法,其特征在于映射表和临时映射表的数据结构保持一致。
本发明通过增加临时映射表来达到在映射表存储阶段响应用户数据写操作的方法,从而有效提升此阶段SSD的写性能,减少性能抖动,提升固态硬盘性能一致性。
附图说明
图1是映射表存储期间的写性能抖动示意图;
图2是写命令触发的映射表更新示意图;
图3是常规数据写入的示意图;
图4是映射表存储期间写操作暂停响应示意图;
图5是增加临时映射表后写操作响应示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
固态硬盘内部都维护了一张映射表,该映射表详细记录了FLASH中已经存储的数据的逻辑地址到物理地址的转换关系,所有的用户数据读写操作都要根据命令的逻辑地址查询映射表后得到相应的物理地址后才能进行相应的针对NAND flash的读写操作。图3是常规数据写入的示意图,所有的读写命令WR都需要执行查询映射表获得物理地址后才能执行对NAND flash的读写操作;图2是写命令触发的映射表更新示意图,写操作在执行完对NAND flash的写操作后还需要增加对映射表的更新操作,映射表需要对新写入数据页的逻辑地址LPA对应的物理地址PPA进行更新操作,只有更新完成后才能答复主机本次写入数据完成。
随着用户数据的写入,映射表会不断的更新,系统为了应对掉电后再次上电的映射表重建,会定时的将映射表的全部或者部分写入到NAND flash中。映射表存储期间,图4是映射表存储期间写操作暂停响应示意图,现有的策略,当出现因系统维护需要需要正在执行将映射表的全部或者部分写入到NAND flash,则锁定当前映射表,暂停外部对于映射表的修改操作,此期间用户的写请求会被暂停,因此即使当前写操作已经实际写入到NANDflash中,但是由于无法完成映射表的更新操作,只能等待映射表写入NAND flash中后才可执行对映射表的更新操作,造成期间暂停响应写操作的问题。实际由于现有的固态硬盘都支持多通道,在系统执行映射表写入NAND flash时其它通道还是可以并行执行读写指令的,因此因为无法执行更新或者是访问映射表的操作而完全暂停读写指令的是不合适的。
图5是增加临时映射表后写操作响应示意图,本方案通过新增临时映射表temp_mapping_table,该表应用于在主映射表存储期间,若用户下发写请求,则将写请求产生的映射表修改信息记录到临时映射表中,从而不会影响到同时刻进行中的主映射表的修改,从而不需要进行暂停用户数据写命令的操作,实现此时间段用户命令写操作的快速响应。从外部看,可以大大降低此时刻写性能的下降,保证系统性能的一致性。
通过在固态硬盘系统中增加一个创建临时映射表操作,固态硬盘系统在创建映射表的同时也创建一个空的临时映射表,映射表和临时映射表的数据结构保持一致,固态硬盘系统在响应主机下发的写命令过程中,当固态硬盘系统执行到需要更新映射表时,检测到当前映射表处于锁定状态无法执行时,则直接将需要更新到映射表的表项数据更新到临时映射表;映射表解锁时判断临时映射表中是否为空,如果不为空则将临时映射表中的表项数据合并到映射表中,并清空临时映射表。
在固态硬盘系统响应主机的读命令或写命令中在需要检索或更新映射表的操作后增加判断临时映射表是否为空,如果不为空,则增加检索或更新临时映射表的操作,所述检索或更新临时映射表的操作方法与操作映射表的方法保持一致。
以上所揭露的仅为本发明一种实施例而已,当然不能以此来限定本之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于本发明所涵盖的范围。

Claims (3)

1.一种提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统中增加一个创建临时映射表操作,固态硬盘系统在创建映射表的同时也创建一个空的临时映射表,固态硬盘系统在响应主机下发的写命令过程中,当固态硬盘系统执行到需要更新映射表时,检测到当前映射表处于锁定状态无法执行时,则直接将需要更新到映射表的表项数据更新到临时映射表;映射表解锁时判断临时映射表中是否为空,如果不为空则将临时映射表中的表项数据合并到映射表中,并清空临时映射表。
2.根据权利要求1所述的提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统响应主机的读命令或写命令中在需要检索或更新映射表的操作后增加判断临时映射表是否为空,如果不为空,则增加检索或更新临时映射表的操作,所述检索或更新临时映射表的操作方法与操作映射表的方法保持一致。
3.根据权利要求1或2所述的提升固态硬盘性能一致性的方法,其特征在于映射表和临时映射表的数据结构保持一致。
CN201710950447.9A 2017-10-13 2017-10-13 一种提升固态硬盘性能一致性的方法 Active CN107957852B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710950447.9A CN107957852B (zh) 2017-10-13 2017-10-13 一种提升固态硬盘性能一致性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710950447.9A CN107957852B (zh) 2017-10-13 2017-10-13 一种提升固态硬盘性能一致性的方法

Publications (2)

Publication Number Publication Date
CN107957852A CN107957852A (zh) 2018-04-24
CN107957852B true CN107957852B (zh) 2021-08-13

Family

ID=61953580

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710950447.9A Active CN107957852B (zh) 2017-10-13 2017-10-13 一种提升固态硬盘性能一致性的方法

Country Status (1)

Country Link
CN (1) CN107957852B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716691B (zh) * 2018-07-13 2021-10-01 华为技术有限公司 调度方法、装置、闪存设备和系统
CN109324755A (zh) * 2018-08-08 2019-02-12 成都华为技术有限公司 一种i/o请求派发方法及装置
CN109508151A (zh) * 2018-11-15 2019-03-22 苏州韦科韬信息技术有限公司 一种提升固态硬盘性能的方法
CN111949559B (zh) * 2019-05-16 2024-04-16 兆易创新科技集团股份有限公司 一种数据写入方法、装置及存储设备
CN114168225B (zh) * 2021-12-08 2024-05-14 深圳忆联信息系统有限公司 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质
CN114296653A (zh) * 2021-12-29 2022-04-08 深圳忆联信息系统有限公司 基于固态硬盘的加速映射表更新方法、装置及计算机设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458613A (zh) * 2008-12-31 2009-06-17 成都市华为赛门铁克科技有限公司 一种混合分级阵列的实现方法、混合分级阵列和存储系统
CN102043721A (zh) * 2010-05-12 2011-05-04 中颖电子股份有限公司 闪存存储管理方法
CN103186350A (zh) * 2011-12-31 2013-07-03 北京快网科技有限公司 混合存储系统及热点数据块的迁移方法
CN103488578A (zh) * 2012-12-28 2014-01-01 晶天电子(深圳)有限公司 虚拟存储设备(vmd)应用/驱动器
CN103500076A (zh) * 2013-10-13 2014-01-08 张维加 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备
CN103514095A (zh) * 2012-06-18 2014-01-15 记忆科技(深圳)有限公司 一种数据库写入ssd 的方法和系统
CN104216796A (zh) * 2013-06-04 2014-12-17 联想(北京)有限公司 一种数据备份、恢复方法及电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458613A (zh) * 2008-12-31 2009-06-17 成都市华为赛门铁克科技有限公司 一种混合分级阵列的实现方法、混合分级阵列和存储系统
CN102043721A (zh) * 2010-05-12 2011-05-04 中颖电子股份有限公司 闪存存储管理方法
CN103186350A (zh) * 2011-12-31 2013-07-03 北京快网科技有限公司 混合存储系统及热点数据块的迁移方法
CN103514095A (zh) * 2012-06-18 2014-01-15 记忆科技(深圳)有限公司 一种数据库写入ssd 的方法和系统
CN103488578A (zh) * 2012-12-28 2014-01-01 晶天电子(深圳)有限公司 虚拟存储设备(vmd)应用/驱动器
CN104216796A (zh) * 2013-06-04 2014-12-17 联想(北京)有限公司 一种数据备份、恢复方法及电子设备
CN103500076A (zh) * 2013-10-13 2014-01-08 张维加 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备

Also Published As

Publication number Publication date
CN107957852A (zh) 2018-04-24

Similar Documents

Publication Publication Date Title
CN107957852B (zh) 一种提升固态硬盘性能一致性的方法
CN104461935B (zh) 一种进行数据存储的方法、装置及系统
CN108431783A (zh) 访问请求处理方法、装置及计算机系统
KR20100132244A (ko) 메모리 시스템 및 메모리 시스템 관리 방법
CN110674056B (zh) 一种垃圾回收方法及装置
CN107562367B (zh) 基于软件化存储系统读写数据的方法以及装置
US20140304487A1 (en) Information processing apparatus, memory control device, and data transfer control method
CN107422992A (zh) 一种SSD运行时Journal保存方法及系统
CN106104515A (zh) 利用非易失性存储器的文件系统设计和故障恢复方法
US10942811B2 (en) Data processing method for solid state drive
TWI519951B (zh) 資料儲存裝置以及快閃記憶體控制方法
US9690514B2 (en) Apparatus, method and medium
KR102277731B1 (ko) 스토리지 시스템의 구동 방법 및 스토리지 컨트롤러
CN112015159B (zh) 一种基于双核mcu的故障记录存储方法及计算机系统
US9009430B2 (en) Restoration of data from a backup storage volume
CN109508151A (zh) 一种提升固态硬盘性能的方法
US10430287B2 (en) Computer
US20200104384A1 (en) Systems and methods for continuous trim commands for memory systems
US20170206008A1 (en) Method and apparatus for scheduling block device input/output requests
CN104424124A (zh) 内存装置、电子设备和用于控制内存装置的方法
TW201337553A (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
CN109002265B (zh) 一种数据处理的方法以及相关装置
US9773562B2 (en) Storage apparatus, flash memory control apparatus, and program
JPWO2016139774A1 (ja) 情報処理装置、情報処理システム
KR102053406B1 (ko) 데이터 저장 장치 및 그 동작 방법

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