一种访问数据的方法及其装置制造方法及图纸

技术编号:18458442 阅读:32 留言:0更新日期:2018-07-18 12:34
本申请提供了一种访问数据的方法,包括:接收用户的数据访问请求;根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数;当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。因此,本申请提供一种访问数据的方法,能够提高数据读取的效率。

A method and device for accessing data

The present application provides a method for accessing data, including: receiving a user's data access request, and accessing the master cache and N overflow caches in parallel according to the data access request, where the access speed of the master cache is greater than the overflow cache, and the overflow cache is used to cache the overflow data in the main cache described, N As a positive integer; when the target data of the data access request is found in the main cache, the target data is read from the main cache; when the target data is not present in the main cache, but the target data in the I overflow cache in the N overflow cache is from the I overflow. The target data is read in the cache; the target data is read from the main memory when the target data is not present in the main cache and the N overflow cache. Therefore, this application provides a way to access data, which can improve the efficiency of data reading.

【技术实现步骤摘要】
一种访问数据的方法及其装置
本申请涉及计算机领域,并且更具体地,涉及一种访问数据的方法及其装置。
技术介绍
随着处理器的时钟速度增加,主存储器变得更大,当处理器访问主存储器时可能出现较长的延时周期。可实施缓存等级以降低由频繁访问主存储器引起的延时和性能瓶颈。而缓存作为一个或多个小型高速相联存储器,其降低访问主存储器的平均时间。当处理器在主存储器中读取或写入位置时,处理器首先检查缓存存储器中是否存在数据副本,如果存在,处理器指向缓存存储器而不是速度较慢的主存储器。遗憾的是,缓存的大小通常较小及限制存储主存储器内数据的较小的子集。而在缓冲过程中,内部容易频繁“缺失”数据同时缓存的灵活性也相对较低,导致对延时和处理器性能造成负面影响。因此,如何提高降低缓存的数据流失问题,以及缓存的灵活性和可用性,从而增加处理器性能,是目前刻不容缓的问题。
技术实现思路
本申请提供一种访问数据的方法,能够提高数据读取的效率。一方面,提供了一种访问数据的方法,包括:接收用户的数据访问请求;根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数;当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。结合第一方面,在第一方面的第一种可能的实现方式中,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:当所述数据访问请求所指向的目标数据为垃圾数据时,确定所述目标数据为不安全数据;当所述数据访问请求所指向的目标数据不是垃圾数据,确定所述目标数据为安全数据,其中,当判断所述目标数据为安全数据时,根据所述数据访问请求进行所述目标数据的访问,否则,不进行所述目标数据的访问。结合第一方面及其上述实现方式,在第一方面的第二种可能的实现方式中,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:判断所述目标数据大小是否大于阈值,当所述目标数据大小大于所述阈值时,将所述目标数据拆分成M个数据包,以便于对所述M个数据包逐一进行数据访问,其中,M为大于1的正整数。结合第一方面及其上述实现方式,在第一方面的第三种可能的实现方式中,所述N个溢出缓存中每个缓存对应各自的缓存编号,所述N个溢出缓存中的第i+1个溢出缓存用于缓存所述第i个溢出缓存中溢出的数据。第二方面,提供一种访问数据的装置,包括:接收单元,所述接收单元用于接收用户的数据访问请求;处理单元,所述处理单元用于根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数;所述处理单元还用于,当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;所述处理单元还用于,当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;所述处理单元还用于,当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。结合第二方面,在第二方面的第一种可能的实现方式中,所述处理单元还用于:当所述数据访问请求所指向的目标数据为垃圾数据时,确定所述目标数据为不安全数据;当所述数据访问请求所指向的目标数据不是垃圾数据,确定所述目标数据为安全数据,其中,当判断所述目标数据为安全数据时,根据所述数据访问请求进行所述目标数据的访问,否则,不进行所述目标数据的访问。结合第二方面及其上述实现方式,在第二方面的第二种可能的实现方式中,所述处理单元还用于:判断所述目标数据大小是否大于阈值,当所述目标数据大小大于所述阈值时,将所述目标数据拆分成M个数据包,以便于对所述M个数据包逐一进行数据访问,其中,M为大于1的正整数。结合第二方面及其上述实现方式,在第二方面的第三种可能的实现方式中,所述N个溢出缓存中每个缓存对应各自的缓存编号,所述N个溢出缓存中的第i+1个溢出缓存用于缓存所述第i个溢出缓存中溢出的数据。本实施例通过设置多个溢出缓存以及一个主缓存,然后当访问数据时通过先对访问数据的大小及安全进行判断,一旦安全后对数据大小进行判断,防止数据过大影响服务器性能,然后将数据并行发送给主缓存和溢出缓存,实现对数据的并行访问,相比现有技术降低了缓存的数据流失问题,提高了缓存的灵活性和可用性。附图说明图1示出了本申请一个实施例的方法的示意性流程图。图2示出了本申请一个实施例的装置的示意性框图。图3示出了本申请另一实施例装置的示意性框图。具体实施方式下面将结合附图,对本申请中的技术方案进行描述。图1示出了本申请一个实施例的方法的示意性流程图,该方法的执行主体可以为服务器,如图1所示,该访问数据的方法100包括:步骤110,接收用户的数据访问请求。步骤120,根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数。步骤130,当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。也就是说,当接收到数据访问请求时,同时访问主缓存和N个溢出缓存,由于主缓存的访问速度优于溢出缓存,因此,如果率先在主缓存中访问到目标数据,就从主缓存中读取该目标数据,如果在主缓存中没有找到目标数据,但在溢出缓存中访问到目标数据,则从溢出缓存中读取目标数据。本实施例通过设置多个溢出缓存以及一个主缓存,实现对数据的并行访问,相比现有技术降低了缓存的数据流失问题,提高了缓存的灵活性和可用性。可选地,作为本申请一个实施例,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:当所述数据访问请求所指向的目标数据为垃圾数据时,确定所述目标数据为不安全数据;当所述数据访问请求所指向的目标数据不是垃圾数据,确定所述目标数据为安全数据,其中,当判断所述目标数据为安全数据时,根据所述数据访问请求进行所述目标数据的访问,否则,不进行所述目标数据的访问。也就是说,所述数据安全判断是通过判断所述请求数据是否为垃圾数据。可选地,作为本申请一个实施例,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:判断所述目标数据大小是否大于阈值,当所述目标数据大小大于所述阈值时,将所述目标数据拆分成M个数据包,以便于对所述M个数据包逐一进行数据访问,其中,M为大于1的正整数。也就是说,当访问的数据量大于预设范围时,将访问数据量进行划分,然顺序进行访问;当访问的数据量小于或等于预设范围时,根据被访问端收到的时间顺序进行排序,依次访问数据。其中,本文档来自技高网...

【技术保护点】
1.一种访问数据的方法,其特征在于,包括:接收用户的数据访问请求;根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数;当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。

【技术特征摘要】
1.一种访问数据的方法,其特征在于,包括:接收用户的数据访问请求;根据所述数据访问请求并行访问主缓存和N个溢出缓存,其中,所述主缓存的访问速度大于所述溢出缓存,所述溢出缓存用于缓存所述主缓存中溢出的数据,N为正整数;当所述主缓存中存在所述数据访问请求指向的目标数据时,从所述主缓存中读取所述目标数据;当所述主缓存中不存在所述目标数据,但所述N个溢出缓存中的第i个溢出缓存中存在所述目标数据时,从所述第i个溢出缓存中读取所述目标数据;当所述主缓存和所述N个溢出缓存中均不存在所述目标数据时,从主存储器中读取所述目标数据。2.根据权利要求1所述的方法,其特征在于,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:当所述数据访问请求所指向的目标数据为垃圾数据时,确定所述目标数据为不安全数据;当所述数据访问请求所指向的目标数据不是垃圾数据,确定所述目标数据为安全数据,其中,当判断所述目标数据为安全数据时,根据所述数据访问请求进行所述目标数据的访问,否则,不进行所述目标数据的访问。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述数据访问请求并行访问主缓存和N个溢出缓存之前,所述方法还包括:判断所述目标数据大小是否大于阈值,当所述目标数据大小大于所述阈值时,将所述目标数据拆分成M个数据包,以便于对所述M个数据包逐一进行数据访问,其中,M为大于1的正整数。4.根据权利要求1至3中任一项所述的方法,其特征在于,所述N个溢出缓存中每个缓存对应各自的缓存编号,所述N个溢出缓存中的第i+1个溢出缓存用于缓存所述第i个溢出缓存中溢出的数据。5...

【专利技术属性】
技术研发人员:杨瑞君祝可高波
申请(专利权)人:上海应用技术大学
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1