CN110333826A - Ssd读写性能提升方法、装置、计算机设备及存储介质 - Google Patents
Ssd读写性能提升方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110333826A CN110333826A CN201910599079.7A CN201910599079A CN110333826A CN 110333826 A CN110333826 A CN 110333826A CN 201910599079 A CN201910599079 A CN 201910599079A CN 110333826 A CN110333826 A CN 110333826A
- Authority
- CN
- China
- Prior art keywords
- mapping table
- level
- target area
- mapping
- load request
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000013507 mapping Methods 0.000 claims abstract description 297
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 21
- 238000010304 firing Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 108010001267 Protein Subunits Proteins 0.000 claims description 2
- 238000012512 characterization method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 15
- 239000007787 solid Substances 0.000 description 11
- 230000008569 process Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/061—Improving I/O performance
-
- 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/0629—Configuration or reconfiguration of storage systems
-
- 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/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
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读写性能提升方法、装置、计算机设备及存储介质,该方法包括识别处理TRIM命令时的未映射区域,以得到目标区域;对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;判断是否进行映射表加载;若是,则获取映射表加载请求;判断映射表加载请求内的映射表是否涉及目标区域;若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。本发明免除常规映射表加载时的读操作,大幅提升映射表加载性能,提升整个SSD的整体性能。
Description
技术领域
本发明涉及固态硬盘,更具体地说是指SSD读写性能提升方法、装置、计算机设备及存储介质。
背景技术
SSD(固态硬盘,Solid State Drive)的内部映射表管理通常使用两级映射,记录逻辑地址到物理地址的映射表通常称为二级映射表,修改后的映射表会被记录到NAND闪存中,供后续使用。映射表通常常驻于DRAM(动态随机存取存储器,Dynamic Random AccessMemory)中,但若是SSD刚上电或内存受限SSD,则需要在适当的时候通过映射表加载的形式从NAND闪存Flash内读出映射表到对应的DRAM地址中,供后续的映射表查询操作使用,如图2所示。若映射表被修改,则需要在适当的时间,将映射表中被修改的数据写入NAND闪存,如图1所示,映射表的加载或刷入通常通过另外一个记录映射表内容存储地址的表来进行,该表通常称为一级映射表。
固态硬盘处理TRIM命令时,TRIM命令使操作***能通知固态硬盘哪些数据块已不再考虑使用,可以被内部擦除;会根据具体的TRIM命令描述,通常的做法是将映射表中相关逻辑空间对应的物理地址记录为特殊数值,如图3与图4所示,TRIM区域内且修改后的映射表会跟常规修改的映射表一样被记录到NAND闪存中,后续涉及这部分区域的访问时,如果需要,则从NAND闪存中进行读取。
上述的操作方式需要频繁地加载映射表,造成整体的读写性能下降。
因此,有必要设计一种新的方法,实现免除常规映射表加载时的读操作,以提升整个SSD的读写性能。
发明内容
本发明的目的在于克服现有技术的缺陷,提供SSD读写性能提升方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:SSD读写性能提升方法,包括:
识别处理TRIM命令时的未映射区域,以得到目标区域;
对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
判断是否进行映射表加载;
若是,则获取映射表加载请求;
判断所述映射表加载请求内的映射表是否涉及目标区域;
若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
其进一步技术方案为:所述对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表,包括:
获取目标区域对应的一级映射表,以得到待修改一级映射表;
将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
其进一步技术方案为:所述判断所述映射表加载请求内的映射表是否涉及目标区域,包括:
根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
判断所述物理地址内是否记录为特殊状态的数据;
若是,则所述映射表加载请求内的映射表涉及目标区域;
若否,则所述映射表加载请求内的映射表不涉及目标区域。
其进一步技术方案为:所述对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表,包括:
根据目标区域调取目标区域对应的二级映射表区间;
对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
其进一步技术方案为:所述特殊数值包括表征未映射状态的特殊字段。
本发明还提供了SSD读写性能提升装置,包括:
识别单元,用于识别处理TRIM命令时的未映射区域,以得到目标区域;
处理单元,用于对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
加载判断单元,用于判断是否进行映射表加载;
请求获取单元,用于若是,则获取映射表加载请求;
映射表判断单元,用于判断所述映射表加载请求内的映射表是否涉及目标区域;
赋值单元,用于若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
其进一步技术方案为:所述处理单元包括:
一级映射表获取子单元,用于获取目标区域对应的一级映射表,以得到待修改一级映射表;
数据记录子单元,用于将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
其进一步技术方案为:所述映射表判断单元包括:
物理地址查询子单元,用于根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
物理地址判断子单元,用于判断所述物理地址内是否记录为特殊状态的数据;若是,则所述映射表加载请求内的映射表涉及目标区域;若否,则所述映射表加载请求内的映射表不涉及目标区域。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过识别处理TRIM命令时的未映射区域,对目标区域对应的一级映射表进行特殊地记录,不对未映射区域进行常规的从NAND内存读取或者写入NAND内存的操作,在后续需要时直接对目标区域对应的二级映射表区域赋值的形式实现映射表加载,免除常规映射表加载时的读操作,大幅提升映射表加载性能,提升整个SSD的整体性能。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的两级映射表及映射表写入NAND内存的流程示意图;
图2为现有技术的两级映射表及映射表加载的流程示意图;
图3为现有技术的TRIM命令将二级映射表对应区域设置为特殊状态的流程示意图;
图4为现有技术的固态硬盘处理TRIM命令时常规操作的流程示意图;
图5为本发明实施例提供的SSD读写性能提升方法的流程示意图;
图6为本发明实施例提供的SSD读写性能提升方法的子流程示意图;
图7为本发明实施例提供的SSD读写性能提升方法的子流程示意图;
图8为本发明实施例提供的SSD读写性能提升方法的子流程示意图;
图9为本发明实施例提供的针对目标区域在一级映射表中特殊记录的子流程示意图;
图10为本发明实施例提供的优化后的二级映射表加载采用直接赋值的子流程示意图;
图11为本发明实施例提供的SSD读写性能提升装置的示意性框图;
图12为本发明实施例提供的SSD读写性能提升装置的处理单元的示意性框图;
图13为本发明实施例提供的SSD读写性能提升装置的映射表判断单元的示意性框图;
图14为本发明实施例提供的SSD读写性能提升装置的赋值单元的示意性框图;
图15为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图5,图5为本发明实施例提供的SSD读写性能提升方法的示意性流程图。该SSD读写性能提升方法应用于固态硬盘中。该固态硬盘与主机之间进行数据交互,根据主机下发的映射表加载请求进行对应的处理。
图5是本发明实施例提供的SSD读写性能提升方法的流程示意图。如图5所示,该方法包括以下步骤S110至S150。
S110、识别处理TRIM命令时的未映射区域,以得到目标区域。
在本实施例中,目标区域是指被TRIM后的二级映射表的相关区域,TRIM命令处理过程中所导致的未映射区域。
S120、对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表。
在本实施例中,修改后的一级映射表是指当二级映射表的相关区域TRIM后所更新的一级映射表。
在一实施例中,请参阅图6,上述的步骤S120可包括步骤S121~S122。
S121、获取目标区域对应的一级映射表,以得到待修改一级映射表。
在本实施例中,待修改一级映射表是指加载或刷入与目标区域所对应的二级映射表内容存储地址的表。
S122、将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
在本实施例中,修改后的一级映射表是指将数据记录为特殊状态的且用于加载或刷入与目标区域所对应的二级映射表内容存储地址的表。
如图9所示,当二级映射表相关区域被TRIM后,也就是形成了目标区域,对该目标区域做特殊处理,即不作为普通修改数据写入NAND内存,而是通过修改对应的一级映射表,将一级映射表中数据记录为UNMAP状态,即特殊状态,以此表示对应的二级映射表是被TRIM过的,即UNMAP特殊状态。
S130、判断是否进行映射表加载。
若否,则返回所述步骤S130;
S140、若是,则获取映射表加载请求。
在本实施例中,映射表加载请求是指携带有需要加载的二级映射表所在的物理地址的请求。
当后续需要进行映射表加载时,可先获取映射表加载请求,一般会从映射表加载请求中获取到需要加载的二级映射表所在的物理地址。
S150、判断所述映射表加载请求内的映射表是否涉及目标区域。
在一实施例中,请参阅图7,上述的步骤S150可包括步骤S151~S154。
S151、根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
S152、判断所述物理地址内是否记录为特殊状态的数据;
S153、若是,则所述映射表加载请求内的映射表涉及目标区域;
S154、若否,则所述映射表加载请求内的映射表不涉及目标区域。
如图9所示,后续的映射表加载时,通过修改后的一级映射表查询映射表存储所在的物理地址时,若涉及到被TRIM的目标区域,会通过修改后的一级映射表查询到相关区域为UNMAP状态,则明确这段二级映射表的区域为UNMAP状态。
S160、若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
在本实施例中,新二级映射表是指针对出现TRIM命令后的目标区域对应的二级映射表区间进行特殊赋值后形成的表格。
在一实施例中,请参阅图8,上述的步骤S160可包括步骤S161~S162。
S161、根据目标区域调取目标区域对应的二级映射表区间;
S162、对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
在本实施例中,需要加载映射时,对涉及到目标区域的二级映射表而言,直接进行赋值即可,无需再进行加载。
如图10所示,在明确某段二级映射表的区间为UNMAP状态,直接通过赋值的形式,将对应的二级映射表区域赋值为UNMAP_VALUE即特殊数值即可。
在本实施例中,上述的特殊数值包括表征未映射状态的特殊字段。
针对固态硬盘TRIM空间映射表的特殊处理方式,对未映射区域即目标区域不做加载操作,而是采用直接赋值方式,可减少TRIM后的目标区域的映射表加载操作,可以有效提升后续的读写性能。尤其对于内存受限SSD,需要频繁加载映射表,该优化效果尤其明显。
S170、若否,则加载对应的映射表。
若没有涉及到目标区域,则直接进行对应的二级映射表的加载操作。
上述的SSD读写性能提升方法,通过识别处理TRIM命令时的未映射区域,对目标区域对应的一级映射表进行特殊地记录,不对未映射区域进行常规的从NAND内存读取或者写入NAND内存的操作,在后续需要时直接对目标区域对应的二级映射表区域赋值的形式实现映射表加载,免除常规映射表加载时的读操作,大幅提升映射表加载性能,提升整个SSD的整体性能。
图11是本发明实施例提供的一种SSD读写性能提升装置300的示意性框图。如图11所示,对应于以上SSD读写性能提升方法,本发明还提供一种SSD读写性能提升装置300。该SSD读写性能提升装置300包括用于执行上述SSD读写性能提升方法的单元,该装置可以被配置于固态硬盘中。
具体地,请参阅图11,该SSD读写性能提升装置300包括:
识别单元301,用于识别处理TRIM命令时的未映射区域,以得到目标区域;
处理单元302,用于对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
加载判断单元303,用于判断是否进行映射表加载;
请求获取单元304,用于若是,则获取映射表加载请求;
映射表判断单元305,用于判断所述映射表加载请求内的映射表是否涉及目标区域;
赋值单元306,用于若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表;
加载单元306,用于若否,则加载对应的映射表。
在一实施例中,请参阅图12,所述处理单元302包括:
一级映射表获取子单元3021,用于获取目标区域对应的一级映射表,以得到待修改一级映射表;
数据记录子单元3022,用于将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
在一实施例中,请参阅图13,所述映射表判断单元305包括:
物理地址查询子单元3051,用于根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
物理地址判断子单元3052,用于判断所述物理地址内是否记录为特殊状态的数据;若是,则所述映射表加载请求内的映射表涉及目标区域;若否,则所述映射表加载请求内的映射表不涉及目标区域。
在一实施例中,请参阅图14,所述赋值单元306包括区间调取子单元3061以及区间赋值子单元3062。
区间调取子单元3061,用于根据目标区域调取目标区域对应的二级映射表区间;
区间赋值子单元3062,用于对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述SSD读写性能提升装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述SSD读写性能提升装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图15所示的计算机设备上运行。
请参阅图15,图15是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500带有固态硬盘的设备。
参阅图15,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种SSD读写性能提升方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种SSD读写性能提升方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图15中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
识别处理TRIM命令时的未映射区域,以得到目标区域;
对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
判断是否进行映射表加载;
若是,则获取映射表加载请求;
判断所述映射表加载请求内的映射表是否涉及目标区域;
若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
在一实施例中,处理器502在实现所述对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表步骤时,具体实现如下步骤:
获取目标区域对应的一级映射表,以得到待修改一级映射表;
将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
在一实施例中,处理器502在实现所述判断所述映射表加载请求内的映射表是否涉及目标区域步骤时,具体实现如下步骤:
根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
判断所述物理地址内是否记录为特殊状态的数据;
若是,则所述映射表加载请求内的映射表涉及目标区域;
若否,则所述映射表加载请求内的映射表不涉及目标区域。
在一实施例中,处理器502在实现所述对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表步骤时,具体实现如下步骤:
根据目标区域调取目标区域对应的二级映射表区间;
对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
其中,所述特殊数值包括表征未映射状态的特殊字段。
应当理解,在本申请实施例中,处理器502可以是中央处理单元302(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
识别处理TRIM命令时的未映射区域,以得到目标区域;
对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
判断是否进行映射表加载;
若是,则获取映射表加载请求;
判断所述映射表加载请求内的映射表是否涉及目标区域;
若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表步骤时,具体实现如下步骤:
获取目标区域对应的一级映射表,以得到待修改一级映射表;
将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述判断所述映射表加载请求内的映射表是否涉及目标区域步骤时,具体实现如下步骤:
根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
判断所述物理地址内是否记录为特殊状态的数据;
若是,则所述映射表加载请求内的映射表涉及目标区域;
若否,则所述映射表加载请求内的映射表不涉及目标区域。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表步骤时,具体实现如下步骤:
根据目标区域调取目标区域对应的二级映射表区间;
对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
其中,所述特殊数值包括表征未映射状态的特殊字段。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.SSD读写性能提升方法,其特征在于,包括:
识别处理TRIM命令时的未映射区域,以得到目标区域;
对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
判断是否进行映射表加载;
若是,则获取映射表加载请求;
判断所述映射表加载请求内的映射表是否涉及目标区域;
若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
2.根据权利要求1所述的SSD读写性能提升方法,其特征在于,所述对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表,包括:
获取目标区域对应的一级映射表,以得到待修改一级映射表;
将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
3.根据权利要求2所述的SSD读写性能提升方法,其特征在于,所述判断所述映射表加载请求内的映射表是否涉及目标区域,包括:
根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
判断所述物理地址内是否记录为特殊状态的数据;
若是,则所述映射表加载请求内的映射表涉及目标区域;
若否,则所述映射表加载请求内的映射表不涉及目标区域。
4.根据权利要求3所述的SSD读写性能提升方法,其特征在于,所述对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表,包括:
根据目标区域调取目标区域对应的二级映射表区间;
对目标区域对应的二级映射表区间赋值为特殊数值,以得到新二级映射表。
5.根据权利要求4所述的SSD读写性能提升方法,其特征在于,所述特殊数值包括表征未映射状态的特殊字段。
6.SSD读写性能提升装置,其特征在于,包括:
识别单元,用于识别处理TRIM命令时的未映射区域,以得到目标区域;
处理单元,用于对目标区域对应的一级映射表进行处理,以得到修改后的一级映射表;
加载判断单元,用于判断是否进行映射表加载;
请求获取单元,用于若是,则获取映射表加载请求;
映射表判断单元,用于判断所述映射表加载请求内的映射表是否涉及目标区域;
赋值单元,用于若是,则对目标区域对应的二级映射表区间进行赋值,以得到新二级映射表。
7.根据权利要求6所述的SSD读写性能提升装置,其特征在于,所述处理单元包括:
一级映射表获取子单元,用于获取目标区域对应的一级映射表,以得到待修改一级映射表;
数据记录子单元,用于将待修改一级映射表内的数据记录为特殊状态,以得到修改后的一级映射表。
8.根据权利要求7所述的SSD读写性能提升装置,其特征在于,所述映射表判断单元包括:
物理地址查询子单元,用于根据映射表加载请求通过一级映射表查询所需加载的映射表存储所在的物理地址;
物理地址判断子单元,用于判断所述物理地址内是否记录为特殊状态的数据;若是,则所述映射表加载请求内的映射表涉及目标区域;若否,则所述映射表加载请求内的映射表不涉及目标区域。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599079.7A CN110333826A (zh) | 2019-07-04 | 2019-07-04 | Ssd读写性能提升方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599079.7A CN110333826A (zh) | 2019-07-04 | 2019-07-04 | Ssd读写性能提升方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110333826A true CN110333826A (zh) | 2019-10-15 |
Family
ID=68144122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910599079.7A Pending CN110333826A (zh) | 2019-07-04 | 2019-07-04 | Ssd读写性能提升方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110333826A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559386A (zh) * | 2020-12-22 | 2021-03-26 | 深圳忆联信息***有限公司 | 提升ssd性能的方法、装置、计算机设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8527544B1 (en) * | 2011-08-11 | 2013-09-03 | Pure Storage Inc. | Garbage collection in a storage system |
CN104346287A (zh) * | 2013-08-09 | 2015-02-11 | Lsi公司 | 在固态介质中使用多级别映射的修整机制 |
CN104461387A (zh) * | 2014-12-02 | 2015-03-25 | 记忆科技(深圳)有限公司 | 一种提高固态硬盘对未映射区域的读性能的方法 |
CN108549610A (zh) * | 2018-03-27 | 2018-09-18 | 深圳忆联信息***有限公司 | 一种NVMe扩展的实现方法及固态硬盘 |
CN108563401A (zh) * | 2018-03-27 | 2018-09-21 | 深圳忆联信息***有限公司 | 一种ssd性能加速方法 |
-
2019
- 2019-07-04 CN CN201910599079.7A patent/CN110333826A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8527544B1 (en) * | 2011-08-11 | 2013-09-03 | Pure Storage Inc. | Garbage collection in a storage system |
CN104346287A (zh) * | 2013-08-09 | 2015-02-11 | Lsi公司 | 在固态介质中使用多级别映射的修整机制 |
CN104461387A (zh) * | 2014-12-02 | 2015-03-25 | 记忆科技(深圳)有限公司 | 一种提高固态硬盘对未映射区域的读性能的方法 |
CN108549610A (zh) * | 2018-03-27 | 2018-09-18 | 深圳忆联信息***有限公司 | 一种NVMe扩展的实现方法及固态硬盘 |
CN108563401A (zh) * | 2018-03-27 | 2018-09-21 | 深圳忆联信息***有限公司 | 一种ssd性能加速方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559386A (zh) * | 2020-12-22 | 2021-03-26 | 深圳忆联信息***有限公司 | 提升ssd性能的方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5594664B2 (ja) | サービス品質に基づくストレージ階層化及び移動技法のためのシステム及び方法 | |
US20090254719A1 (en) | Switch apparatus | |
CN104516678B (zh) | 用于数据存储的方法和设备 | |
CN103678150B (zh) | 固态硬盘使用方法及装置 | |
US20130067191A1 (en) | Pooled partition layout and representation | |
US20220027284A1 (en) | Reading Sequential Data from Memory Using a Pivot Table | |
US20090077284A1 (en) | System and Method for Enhancing External Storage | |
US20100057818A1 (en) | Performing defragment on hard disk of host machine having a virtual machine | |
CN110297603B (zh) | 基于固态硬盘的随机写性能提升方法、装置和计算机设备 | |
CN108920096A (zh) | 一种ssd的数据储存方法、装置、计算机设备及存储介质 | |
US9710283B2 (en) | System and method for pre-storing small data files into a page-cache and performing reading and writing to the page cache during booting | |
CN110377233A (zh) | Ssd读性能优化方法、装置、计算机设备及存储介质 | |
JP2014528127A (ja) | 使用状態ビットマップを備えた記憶装置への効率的なアクセス | |
JP6161721B2 (ja) | ホストからストレージ装置への削除されたデータの示唆 | |
CN106201923A (zh) | 读写数据方法及装置 | |
CN110109845A (zh) | 缓存数据管理方法、装置、计算机设备及存储介质 | |
US10402108B2 (en) | Efficient control of data storage areas based on a size of compressed data to be written | |
US20080040572A1 (en) | Method, system, and article of manufacture for reserving memory | |
CN110333826A (zh) | Ssd读写性能提升方法、装置、计算机设备及存储介质 | |
CN112181870B (zh) | 内存页面管理方法、装置、设备及可读存储介质 | |
CN108733584B (zh) | 用于优化数据缓存的方法和设备 | |
CN108519860B (zh) | 一种ssd读命中的处理方法和装置 | |
CN1790249A (zh) | 用于允许在驱动器被格式化的同时访问存储设备的方法和装置 | |
CN112527693A (zh) | 一种固态硬盘磨损均衡方法、***、设备及介质 | |
CN110471624A (zh) | Ssd读重试的加速方法、装置、计算机设备及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191015 |