CN110442533A - 一种提高访问性能的方法、设备及存储介质 - Google Patents
一种提高访问性能的方法、设备及存储介质 Download PDFInfo
- Publication number
- CN110442533A CN110442533A CN201910650136.XA CN201910650136A CN110442533A CN 110442533 A CN110442533 A CN 110442533A CN 201910650136 A CN201910650136 A CN 201910650136A CN 110442533 A CN110442533 A CN 110442533A
- Authority
- CN
- China
- Prior art keywords
- address
- buffer area
- access
- storage equipment
- storage
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本申请公开了一种提高访问性能的方法、设备及存储介质,该方法包括从第一存储设备的存储区中选取至少部分存储区作为缓存区;建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表;向第二存储设备发起访问请求,其中,访问请求包括访问地址;在地址映射表包括访问地址时,获取与访问地址对应的缓存区的地址,并向缓存区的地址发起访问。通过上述方式,本申请能够提高第二存储设备的访问性能及使用寿命。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种提高访问性能的方法、设备及存储介质。
背景技术
存储设备的访问具有随机性,当多个进程同时密集地访问低速存储设备时,如SD卡(Secure Digital Memory Card,安全数码卡)或U盘(Universal Serial Bus FlashDisk,通用串行总线闪存盘)等;由于低速存储设备性能的限制可能会导致某个进程或多个进程的访问速度无法得到满足,进而引起进程运行异常。
本申请的发明人在长期研发中发现,目前存在一些利用高速存储设备当做低速存储设备的缓存的方式来改善低速存储设备的访问性能,主要包括:①把低速存储设备作为高速存储设备的扩充空间使用,即在高速存储设备可用空间不足时,把数据往低速存储设备存储;该方案仅是把低速存储设备作为高速存储设备的扩容空间使用,无法解决低速存储设备本身的性能问题,在高速存储设备可用空间不足时,整个系统的访问性能仍旧取决于低速存储设备的访问性能;②把所有访问数据都先存储在高速存储设备上,存到一定数量后再搬到低速存储设备上;该方案可以利用高速存储设备来改善低速存储设备访问性能,但无法对访问环境进行区分,即无法平衡低速存储设备输入输出负载的访问时序驼峰,无法把高速存储设备与低速存储设备的地址进行一一映射,即无法使用高速存储设备来改善低速存储设备的随机访问性能;③根据存储设备的访问性能对存储设备进行分层,然后根据数据的访问频率来决定数据的存放位置,可将高频访问数据放在高速存储设备上,低频访问数据存放在低速存储设备上;该方案中数据存放无法有效兼容现有各种文件系统的数据组织形式,应用场景是对环境数据本身进行分层存储,并不是对低速存储设备进行性能改善。
发明内容
本申请主要解决的问题是提供一种提高访问性能的方法、设备及存储介质,能够提高第二存储设备的访问性能及使用寿命。
为解决上述技术问题,本申请采用的技术方案是:提供一种提高访问性能的方法,该方法包括:从第一存储设备的存储区中选取至少部分存储区作为缓存区;建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表;向第二存储设备发起访问请求,其中,访问请求包括访问地址;在地址映射表包括访问地址时,获取与访问地址对应的缓存区的地址,并向缓存区的地址发起访问。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种提高访问性能的设备,该设备至少包括第一存储设备、第二存储设备以及处理器,其中,第一存储设备的存储区至少包括程序存储区以及缓存区,缓存区的地址与第二存储设备的存储区的地址之间具有映射关系,程序存储区用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的提高访问性能的方法。
为解决上述技术问题,本申请采用的另一技术方案是:提供一种计算机存储介质,该计算机存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的提高访问性能的方法。
通过上述方案,本申请的有益效果是:将第一存储设备的部分存储区作为第二存储设备的缓存区,在第一存储设备的缓存区的地址和第二存储设备的存储区的地址之间建立映射关系,形成地址映射表,在对第二存储设备进行访问时,能够根据地址映射表将访问请求转移到第一存储设备的缓存区的地址,由于第一存储设备的访问性能高于第二存储设备的访问性能,从而提高第二存储设备的访问性能。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的提高访问性能的方法一实施例的流程示意图;
图2是本申请提供的提高访问性能的方法另一实施例的流程示意图;
图3是本申请提供的提高访问性能的方法又一实施例的流程示意图;
图4是本申请提供的提高访问性能的方法再一实施例的流程示意图;
图5是本申请提供的内存、高速存储设备以及低速存储设备的交互示意图;
图6是本申请提供的提高访问性能的设备一实施例的结构示意图;
图7是本申请提供的计算机存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参阅图1,图1是本申请提供的提高访问性能的方法一实施例的流程示意图,该方法包括:
步骤11:从第一存储设备的存储区中选取至少部分存储区作为缓存区。
第一存储设备可以为高速存储设备,其为内置设备,具体地,第一存储可设置于嵌入式设备的内部;第二存储设备可以为低速存储设备;可从高速存储设备上取出一段可用存储空间作为低速存储设备的高速缓冲存储空间,即缓存区。
高速存储设备既可以是复用平台已经使用的高速存储设备的部分存储空间,能够在不添加硬件设备的情况下从软件层面添加缓存区改善低速存储设备的访问性能,如利用EMMC(Embedded Multi Media Card,嵌入式多媒体卡)或NAND闪存等平台已经使用的存储设备,以优化低速存储设备的访问性能,比如,优化SD卡(Secure Digital Memory Card,安全数码卡)或U盘的性能;也可以是单独添加的一个高速存储设备硬件,即缓存区是新增的外接存储设备,如SD卡,该外接存储设备也可以为高速存储设备。
步骤12:建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表。
该地址映射表包括缓存区的地址以及与其对应的第二存储设备的存储区的地址,缓存区的地址的长度可以和与其对应的第二存储设备的存储区的地址的长度不同;该地址映射表可存储在第一存储设备中除缓存区之外的区域,即第一存储设备至少包括两个存储空间,一个存储空间用于存储地址映射表,其他存储空间中的一个作为缓存区;或者该地址映射表也可存储在嵌入式设备的其他内置硬盘中。
步骤13:向第二存储设备发起访问请求。
该访问请求可以为读操作请求和/或写操作请求;该访问请求包括访问地址,该访问地址可以为第二存储设备的存储区的地址。
步骤14:在地址映射表包括访问地址时,获取与访问地址对应的缓存区的地址,并向缓存区的地址发起访问。
如果检测到该访问地址与地址映射表中第二存储设备的存储区的地址相同时,即该访问地址与缓存区的地址有映射关系,此时可向与该访问地址对应的缓存区的地址发起访问。
本实施例的方案可用于优化存储设备的访问性能,可将其应用于数据管理领域;可改善嵌入式设备中低速存储设备的存储性能;平衡低速存储设备的访问驼峰;对于非全双工设备,若同时存在读操作请求和写操作请求,能够同时处理读操作请求和写操作请求,从而优化非全双工设备的访问性能。
区别于现有技术,本实施例提供了一种提高访问性能的方法,将第一存储设备的部分存储区作为第二存储设备的缓存区,在缓存区的地址和第二存储设备的存储区的地址之间建立映射关系,在对第二存储设备进行访问时,能够根据地址映射表将访问请求转移到缓存区的地址,由于第一存储设备的访问性能高于第二存储设备的访问性能,从而提高第二存储设备的访问性能,而且可减少对第二存储设备的访问次数,提高第二存储设备的使用寿命。
参阅图2,图2是本申请提供的提高访问性能的方法另一实施例的流程示意图,该方法包括:
步骤21:对至少两个存储设备的性能进行测试。
存储设备分为高速存储设备和低速存储设备,为了提高访问性能比较低的存储设备的访问性能,可在系统启动时对各个存储设备进行性能测试,以区分高速存储设备和低速存储设备;具体地,可测试存储设备对应的每秒数据吞吐量。
步骤22:将测试性能大于预设性能参数的存储设备记作第一存储设备,其他存储设备记作第二存储设备。
将预设性能参数作为区分高速存储设备和低速存储设备的基准。
步骤23:从第一存储设备的存储区中选取至少部分存储区作为缓存区。
步骤24:建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表。
以上步骤既可以在每次识别低速存储设备时都执行,以方便配置的修改;也可以只在首次识别低速存储设备时执行,以提高低速存储设备的识别性能。
步骤25:向第二存储设备发送读操作请求。
该读操作请求用于读取访问地址所对应的的数据。
步骤26:判断访问地址是否与地址映射表中的地址匹配。
将访问地址与地址映射表进行匹配,以判断地址映射表中是否存储有访问地址。
步骤27:若访问地址与地址映射表中的地址匹配,则读取与访问地址匹配的缓存区中的数据。
若地址映射表中存储有该访问地址,则表明该访问地址与缓存区的地址之间建立了映射关系,此时可以直接读取相应的缓存区中的数据。
步骤28:若访问地址与地址映射表中的地址不匹配,则读取第二存储设备的存储区中访问地址对应的数据。
若地址映射表中未存储有该访问地址,则表明该访问地址与缓存区的地址之间不具有映射关系,此时可以读取低速存储设备中访问地址对应的数据。
本实施例中对低速存储设备进行读操作时,先查找缓存区与低速存储设备之间是否具有映射关系,若在地址映射表中查找到与访问地址对应的缓存区的地址,则访问高速存储设备,否则访问低速存储设备,由此提高低速存储设备的访问性能。
参阅图3,图3是本申请提供的提高访问性能的方法又一实施例的流程示意图,该方法包括:
步骤31:从第一存储设备的存储区中选取至少部分存储区作为缓存区。
步骤32:建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表。
其中,步骤31-32与上述实施例中步骤11-12相同,在此不再赘述。
步骤33:向第二存储设备发送写操作请求。
该写操作请求包括待写入数据。
步骤34:判断访问地址是否与地址映射表中的地址匹配。
步骤35:若访问地址与地址映射表中的地址匹配,则将待写入数据写入与访问地址对应的缓存区的地址中。
对低速存储设备进行写操作时,先查找缓存区与低速存储设备之间是否具有映射关系,若地址映射表中具有与访问地址对应的缓存区的地址,则把待写入数据写到缓存区中的相应地址中。
步骤36:若访问地址与地址映射表中的地址不匹配,则判断当前缓存区中是否具有未映射地址。
在将待写入数据写入缓存区之前,判断当前存储区是否有未映射地址,即判断缓存区是否有未分配的可用空间来存储供待写入数据。
步骤37:若当前缓存区中不具有未映射地址,则对缓存区进行扩充,从第一存储设备的可用存储区中选取部分存储区加入当前缓存区中,以更新缓存区。
若当前缓存区中不具有未映射地址,即当前缓存区中每个地址均与低存储设备中存储区的地址对应,没有剩余可用空间,若所有缓存区均缓存了未同步至第二存储设备的缓存数据,则对当前缓冲区进行扩充,以便于存储待写入数据。
对缓存区进行扩充的前提是第一存储设备还具有可用存储空间,若第一存储设备中不具有可用存储空间,则此时出现待写入数据等待的情况,等到缓存区中一部分数据复制到第二存储设备,便可以重复使用已同步缓存数据到第二存储设备的缓存空间;若具有部分已经将缓存数据同步至第二存储设备的缓存空间,则可以重复使用已同步缓存数据到第二存储设备的缓存空间,建立该缓存空间与第二存储设备之间的新的映射关系,实现缓存区的循环重复利用。
步骤38:若当前缓存区中具有未映射地址,建立访问地址与缓存区的未映射地址之间、缓存区的未映射地址与第二存储设备的存储区的地址之间的映射关系,更新地址映射表,并将待写入数据写入缓存区中。
该未映射地址为缓存区中未与第二存储设备的存储区的地址映射的地址;若储映射表中不具有与访问地址对应的缓存区的地址,则在缓存区中分配可用地址,并在地址映射表中建立可用地址与访问地址之间、缓存区的未映射地址与第二存储设备的存储区的地址之间的映射关系,并更新地址映射表。
步骤39:将缓存区的地址所对应的状态标识位更改为不可用。
该缓存区为具有缓存数据,且缓存数据未同步至第二存储设备的空间;该地址映射表还包括状态标识位,状态标识位用于指示缓存区的地址是否可用;具体地,该地址映射表可包括多个映射项,每个映射项包括高速存储设备的起始地址和长度、低速存储设备的起始地址和长度以及状态标识位;在待写入数据写入缓存区,但还未从缓存区同步到第二存储设备前,在地址映射表中标记该空间不可使用,以防止重复使用,导致数据的覆盖。缓存数据同步至第二存储设备的空间后,仍然将缓存器空间的状态标记为不可使用,直到有新的数据需要写入到缓存空间时,才将该缓存器空间的状态标记为可用。这样,如果在此期间接收到读操作请求,且读操作对应的待读出数据的地址与当前地址映射表匹配成功,则可以直接从缓存区中读出该地址对应的数据,而不是从第二存储设备上读出,由于缓存区位于高速存储设备,第二存储设备为低速存储设备,因此,提高了读数据的速度。
向低存储设备发起写操作时,若访问地址与地址映射表成功匹配,则把数据写到高速存储设备中缓存区的相应地址中,并把该地址的映射项置为不可用;若访问地址未与地址映射表成功匹配,则在高速存储设备的可用空间内扩充缓存区,对缓存区新扩充的空间创建新的映射项,或者重复利用同步缓存数据到第二存储设备的缓存空间,将其对应地址的映射项的状态置位为可用,写入访问地址数据后,再次把该地址的映射项置为不可用;降低了对低速存储设备的写操作频率,从而提高低速存储设备的使用寿命。
参阅图4和图5,图4是本申请提供的提高访问性能的方法再一实施例的流程示意图,图5是本申请提供的内存、高速存储设备以及低速存储设备的交互示意图,该方法包括:
步骤41:检测第一存储设备的已用存储区,从第一存储设备的可用存储区中选择部分存储区作为缓存区,并对缓存区进行初始化。
可利用监控程序对高速存储设备进行测试,测量其已用存储空间,分配并初始化一段空间作为缓存区;其中,监控程序既可以是kernel(实时操作系统)中的一个线程,也可以是用户空间的一个服务。
该缓存区的配置可通过多种方式实现,如使用固定分区作为缓存区、分配指定大小的可用存储空间作为缓存区或分配指定比例的可用存储空间作为缓存区等方式,比如缓存区为高速存储设备的可用存储空间的一半等。
步骤42:建立缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表。
步骤43:向第二存储设备发起访问请求。
其中,步骤42-43与上述实施例中步骤12-13相同,在此不再赘述。
步骤44:将地址映射表复制到内存中,判断是否具有与访问地址匹配的缓存区的地址。
把高速存储设备上的地址映射表复制到内存中供查询,以提高映射本身访问速度;还可通知其他模块该低速存储设备已可用。
步骤45:若具有与访问地址对应的缓存区的地址,则向缓存区的地址发起访问。
当访问低速存储设备上的数据时,先检查内存中的地址映射表;如果该访问地址与地址映射表中存储的地址匹配,则向与该访问地址对应的存储区的地址发起访问。
在进行读操作时,如果数据已缓存在缓存区,则把数据从缓存区对应的地址读出,否则从低速存储设备中读取数据。在进行写操作时,如果该数据待写入的地址已缓存在缓存区,则把数据刷到缓存区对应的地址中,如果数据待写入的地址未缓存在缓存区,其包含地址未缓存以及地址未完全缓存两种情况,则先更新地址映射表,建立缓存区与低速存储设备之间的地址映射关系,然后再把数据刷到缓存区的相应地址中。
步骤46:监控第二存储设备的输入输出负载。
在系统运行期间,可利用监控程序监控系统中低速存储设备的输入输出负载,以判断低速存储设备的负载是否比较大,以便同步缓存区的数据至低速存储设备上。
步骤47:判断当前第二存储设备的输入输出负载是否小于预设输入输出负载。
该预设输入输出负载可动态调整或静态调整,如初始测量到的低速存储设备的访问性能为写速度:10M/s,读速度:20M/s;当低速存储设备的数据吞吐量低于写速度5M/s、读速度10M/s时,进行数据的搬移;从而优化同步数据的性能以及降低同步数据操作对其他并发访问低速存储设备操作性能的影响。
步骤48:若当前第二存储设备的输入输出负载小于预设输入输出负载,则将缓存区中的数据复制到对应的第二存储设备的存储区中,并在向第二存储设备写入新的待写入数据时,将状态标识位更新为可用。
当监控到低速存储设备的输入输出负载比较低时,按照地址映射表中的映射项把高速存储设备上缓存的数据同步到对应的低速存储设备的地址上,并在需要写入新的数据时,回收高速存储设备上的存储空间,标记该缓存区的地址可用,在优化访问性能的同时,可以回收高速存储设备的缓存空间与映射项;如果没有新的待写入数据,则可以在接收到读命令时,对缓存区执行读操作,有助于提高读速度。
此外,还可以在系统运行过程中可由监控程序动态测试高速存储设备的可用存储空间,进而调整高速存储设备的缓存区的大小;还可在缓存区的可用空间低于一定空间阈值时,该空间阈值可动态调整或静态调整,将缓存区中的数据同步至低速存储设备上,从而保证缓存区能够满足未来的写操作需求。
进一步地,可利用监控程序监测缓存区的可用存储区,并判断当前缓存区的可用存储区是否小于预设存储区;若当前缓存区的可用存储区小于预设存储区,则将缓存区中的数据复制到对应的第二存储设备的存储区中,并将状态标识位更新为可用。
同步高速存储设备的缓存区中的数据之后,把与数据对应的地址映射表中的状态标识位标记为可用,该段缓存空间以及地址映射表中的映射项均可以用于下次分配使用,同时可以保证该段缓存空间在下次被分配使用之前可以起到数据缓冲的作用,进而改善低速存储设备的访问性能。
本实施例中采用高速存储设备中部分未使用的存储空间作为低速存储设备的缓存;利用监控程序监控低速存储设备的访问性能,在负载较轻时进行数据同步;高速存储设备作为缓存,访问缓存区的速度必然比刷到低速存储设备上要快,即访问操作可以更快返回,可以提高低速存储设备的访问性能;且在低速存储设备负载较低时搬运数据,可以避免短时间内密集地访问低速存储设备,使低速存储设备的访问在时间上得到均衡处理,平衡低速存储设备的访问驼峰;由于高速存储设备上的数据不会因为断电等操作而丢失,保证了写操作即使没有真实的刷到低速存储上也不会导致数据丢失,下次识别低速存储设备后可以正常获取数据。另外,多级高速存储设备也可通过本申请中的方案来为低速存储设备提供多级高速缓冲区,从而改善低速存储设备的访问性能。
参阅图6,图6是本申请提供的提高访问性能的设备一实施例的结构示意图,提高访问性能的设备60至少包括第一存储设备61、第二存储设备62以及处理器63,其中,第一存储设备61的存储区611至少包括缓存区6111以及程序存储区6112,缓存区6111的地址与第二存储设备62的存储区621的地址之间具有映射关系,程序存储区6112用于存储计算机程序,计算机程序在被处理器63执行时,用于实现上述实施例中的提高访问性能的方法。
参阅图7,图7是本申请提供的计算机存储介质一实施例的结构示意图,计算机存储介质70用于存储计算机程序71,计算机程序71在被处理器执行时,用于实现上述实施例中的提高访问性能的方法。
存储介质70可以是服务端、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (13)
1.一种提高访问性能的方法,其特征在于,包括:
从第一存储设备的存储区中选取至少部分存储区作为缓存区;
建立所述缓存区的地址与第二存储设备的存储区的地址之间的映射关系,得到地址映射表;
向所述第二存储设备发起访问请求,其中,所述访问请求包括访问地址;
在所述地址映射表包括所述访问地址时,获取与所述访问地址对应的所述缓存区的地址,并向所述缓存区的地址发起访问。
2.根据权利要求1所述的提高访问性能的方法,其特征在于,所述访问请求为读操作请求,所述向所述第二存储设备发起访问请求,在所述地址映射表包括所述访问地址时,获取与所述访问地址对应的所述缓存区的地址,并向所述缓存区的地址发起访问的步骤,包括:
向所述第二存储设备发送所述读操作请求;
判断所述访问地址是否与所述地址映射表中的地址匹配;
若是,则读取与所述访问地址匹配的所述缓存区中的数据;若否,则读取所述第二存储设备的存储区中访问地址对应的数据。
3.根据权利要求1所述的提高访问性能的方法,其特征在于,所述访问请求为写操作请求,所述向所述第二存储设备发起访问请求,在所述地址映射表包括所述访问地址时,获取与所述访问地址对应的所述缓存区的地址,并向所述缓存区的地址发起访问的步骤,包括:
向所述第二存储设备发送所述写操作请求,其中,所述写操作请求包括待写入数据;
判断所述访问地址是否与所述地址映射表中的地址匹配;
若是,则将所述待写入数据写入与所述访问地址对应的所述缓存区的地址中;若否,则建立所述访问地址与所述缓存区的未映射地址之间、所述缓存区的未映射地址与所述第二存储设备的地址之间的映射关系,更新所述地址映射表,并将所述待写入数据写入所述缓存区中。
4.根据权利要求3所述的提高访问性能的方法,其特征在于,所述建立所述访问地址与所述缓存区的未映射地址之间、所述缓存区的未映射地址与所述第二存储设备的地址之间的映射关系,更新所述地址映射表,并将所述待写入数据写入所述缓存区中的步骤之前,还包括:
判断当前缓存区中是否具有所述未映射地址;
若否,则对所述缓存区进行扩充,从所述第一存储设备的可用存储区中选取部分存储区加入所述当前缓存区中,以更新所述缓存区。
5.根据权利要求3所述的提高访问性能的方法,其特征在于,所述地址映射表还包括状态标识位,所述状态标识位用于指示所述缓存区的地址是否可用,所述方法还包括:
将所述缓存区的地址所对应的状态标识位更改为不可用;
其中,所述缓存区为具有缓存数据,且所述缓存数据未同步至所述第二存储设备的空间。
6.根据权利要求5所述的提高访问性能的方法,其特征在于,所述方法还包括:
监控所述第二存储设备的输入输出负载;
判断当前所述第二存储设备的输入输出负载是否大于预设输入输出负载;
若否,则将所述缓存区中的数据复制到对应的所述第二存储设备的存储区中,并在向所述第二存储设备写入新的待写入数据时,将所述状态标识位更新为可用。
7.根据权利要求5所述的提高访问性能的方法,其特征在于,所述方法还包括:
监测所述缓存区的可用存储区,并判断当前所述缓存区的可用存储区是否小于预设存储区;
若是,则将所述缓存区中的数据复制到对应的所述第二存储设备的存储区中,并将所述状态标识位更新为可用。
8.根据权利要求1所述的提高访问性能的方法,其特征在于,所述从第一存储设备的存储区中选取至少部分存储区作为缓存区的步骤,包括:
检测所述第一存储设备的已用存储区,从所述第一存储设备的可用存储区中选择部分存储区作为所述缓存区,并对所述缓存区进行初始化。
9.根据权利要求1所述的提高访问性能的方法,其特征在于,所述从第一存储设备的存储区中选取至少部分存储区作为缓存区的步骤之前,包括:
对至少两个存储设备的性能进行测试;
将测试性能大于预设性能参数的存储设备记作所述第一存储设备,其他存储设备记作所述第二存储设备。
10.根据权利要求1所述的提高访问性能的方法,其特征在于,
所述第一存储设置于嵌入式设备的内部。
11.根据权利要求1所述的提高访问性能的方法,其特征在于,
所述第一存储设备为EMMC或NAND闪存。
12.一种提高访问性能的设备,其特征在于,至少包括第一存储设备、第二存储设备以及处理器,其中,所述第一存储设备的存储区至少包括程序存储区以及缓存区,所述缓存区的地址与所述第二存储设备的存储区的地址之间具有映射关系,所述程序存储区用于存储计算机程序,所述计算机程序在被所述处理器执行时,用于实现权利要求1-11中任一项所述的提高访问性能的方法。
13.一种计算机存储介质,用于存储计算机程序,其特征在于,所述计算机程序在被处理器执行时,用于实现权利要求1-11中任一项所述的提高访问性能的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910650136.XA CN110442533A (zh) | 2019-07-18 | 2019-07-18 | 一种提高访问性能的方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910650136.XA CN110442533A (zh) | 2019-07-18 | 2019-07-18 | 一种提高访问性能的方法、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110442533A true CN110442533A (zh) | 2019-11-12 |
Family
ID=68430718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910650136.XA Pending CN110442533A (zh) | 2019-07-18 | 2019-07-18 | 一种提高访问性能的方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442533A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111026678A (zh) * | 2019-12-23 | 2020-04-17 | 深圳忆联信息系统有限公司 | 基于固态硬盘的缓存设计方法、装置及计算机设备 |
CN111125019A (zh) * | 2019-12-20 | 2020-05-08 | 北京无线电测量研究所 | 文件检索方法、写入方法、系统、fpga芯片及装置 |
CN112527698A (zh) * | 2020-12-04 | 2021-03-19 | 联想(北京)有限公司 | 一种处理方法、装置及设备 |
CN114063917A (zh) * | 2021-11-11 | 2022-02-18 | 天津兆讯电子技术有限公司 | 快速读取程序数据的方法和微控制器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102981979A (zh) * | 2012-11-15 | 2013-03-20 | 上海爱数软件有限公司 | 一种提高存储系统数据访问速度的方法 |
US8595426B2 (en) * | 2011-04-11 | 2013-11-26 | Sandisk Il Ltd. | Handling commands within a write-once read-many storage device configuration |
CN103744864A (zh) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | 缓存数据读写的方法、系统及其固态硬盘 |
CN106055487A (zh) * | 2016-05-31 | 2016-10-26 | 上海爱数信息技术股份有限公司 | 一种分区着色实现存储系统加速的方法及系统 |
US10007464B1 (en) * | 2016-12-23 | 2018-06-26 | Advanced Micro Devices, Inc. | Method and apparatus for integration of non-volatile memory |
-
2019
- 2019-07-18 CN CN201910650136.XA patent/CN110442533A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595426B2 (en) * | 2011-04-11 | 2013-11-26 | Sandisk Il Ltd. | Handling commands within a write-once read-many storage device configuration |
CN102981979A (zh) * | 2012-11-15 | 2013-03-20 | 上海爱数软件有限公司 | 一种提高存储系统数据访问速度的方法 |
CN103744864A (zh) * | 2013-12-17 | 2014-04-23 | 记忆科技(深圳)有限公司 | 缓存数据读写的方法、系统及其固态硬盘 |
CN106055487A (zh) * | 2016-05-31 | 2016-10-26 | 上海爱数信息技术股份有限公司 | 一种分区着色实现存储系统加速的方法及系统 |
US10007464B1 (en) * | 2016-12-23 | 2018-06-26 | Advanced Micro Devices, Inc. | Method and apparatus for integration of non-volatile memory |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111125019A (zh) * | 2019-12-20 | 2020-05-08 | 北京无线电测量研究所 | 文件检索方法、写入方法、系统、fpga芯片及装置 |
CN111026678A (zh) * | 2019-12-23 | 2020-04-17 | 深圳忆联信息系统有限公司 | 基于固态硬盘的缓存设计方法、装置及计算机设备 |
CN111026678B (zh) * | 2019-12-23 | 2021-11-16 | 深圳忆联信息系统有限公司 | 基于固态硬盘的缓存设计方法、装置及计算机设备 |
CN112527698A (zh) * | 2020-12-04 | 2021-03-19 | 联想(北京)有限公司 | 一种处理方法、装置及设备 |
CN112527698B (zh) * | 2020-12-04 | 2024-03-22 | 联想(北京)有限公司 | 一种处理方法、装置及设备 |
CN114063917A (zh) * | 2021-11-11 | 2022-02-18 | 天津兆讯电子技术有限公司 | 快速读取程序数据的方法和微控制器 |
CN114063917B (zh) * | 2021-11-11 | 2024-01-30 | 天津兆讯电子技术有限公司 | 快速读取程序数据的方法和微控制器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442533A (zh) | 一种提高访问性能的方法、设备及存储介质 | |
CN105740164B (zh) | 支持缓存一致性的多核处理器、读写方法、装置及设备 | |
US9058112B2 (en) | Retrieving data in a storage system using thin provisioning | |
CN104115134B (zh) | 用于管理对复合数据存储设备进行访问的方法和系统 | |
CN106776368B (zh) | 一种数据读取时的缓存管理方法、装置及系统 | |
CN103246616B (zh) | 一种长短周期访问频度的全局共享缓存替换方法 | |
CN105930282B (zh) | 一种用于nand flash的数据缓存方法 | |
CN109800185B (zh) | 一种数据存储系统中的数据缓存方法 | |
US20170242794A1 (en) | Associative and atomic write-back caching system and method for storage subsystem | |
CN105549905A (zh) | 一种多虚拟机访问分布式对象存储系统的方法 | |
CN105339910B (zh) | 在混合驱动器中的虚拟nand容量扩展 | |
CN102306503B (zh) | 一种假容量存储器的检测方法及系统 | |
CN108604165A (zh) | 存储装置 | |
CN106201335B (zh) | 存储系统 | |
US9372641B2 (en) | Sliding-window multi-class striping | |
CN107992430A (zh) | 闪存芯片的管理方法、装置及计算机可读存储介质 | |
CN105897859B (zh) | 一种存储系统 | |
CN112632069B (zh) | 哈希表数据存储管理方法、装置、介质和电子设备 | |
US10635356B2 (en) | Data management method and storage controller using the same | |
CN108762668A (zh) | 一种处理写入冲突的方法及装置 | |
CN108427537A (zh) | 分布式存储系统及其文件写入优化方法、客户端处理方法 | |
CN110377233A (zh) | Ssd读性能优化方法、装置、计算机设备及存储介质 | |
CN107341114A (zh) | 一种目录管理的方法、节点控制器和系统 | |
CN115794669A (zh) | 一种扩展内存的方法、装置及相关设备 | |
CN111488125A (zh) | 一种基于Ceph集群的Cache Tier缓存优化方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191112 |