CN107957852A - 一种提升固态硬盘性能一致性的方法 - Google Patents
一种提升固态硬盘性能一致性的方法 Download PDFInfo
- Publication number
- CN107957852A CN107957852A CN201710950447.9A CN201710950447A CN107957852A CN 107957852 A CN107957852 A CN 107957852A CN 201710950447 A CN201710950447 A CN 201710950447A CN 107957852 A CN107957852 A CN 107957852A
- Authority
- CN
- China
- Prior art keywords
- mapping table
- solid state
- interim
- state hard
- performance
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic 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.根据权利要求2所述的提升固态硬盘性能一致性的方法,其特征在于在固态硬盘系统响应主机的读命令或写命令中在需要检索或更新映射表的操作后增加判断临时映射表是否为空,如果不为空,则增加检索或更新临时映射表的操作,所述检索或更新临时映射表的操作方法与操作映射表的方法保持一致。
3.根据权利要求1或2所述的提升固态硬盘性能一致性的方法,其特征在于映射表和临时映射表的数据结构保持一致。
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 true CN107957852A (zh) | 2018-04-24 |
CN107957852B 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) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109324755A (zh) * | 2018-08-08 | 2019-02-12 | 成都华为技术有限公司 | 一种i/o请求派发方法及装置 |
CN109508151A (zh) * | 2018-11-15 | 2019-03-22 | 苏州韦科韬信息技术有限公司 | 一种提升固态硬盘性能的方法 |
CN110716691A (zh) * | 2018-07-13 | 2020-01-21 | 华为技术有限公司 | 调度方法、装置、闪存设备和系统 |
CN111949559A (zh) * | 2019-05-16 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种数据写入方法、装置及存储设备 |
CN114168225A (zh) * | 2021-12-08 | 2022-03-11 | 深圳忆联信息系统有限公司 | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 |
CN114296653A (zh) * | 2021-12-29 | 2022-04-08 | 深圳忆联信息系统有限公司 | 基于固态硬盘的加速映射表更新方法、装置及计算机设备 |
Citations (7)
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 | 联想(北京)有限公司 | 一种数据备份、恢复方法及电子设备 |
-
2017
- 2017-10-13 CN CN201710950447.9A patent/CN107957852B/zh active Active
Patent Citations (7)
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协议计算机加速设备 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110716691A (zh) * | 2018-07-13 | 2020-01-21 | 华为技术有限公司 | 调度方法、装置、闪存设备和系统 |
CN109324755A (zh) * | 2018-08-08 | 2019-02-12 | 成都华为技术有限公司 | 一种i/o请求派发方法及装置 |
CN109508151A (zh) * | 2018-11-15 | 2019-03-22 | 苏州韦科韬信息技术有限公司 | 一种提升固态硬盘性能的方法 |
CN111949559A (zh) * | 2019-05-16 | 2020-11-17 | 北京兆易创新科技股份有限公司 | 一种数据写入方法、装置及存储设备 |
CN111949559B (zh) * | 2019-05-16 | 2024-04-16 | 兆易创新科技集团股份有限公司 | 一种数据写入方法、装置及存储设备 |
CN114168225A (zh) * | 2021-12-08 | 2022-03-11 | 深圳忆联信息系统有限公司 | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 |
WO2023103495A1 (zh) * | 2021-12-08 | 2023-06-15 | 深圳忆联信息系统有限公司 | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 |
CN114168225B (zh) * | 2021-12-08 | 2024-05-14 | 深圳忆联信息系统有限公司 | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 |
CN114296653A (zh) * | 2021-12-29 | 2022-04-08 | 深圳忆联信息系统有限公司 | 基于固态硬盘的加速映射表更新方法、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107957852B (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107957852A (zh) | 一种提升固态硬盘性能一致性的方法 | |
US10019196B2 (en) | Efficient enforcement of command execution order in solid state drives | |
KR102134694B1 (ko) | 저장 디바이스 상의 저장 영역들을 관리하기 위한 방법, 컴퓨터-판독가능 저장 매체 및 저장 제어기 모듈 | |
JP4163461B2 (ja) | キャッシュ・バッファ制御方法及び制御装置 | |
US20090193182A1 (en) | Information storage device and control method thereof | |
US20150293713A1 (en) | Storage controller, storage device, storage system and method of operating the storage controller | |
US20150347025A1 (en) | Host-controlled garbage collection | |
WO2017113888A1 (zh) | 数据写入装置及方法 | |
TWI521518B (zh) | 快閃記憶體設備中數據儲存之方法及裝置 | |
JP2008097237A (ja) | ストレージ装置及びその制御方法 | |
JP2009163647A (ja) | ディスクアレイ装置 | |
CN110674056B (zh) | 一种垃圾回收方法及装置 | |
CN101833460A (zh) | 用于配置多个软件简档的系统和方法 | |
US20140075102A1 (en) | Controller of a nonvolatile memory device and a command scheduling method thereof | |
WO2017211247A1 (zh) | 缓存管理方法、缓存控制器以及计算机系统 | |
US20120324185A1 (en) | Storage system and control method for the same | |
TW201015563A (en) | Block management and replacement method, flash memory storage system and controller using the same | |
CN109684271A (zh) | 快照数据管理方法、装置、电子设备及机器可读存储介质 | |
JP5985529B2 (ja) | ハイバネーションからの迅速な再開のための装置、方法およびデバイス | |
CN109508151A (zh) | 一种提升固态硬盘性能的方法 | |
US20160124650A1 (en) | Data Storage Device and Flash Memory Control Method | |
US9520197B2 (en) | Adaptive erase of a storage device | |
US20120260022A1 (en) | Handling commands within a write-once read-many storage device configuration | |
CN106649131B (zh) | 一种固态硬盘及其逻辑地址范围冲突监控方法、系统 | |
JP2011040057A (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 |