【技术实现步骤摘要】
用于查询资源高速缓存的系统和方法
[0001]本申请是国际申请日为
2017
年
12
月
28
日
、
国家申请号为
201780090982.X、
专利技术名称为“用于查询资源高速缓存的系统和方法”的进入中国国家阶段的
PCT
申请的分案申请
。
[0002]本公开涉及资源高速缓存
。
特别地,本公开涉及选择性地将由查询访问的资源进行高速缓存
。
[0003]权益声明
[0004]本申请要求于
2017
年5月
19
日提交的编号为美国非临时申请
15/600,518
的权益和优先权,该申请通过引用并入本文
。
技术介绍
[0005]高速缓存可以指用于存储数据的硬件和
/
或软件
。
从高速缓存中检索数据通常比从硬盘或远离执行环境的任何存储系统中检索数据更快
。
最常见的是,高速缓存存储最近使用的数据
。
高速缓存可以存储被存储在另一个位置的数据的副本,和
/
或存储计算的结果
。
基于
web
的高速缓存也是常见的,其中服务器和客户端之间的
web
高速缓存存储数据
。
客户端可以比服务器中的数据更快地从
web
高速缓存访问数据
。 >[0006]查询从数据库中获取指定的数据
。
通常,数据存储在关系数据库中
。
关系数据库将数据存储在一个或多个表中
。
这些表由数据行组成,并组织成字段或列
。
例如,“FirstName”和“LastName”是数据表的字段,并且其中行的数量是存储到表的名字的数量
。
[0007]结构化查询语言
(SQL)
是用于管理关系数据库中数据的语言
。SQL
查询基于指定的准则来检索数据
。
大多数
SQL
查询使用检索数据的语句
SELECT(
选择
)。
然后,
SQL
查询可以指定准则,诸如
FROM(
来自
)
‑
哪些表包含数据;
JOIN(
联接
)
‑
指定连接表的规则;
WHERE(
哪里
)
‑
限制由查询返回的行;
GROUPBY(
分组
)
–
聚合重复的行;以及
ORDERBY(
排序
)
‑
指定数据排序的次序
。
例如,
SQL
查询“SELECT breed,age,name FROM Dogs WHERE age<3ORDER BY breed”将通过品种按字母顺序从“Dogs”表中返回3岁以下的狗的列表,从而检索每只狗的品种
、
年龄和名字
。
输出看起来像:“Bulldog 1Max|Cocker Spaniel 2Joey|GoldenRetriever 1.5Belinda”。
[0008]越来越多地使用多租户云体系架构存储数据库
。
在多租户云体系架构中,使用共享资源存储来自不同租户的数据
。
共享资源可以是服务器
、
数据库和
/
或表的全部或部分的某种组合
。
多租户减少了存储数据所需的资源量,从而节省了成本
。
[0009]本部分中描述的方法是可以追求的方法,但不一定是先前已经构思或追求的方法
。
因此,除非另有说明,否则不应认为本部分中描述的任何方法仅仅因为它们包含在本部分中就有资格作为现有技术
。
附图说明
[0010]通过示例而非限制的方式在附图中示出了实施例
。
应当注意的是,在本公开中对
“
一”或“一个”实施例的引用不一定是指同一实施例,并且它们意味着至少一个
。
在附图中:
[0011]图1图示了根据一个或多个实施例的资源高速缓存系统;
[0012]图2图示了根据一个或多个实施例的用于通过查询进行选择性高速缓存的示例操作集;
[0013]图3图示了根据一个或多个实施例的用于通过资源进行选择性高速缓存的示例操作集;
[0014]图4图示了根据一个或多个实施例的用于通过
JOIN
进行选择性高速缓存的示例操作集;
[0015]图5图示了根据一个或多个实施例的系统的框图
。
具体实施方式
[0016]在以下描述中,出于解释的目的,阐述了许多具体细节以提供透彻理解
。
可以在没有这些具体细节的情况下实践一个或多个实施例
。
在一个实施例中描述的特征可以与在不同实施例中描述的特征组合
。
在一些示例中,参考框图形式描述了众所周知的结构和设备,以避免不必要地模糊本专利技术
。
[0017]1.
总体概述
[0018]2.
资源高速缓存系统
[0019]3.
基于查询的资源高速缓存
[0020]4.
基于资源使用的资源高速缓存
[0021]5.
基于操作的资源高速缓存
[0022]6.
示例实施例
‑
聚合查询
[0023]7.
其它事项;扩展
[0024]8.
硬件概述
[0025]1.
总体概述
[0026]一个或多个实施例包括选择性地将由查询访问的资源进行高速缓存
。
可以响应于资源的原始副本被更新而连续地或周期性地更新高速缓存的资源
。
维护高速缓存中的最新资源允许通过访问高速缓存中的资源而不是从盘或其它主存储装置访问资源来执行查询
。
可以至少基于对应查询的执行时间来选择用于高速缓存的资源
。
在示例中,如果查询的执行的执行时间超过阈值,则将查询所访问的资源进行高速缓存,以供将来执行同一查询
。
[0027]一个或多个实施例包括基于查询的执行的累积执行时间来高速缓存查询所访问的资源
。
高速缓存引擎可以在初始时间段期间确定用于查询的执行的累积执行时间
。
高速缓存引擎还可以基于查询的执行的累积执行时间来判定是否要将在查询的执行期间要被访问的资源进行高速缓存
。
在初始时间段之后,可以在另一个时间段内将资源进行高速本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.
一种或多种包括指令的非暂态计算机可读介质,所述指令在由一个或多个硬件处理器执行时,使得执行包括以下的操作:识别在第一时间段期间第一查询的第一多次执行;将第一查询的第一多次执行中的每次执行的执行时间与第一阈值进行比较;识别第一多次执行中的第一执行子集,该第一执行子集具有超过第一阈值的对应执行时间;确定第一执行子集中的执行的第一数量是否超过第二阈值;响应于确定第一执行子集中的执行的第一数量超过第二阈值:在第二时间段内将用于执行第一查询的第一资源进行高速缓存
。2.
如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:识别在第一时间段期间第二查询的第二多次执行;将第二查询的第二多次执行中的每次执行的执行时间与第一阈值进行比较;识别第二多次执行中的第二执行子集,该第二执行子集具有超过第一阈值的对应执行时间;确定第二执行子集中的执行的第二数量是否超过第二阈值;至少响应于确定第二执行子集中的执行的第二数量不超过第二阈值:在第二时间段内避免将用于执行第二查询的第二资源进行高速缓存
。3.
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。