数据缓存方法及装置制造方法及图纸

技术编号:10162470 阅读:109 留言:0更新日期:2014-07-01 18:09
本发明专利技术提供了一种数据缓存方法及装置。其中,数据缓存方法包括:分析服务器数据库接收的客户端请求,确定客户端请求的接收规则;根据接收规则预测并生成一组数据,其中,生成的数据为:以接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的数据;判断服务器的数据缓存中是否存储有全部生成的数据,若否,则获取未存储在数据缓存中的部分数据,并添加到数据缓存中。采用本发明专利技术提供的数据缓存方法能够根据接收规则识别出客户端请求查阅的数据,及时清除客户端不需要的数据,节省缓存空间,更加合理有效地对数据进行缓存,解决现有技术中无法将数据全部保存至内存的问题。

【技术实现步骤摘要】
【专利摘要】本专利技术提供了一种数据缓存方法及装置。其中,数据缓存方法包括:分析服务器数据库接收的客户端请求,确定客户端请求的接收规则;根据接收规则预测并生成一组数据,其中,生成的数据为:以接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的数据;判断服务器的数据缓存中是否存储有全部生成的数据,若否,则获取未存储在数据缓存中的部分数据,并添加到数据缓存中。采用本专利技术提供的数据缓存方法能够根据接收规则识别出客户端请求查阅的数据,及时清除客户端不需要的数据,节省缓存空间,更加合理有效地对数据进行缓存,解决现有技术中无法将数据全部保存至内存的问题。【专利说明】数据缓存方法及装置
本专利技术涉及数据缓存
,特别是涉及一种数据缓存方法及装置。
技术介绍
现有技术中,为了提高应用程序的性能,在客户端或服务器增加数据缓存层,如缓存系统可加在应用程序端或数据库服务器上。应用程序从数据库服务器中预先获取数据并保存在非持久化存储器中,当客户端发送请求时,应用程序从数据缓存中检索数据并返回至客户端。随着信息网络技术的发展,服务器的内存持续增长,但磁盘的存储能力却以更快的速度增长。服务器的内存与磁盘的存储能力增长速度不一致导致内存容量与磁盘容量的比率下降,因此需要一个更加有效的方法进行数据缓存。现有技术中通常采用两种数据缓存技术。一种采用预先填充模式(还可以称为批处理模式),在客户端开始请求数据之前批量填充数据缓存。另一种采用按需填充模式(还可以称为实时填充模式),在每次请求数据时填充数据缓存。采用这两种数据缓存技术能够提高性能,但是存在如下缺陷:第一,当应用程序需要检索大量数据时,数据缓存不能将所有的数据保存在内存中;第二,如果数据缓存采用实时填充模式,第一条请求消耗大量响应时间;第三,如果数据缓存采用预先填充模式,缓存的数据量太大,导致内存中的缓存容量不足以存储大批量的缓存数据;第四,如果数据缓存采用预先填充数据模式,当缓存容量已满,必须删除部分数据,通常采用一个简单的FIFO (先进先出)策略或LRU (最近最少使用)策略选择缓存中哪些数据将清除。但是,上述策略无法保证数据缓存中保存的是最重要的数据,因此,无法保证当客户端请求到达时必要的数据已经存在于数据缓存中。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的数据缓存方法和相应的装置。依据本专利技术的一个方面,提供了一种数据缓存方法,包括:分析服务器数据库接收的客户端请求,确定客户端请求的接收规则;根据所述接收规则预测并生成一组数据,其中,所述生成的数据为:以所述接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的数据;判断所述服务器的数据缓存中是否存储有全部所述生成的数据,若否,则获取未存储在所述数据缓存中的部分数据,并添加到所述数据缓存中。可选地,所述客户端请求包括:所述服务器数据库中存储的历史客户端请求;和/或对所述服务器数据库中的客户端请求进行分析时,所述服务器实时接收客户端请求,其中,实时指与对服务器数据库中的客户端请求进行分析时同步进行。可选地,所述历史客户端请求从多维表达式MDX查询仓库中获取,其中,所述MDX查询仓库存储有所述服务器的所有历史记录。可选地,客户端请求的格式包括下列至少之一:结构化查询语言SQL格式;可扩展标识语言XML格式;MDX格式。可选地,客户端请求的属性包括下列至少之一:客户端请求的名称;客户端请求的请求日期;客户端请求的解析元素;客户端请求的格式。可选地,所述确定客户端请求的接收规则,包括:使用数据挖掘算法确定客户端请求的接收规则。可选地,所述数据挖掘算法包括下列至少之一:聚类算法、关联算法、序列算法、分类算法以及回归算法。可选地,所述数据缓存方法还包括:分析所述数据缓存中存储的数据;以数据分析操作时间为始,确定未来第二指定时间段内不会被请求查阅的过期数据;清除所述过期数据。可选地,所述数据缓存采用如下任意一种存储器实现:持久化存储器;非持久化存储器;持久化存储器与非持久化存储器结合的结合存储器。依据本专利技术的另一个方面,还提供了一种数据缓存装置,包括:规则确定模块,配置为分析服务器数据库接收的客户端请求,确定客户端请求的接收规则;数据生成模块,配置为根据所述接收规则预测并生成一组数据,其中,所述生成的数据为:以所述接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的数据;数据补充模块,配置为判断所述服务器的数据缓存中是否存储有全部所述生成的数据,若否,则获取未存储在所述数据缓存中的部分数据,并添加到所述数据缓存中。依据本专利技术实施例能够分析服务器数据库接收的客户端请求,确定客户端请求的接收规则。确定接收规则之后,依据本专利技术实施例能够根据接收规则,预测并生成以接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的一组数据。并且,当判断服务器的数据缓存中未能存储的生成的全部数据时,获取未存储的部分数据并添加到数据缓存中。当应用程序需要检索大量数据时,采用本专利技术实施例提供的数据缓存方法能够确定客户端请求的接收规则,根据接收规则识别出客户端请求查阅的数据,及时清除客户端不需要的数据,节省缓存空间。因此,依据本专利技术实施例能够更加合理有效地对数据进行缓存,解决现有技术中无法将数据全部保存至内存的问题。另外,本专利技术实施例提供的数据缓存方法能够在采用批处理模式进行数据缓存时,预测未来第一指定时间段内客户端请求查阅的数据,解决了现有技术中无法使用缓存动态预估客户端请求的问题,减少响应时间的消耗,降低客户端请求的时间成本。由于本专利技术实施例提供的数据缓存方法能够预测未来第一指定时间段内客户端请求查阅的数据,并及时清除过期数据,依据本专利技术实施例提供的数据缓存方法能够避免由于缓存的数据量太大导致内存中的缓存容量不足以存储大批量的缓存数据的问题。而本专利技术实施例提供的数据缓存方法中根据确定的接收规则预测并生成一组数据能够保证数据缓存中保存最被需要的数据,进而能够保证当客户端请求到达时必要的数据已经存在于数据缓存中。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的【具体实施方式】。根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。【专利附图】【附图说明】通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本专利技术一个实施例的数据缓存方法的处理流程图;图2示出了根据本专利技术一个优选实施例的多层体系架构的结构示意图;图3示出了根据本专利技术一个优选实施例的数据源为关系数据库的数据缓存方法的处理流程图;图4示出了根据本专利技术一个优选实施例的数据源为MDX查询仓库的数据缓存方法的处理流程图;图5示出了根据本专利技术一个实施例的采用批处理模式的数据缓存方法的处理流程图;图6示出了根据本专利技术一个实施例的采用实施模式的数据缓存方法的处理本文档来自技高网
...
数据缓存方法及装置

【技术保护点】
一种数据缓存方法,其特征在于,包括:分析服务器数据库接收的客户端请求,确定客户端请求的接收规则;根据所述接收规则预测并生成一组数据,其中,所述生成的数据为:以所述接收规则的确定时间为始,未来第一指定时间段内客户端请求查阅的数据;判断所述服务器的数据缓存中是否存储有全部所述生成的数据,若否,则获取未存储在所述数据缓存中的部分数据,并添加到所述数据缓存中。

【技术特征摘要】

【专利技术属性】
技术研发人员:兰君颜佩琼田蕾
申请(专利权)人:中标软件有限公司
类型:发明
国别省市:上海;31

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

1