当前位置: 首页 > 专利查询>SAP欧洲公司专利>正文

用于数据库事务的并发请求处理制造技术

技术编号:10815104 阅读:101 留言:0更新日期:2014-12-24 19:23
一种请求处理器,可以接收对将要使用数据库的数据运行的事务的事务请求,并且可以将该事务请求的第一事务请求分类为简单事务请求,并且将该事务请求的第二事务请求分类为复杂事务请求。键值存储引擎可以使用在收到第一事务请求的之前确定的、并且基于该数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,并且如果有的话可以更新反映由第一事务引起的键值存储的改变的键值Δ。关系存储引擎可以造成所述至少一个处理器使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务,并且如果有的话可以更新反映由第二事务引起的关系存储的改变的关系Δ。同步器可以基于键值Δ和关系Δ来运行键值存储和关系存储的同步。

【技术实现步骤摘要】
【专利摘要】一种请求处理器,可以接收对将要使用数据库的数据运行的事务的事务请求,并且可以将该事务请求的第一事务请求分类为简单事务请求,并且将该事务请求的第二事务请求分类为复杂事务请求。键值存储引擎可以使用在收到第一事务请求的之前确定的、并且基于该数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,并且如果有的话可以更新反映由第一事务引起的键值存储的改变的键值Δ。关系存储引擎可以造成所述至少一个处理器使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务,并且如果有的话可以更新反映由第二事务引起的关系存储的改变的关系Δ。同步器可以基于键值Δ和关系Δ来运行键值存储和关系存储的同步。【专利说明】用于数据库事务的并发请求处理
此说明书涉及用于数据库的事务请求处理。
技术介绍
各种类型的数据库通常用于存储、管理、访问或者利用数据。在关联的数据库操作中,可以读取、创建、更新、删除、比较、合并或操纵数据。 在实践中,可以由许多不同的用户以重叠或并行的方式访问给定数据库。例如,许多用户可以在给定时间段之内向相同的数据库提交重叠的事务请求。在这种场景中,重要的是数据库之内的数据保持当前(current)、精确和一致。例如,在使用相同的数据满足来自第二用户的请求之前必须完成由第一用户做出的数据修改并使之可用,以便保证第二用户接收及时和精确的结果。 因此,可以延迟来自用户的事务请求直到与相同数据相关的先前的事务请求已经完成。在一些情况下,由给定用户感受到的结果延迟可以是极小或微小的。然而,在接收到大量并行事务请求的诸如上面谈到的那些情景中,用户可能感受不满意或不可接受的累积的延迟。 例如,具体地,诸如电子商务(e-co_erce)或社交网络应用之类的基于网络的应用可以使上百万的用户能同时地尝试访问支持相应基于网络的应用的一个或多个数据库。因此在这种场景中以上描述的困难可能是显著的问题。作为结果,这种基于网络的应用的用户(例如,顾客)可能不满意,并且提供基于网络的应用的商户会感受在顾客的忠诚度和盈利方面的损失。
技术实现思路
根据一个一般方面,一种系统可以包括记录在计算机可读介质上的、并且可由至少一个处理器运行的指令。所述系统可以包括请求处理器,被配置为造成所述至少一个处理器接收对将要使用数据库的数据运行的事务的事务请求,并且还被配置为造成所述至少一个处理器将该事务请求的第一事务请求分类为简单事务请求,并且将该事务请求的第二事务请求分类为复杂事务请求。所述系统可以包括键(key)值存储引擎,被配置为造成所述至少一个处理器使用在接收到第一事务请求之前确定的并且基于所述数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,并且还被配置为如果有的话则更新反映由第一事务引起的键值存储的改变的键值A(Clelta)t5所述系统可以包括关系存储引擎,被配置为造成所述至少一个处理器使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务,并且还被配置为如果有的话则更新反映由第二事务引起的关系存储的改变的关系Λ。所述系统可以包括同步器,被配置为造成所述至少一个处理器基于键值Δ和关系△来运行键值存储和关系存储的同步。 实施方式可以包括以下特征中的一个或多个。例如,可以在包括数据库的数据库层从至少一个应用接收所述事务请求。 所述请求处理器可以被配置为使用键值存储的预先计算的结果基于描述其满意可能性的特征的分类标准来分类第一事务请求和第二事务请求。结果计算器可以被配置为造成所述至少一个处理器基于将要由请求处理器接收到的将来事务请求的预测可能性来计算键值存储的预先计算的结果。所述同步器可以被配置为造成结果计算器基于键值Λ和关系△与该同步共同地更新预先计算的结果。 所述键值存储引擎可以被配置为确定与第一事务请求关联的键,并且在键值存储之内执行相应值的查找。所述键值存储引擎可以包括无效通知器,被配置为基于键值Λ的更新来更新关系Λ。所述同步器可以被配置为基于关系△和从键值存储引擎的无效通知器接收到的更新来更新关系存储,以及其后清空关系△的内容。 所述关系存储引擎可以包括无效通知器,被配置为基于关系Λ的更新来更新键值Λ。所述同步器可以被配置为基于键值△和从关系存储引擎的无效通知器接收到的更新来更新键值存储,以及其后清空键值△的内容。 所述请求处理器、键值存储引擎、关系存储引擎以及同步器可以在系统的主存储器中实现。所述关系存储引擎可以被配置为造成所述至少一个处理器更新存储在非易失性存储器中的事务记录并且利用由第一事务或第二事务的运行引起的对数据库的任何改变来更新数据库。 根据另一一般方面,用于运行存储在计算机可读存储介质上的指令的计算机实现的方法可以包括:接收对将要使用数据库的数据运行的事务的事务请求,将该事务请求的第一事务请求分类为简单事务请求,以及将该事务请求的第二事务请求分类为复杂事务请求。所述方法可以包括使用在接收到第一事务请求之前确定的以及基于数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务,以及如果有的话则更新反映由第一事务引起的键值存储的改变的键值△。所述方法可以包括如果有的话则更新反映由第二事务引起的关系存储的改变的关系△,以及基于键值△和关系△运行键值存储和关系存储的同步。 实施方式可以包括以下特征中的一个或多个。例如,更新键值Λ可以包括基于键值Λ来更新关系Λ,以及更新关系Λ可以包括基于关系Λ来更新键值Λ。所述同步可以包括基于键值Λ和关系Λ与该同步共同地更新预先计算的结果。 根据另一一般方面,有形地具体实现在非临时性计算机可读存储介质上的计算机程序产品可以包括指令。当所述指令被运行时可以被配置为接收对将要使用数据库的数据运行的事务的事务请求,将该事务请求的第一事务请求分类为简单事务请求,以及将该事务请求的第二事务请求分类为复杂事务请求。当所述指令被运行时可以被配置为使用在接收到第一事务请求之前确定的并且基于该数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,以及使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务。当所述指令被运行时可以被配置为如果有的话则更新反映由第一事务引起的键值存储的改变的键值△,如果有的话则更新反映由第二事务引起的关系存储的改变的关系Δ ,以及基于键值△和关系△来运行键值存储和关系存储的同步。 实施方式可以包括以下特征中的一个或多个。例如,在更新键值Λ中,当所述指令被运行时可以被配置为基于键值Λ来更新关系Λ,在更新关系Λ中,当所述指令被运行时可以被配置为基于关系Λ来更新键值Λ。 所述同步可以包括基于关系△和从键值存储接收到的更新来更新关系存储,以及其后清空关系△的内容。所述同步可以包括基于键值△和从关系存储接收到的更新来更新键值存储,以及其后清空键值△的内容。 所述同步可以包括基于键值Λ和关系Λ与该同步共同地更新预先计算的结果。可以在包括数据库的数据库层从至少一个应用接收所述事务请求。 在附图和下面的描述中阐述一个或多个实施方式的细节。其它特征将由从描述和附图、以及从权利要求书中变得清楚。 【专利附图】【附图说本文档来自技高网
...

【技术保护点】
一种包括记录在计算机可读媒介上的、并且可由至少一个处理器运行的指令的系统,所述系统包括:请求处理器,被配置为造成所述至少一个处理器接收对将要使用数据库的数据运行的事务的事务请求,并且还被配置为致使所述至少一个处理器将该事务请求的第一事务请求分类为简单事务请求,并且将该事务请求的第二事务请求分类为复杂事务请求。键值存储引擎,被配置为造成所述至少一个处理器使用在接收到第一事务请求之前确定的、并且基于数据的预先计算的结果的键值存储来运行满足第一事务请求的第一事务,并且还被配置为如果有的话则更新反映由第一事务引起的键值存储的改变的键值Δ;关系存储引擎,被配置为造成所述至少一个处理器使用包括数据的子集的关系存储来运行满足第二事务请求的第二事务,并且还被配置为如果有的话则更新反映由第二事务引起的关系存储的改变的关系Δ;以及同步器,被配置为造成所述至少一个处理器基于键值Δ和关系Δ运行键值存储和关系存储的同步。

【技术特征摘要】

【专利技术属性】
技术研发人员:董玢魏正隆申永源
申请(专利权)人:SAP欧洲公司
类型:发明
国别省市:德国;DE

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

1