当前位置: 首页 > 专利查询>微软公司专利>正文

对数据库结果及推导目标进行高速缓存和无效的系统和方法技术方案

技术编号:2868924 阅读:236 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及把从数据库查询产生的结果保存在内存中用于当前和随后的使用、并且当所保存的结果变得不一致时使它们无效,从而减少了对不一致结果的采用的系统和方法,所述结果如原始数据、对象、可查询数据集合、全部或部分web应答。所保存的结果可以被一个或多个组件所采用,并且一般在随后查询会返回基本类似的结果时被使用。因此,所述系统和方法减少了对基本上冗余查询的执行,冗余查询会降低性能并且消耗资源。当发生会影响所保存结果的一致性的数据库变化时,以及/或者当期满时段时,可以发送无效消息,其中采用该消息使所保存的结果无效。因此,所述系统和方法减少了对不一致保存结果的采用。此外,可以采用自动重新查询技术自动地刷新不一致结果以获得一致结果。

【技术实现步骤摘要】

本专利技术一般涉及数据库,尤其涉及为随后的使用而保存从数据库产生的结果、并且当它们变得与数据库不一致时无效所保存的结果的系统和方法。
技术介绍
计算和联网技术已经改变了每天生活的许多重要方面。计算机已经成为家用的主要产品,而不是奢侈的教育工具和/或娱乐中心,并且向用户提供了工具来管理并预报财务;控制像取暖、制冷、照明和安全之类的家用操作;并且把记录和图像存储在永久且可靠的媒介中。因特网这样的联网技术向用户提供了对远程系统、信息和相关应用的实际上无限的存取。随着计算和联网技术变得稳健、安全和可靠,更多的用户、批发商、零售商、企业家、教育机构等等改变了范例,并且采用因特网而不是用传统手段来执行商务。例如,许多商务和用户提供了网站和/或在线服务。例如,现在用户可以通过因特网来访问他/她的账户,并且执行越来越多的有效交易,比如余额查询、基金转账以及账单支付。一般而言,因特网会话包括用户与客户应用程序(如web服务器)连接而与数据库服务器相互作用,数据库服务器把信息存储在客户应用程序可以访问的数据库中。例如,股票市场网站可以向用户提供用于检索股票报价并且购买股票的工具。用户可以输入股票符号并且通过点积鼠标来激活查询而请求股票报价。然后,客户应用程序查询数据库有无股票信息并且返回股票报价。同样,用户可以通过提供适当的信息来购买股票,其中提交订购会促使数据库查询范围当前的价格信息和订购状态。随着更多的用户利用这种服务的优点,也消耗了更多带宽,这会降低性能和/或速度,因为带宽是一项有限的资源。另一个缺点是与有效数据数量有关的有限的有效数据传输速率。例如,检索大量数据(如,分布在各个服务器中)的请求可能是时间密集且性能有限的,即使当带宽可用时。通过用户执行频繁且类似的请求而合成了上述内容。例如,希望当前股票报价的用户可以执行频繁的请求来获得更新的报价。因此,用户频繁地消耗带宽来检索基本类似的信息。此外,其他用户可能同时执行检索基本类似信息的请求。用户还受到限制的是,由于所返回的结果在随后的数据库表变化后会变得无效,因此不能保证所检索的数据的一致性。
技术实现思路
下面给出了本专利技术的简要概述,以便提供对本专利技术某些方面的基本理解。这个概述不是本专利技术的广泛综述。它并不意图标识出本专利技术的关键/决定性的元件,或者叙述本专利技术的范围。它唯一的目的是以简化形式给出本专利技术的某些概念,作为稍后给出的更详细的描述的序言。本专利技术涉及当从数据库查询产生的所保存结果由于数据库变化以及/或者由于期满时段而变得无效时用于对所述结果进行无效的系统和方法。因此,本专利技术提供了一种机制,用于查询数据库、保存从数据库查询产生的结果、并且使用所保存的结果直到数据库变化和/或到期时段使结果无效。一般而言,数据库存储可以通过查询数据库而检索到的信息。用户可以与应用程序对接,例如为了获得数据库内存储的至少一部分信息。例如,用户可以采用web服务或者提交与服务器上存储的信息相关的请求。请求会开始有关数据库的一个或多个查询,然后可以使用所述一个或多个查询的结果来产生一个应答,该应答要从该web服务被返回、被显示、被消耗并且/或者进一步被采用。在许多情况下,数据库会成为资源争用的共用源。例如,不止一个用户会发出一个类似请求,该请求同时查询数据库并且返回类似的结果。这种同时查询类似结果会增加数据库负载、减少带宽、降低性能并且消耗资源。在另一示例中,一个或多个用户会频繁地执行返回类似结果的请求。同样,系统性能会经由如数据库负载而被降低。在上述内容之内,数据库表示在多个用户请求和/或用户间共享的状态,而共享的状态争用会限制系统性能和可伸缩性。为减少查询数而一般采用的技术包括把频繁使用的数据(例如,形式为原始数据、经变换的数据、以及可查询形式的数据)保存在数据库外部,并且使用所保存的结果而不是执行另外的查询。然而,由于可能发生随后的数据库变化来提供与数据库不一致的所保存数据而不通知用户,因此所保存的数据的一致性受到损害。本专利技术的系统和方法减少了数据库负载(如减少了对基本类似的信息的查询)、提高了可伸缩性、减少了重复处理、并且确保了数据一致性。所述系统和方法包括把无效信息存储在环境存储体(context bank)内,其中可以根据查询来检索并发送所述无效信息,以便把该查询与查询请求者相关联并且在数据库内注册该查询。从查询产生的结果(如,原始数据、经变换的数据、可查询形式的数据、部分应答和全部应答)可以被保存在数据库外部的可存取存储媒介中,并且被各个用户(如web服务器)使用一次或多次,从而缓和了对基本类似的信息的查询。如果发生会影响所存储结果的数据库变化,则可以发送无效消息以便于使所保存的结果无效,从而减少了用户采用不一致数据的情况。一般使用根据查询发出的无效信息来构成无效消息。此外,可以定义一个到期时段,使得在到期时段期满后所保存的结果会被无效,即使不发生数据库变化。在使所保存的结果无效后,例如,这些结果可以被自动地删除并且/或者自动地刷新。而且,本专利技术的系统和方法可以在web环境中被采用,其中当可以全部或部分地存储从数据库查询产生的web应答并且响应于随后的请求而返回这些应答时,可以实现web服务器资源的等待时间和使用的进一步减少。例如,开发者可以通过在web页面内嵌入注释来请求基于数据库查询产生的应答会被高速缓存,直到查询结果变化为止。注释调用web服务器把数据库相关性与要被高速缓存的应答相关联,并且把与相关性相关的无效消息以及/或者相关性自身存储在环境存储体中。根据到数据库的随后查询而自动地检索并发出所存储的无效信息。如上所述,当数据库发生变化提供了不一致的前面查询的结果时,以及/或者当到期时段期满时,可以在无效消息内采用该无效信息。把无效信息存储在环境存储体中并且使用该信息可以便于例示把无效信息与查询相关联并且保存(如高速缓存)查询应答的基础结构。因此,采用所存储的无效信息减轻了对web服务器(和/或能处理查询请求的其他组件)获悉应答产生的要求。而且,采用所存储的无效信息减轻了对产生应答的组件必须获悉应答怎样被web服务器使用的要求。按照专利技术主题,这里所述的系统和方法采用组件来存储无效信息、执行查询、保存基于查询的结果、接收无效消息以及/或者使所保存的信息无效。此外,可以采用用于异步和同步通信的各种数据传输技术以及安全性技术,这些技术减少了恶意和虚假信息和消息的存在和/或传输。实践中,可以在各种环境中采用所述系统和方法,这些环境包括客户机-服务器和/或基于SQL的环境。为了实现上述及相关的目标,本专利技术包括下面全面描述且在权利要求中特别指出的特征。下面的描述和附图详细提出了本专利技术的某些说明性方面和实施方式。然而,这些表示出其中可采用本专利技术原理的各种方式的一小部分。在参照附图考虑了本专利技术的下列详细描述后,本专利技术的其他目的、优点和新颖性特征将变得更为明显。附图说明图1说明了按照本专利技术一方面的示例性无效注册系统。图2说明了按照本专利技术一方面的示例性无效内存管理系统。图3说明了按照本专利技术一方面的示例性数据库注册和无效系统。图4说明了按照本专利技术一方面的示例性基于web的内存无效系统。图5说明了按照本专利技术一方面的示例性安全性技术。图6说明了按照本专利技术一方面的示例性无效消息传递技术本文档来自技高网
...

【技术保护点】
一种内存无效注册系统,包括:环境存储体,用于存储无效消息;查询管理器,用于把数据库查询及相关的无效信息从所述环境存储体提交到数据库;以及内存,用于存储基于数据库查询的结果,其中所述相关的无效信息由数据库来维持。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:MJ皮索RM海华德C克雷纳曼PYK吴JF诺斯AW史密斯O特鲁特纳FM瓦斯
申请(专利权)人:微软公司
类型:发明
国别省市:US[]

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

1