用于减少服务器/数据库系统中锁定发生的方法和系统技术方案

技术编号:10043261 阅读:276 留言:0更新日期:2014-05-14 14:14
本发明专利技术涉及一种用于限制数据库系统中并发请求的数目的计算机实施的方法,所述方法包括以下步骤:在至少一个队列(10)中排列要由所述数据库系统处理的请求;限定对应于所述至少一个队列(10)的并发请求的最大值(SS);监视对应于所述至少一个队列(10)的至少一个队列利用参数,并且基于所述至少一个队列利用参数计算性能值(PF);基于所述性能值(PF),动态调整所述至少一个队列的并发请求的最大值(SS),以便改进系统性能,以及基于动态调整的最大值(SS),动态限制所述至少一个队列(10)的并发请求的数目。

【技术实现步骤摘要】

本专利技术一般地涉及数据库系统的领域,特别涉及服务器访问数据库的数据库系统。更具体地,本专利技术涉及用于限制数据库系统中并发请求的数目并且因此减少服务器/数据库系统中锁定发生的方法和系统。
技术介绍
在传统客户端-服务器架构中,一个或多个节点经由允许客户端和服务器之间的双向通信的网络连接到一个或多个服务器。典型地,服务器接收来自多个源的请求,并且根据规定的处理方案处理它们。更通常地,使用先进先出(FIFO)方法,允许首先接收的请求由服务器首先处理,第二接收的请求第二处理,以此类推。在数据库系统中,使用队列处理客户端的进入请求,以便组织请求的顺序排列。基于发送到服务器的请求和请求客户端从服务器接收响应的时间之间的延迟,建立给定客户端-服务器架构中的服务质量。服务器上的负荷越高,接收响应的延迟更可能增加。在许多情况下,客户端具有内建机制,其使用“超时”设施,以避免对于要回答的请求等待长时间段。在这样的情况下,中止请求,并且即使结果从服务器指向请求客户端,请求客户端也忽视结果,或者不能接收它们,由于连接已经由客户端终止。在一些应用中,客户端生成另一请求,期待该请求将在分配的时间帧内被回答。该方案可能导致服务器队列的额外负荷,从而导致服务器的响应时间的额外延迟。在大的数据库环境中,其中许多客户端连接到服务器发送要处理并推送到数据库的请求,数据库操作可能变为瓶颈,并且影响整体系统性能。当系统性能降低时,客户端不能连接到服务器。典型地,它们试图稍后获得连接,即,服务器连接的数目增加。这导致螺旋式下跌,因为服务器具有许多进入连接,使得由消耗资源的锁定处理降低数据库性能。不良的数据库性能导致请求处理延迟,其转而增加要处理的并发请求的数目。此外,因为触发了超时,所以服务器上长时间等待的请求可能被视为失败,即使它最终被服务器处理。因此,有利的是具有用于处理客户端-服务器环境中的过载情况的机制。更具体地,有利的是具有主动避免超时情况并且允许系统实现最大吞吐量的机制。
技术实现思路
本专利技术实施例的目的是提供改进的计算机实施的方法、计算机可读介质和计算机系统,用于限制数据库系统中并发请求的数目。通过独立权利要求的特征解决该目的。在从属权利要求中给出优选实施例。如果没有另外明确指示,本专利技术的实施例可以相互自由组合。在一个方面中,本专利技术涉及一种用于限制数据库系统中并发请求的数目的计算机实施的方法,所述方法包括以下步骤:-在至少一个队列中排列要由所述数据库系统处理的请求;-限定对应于所述至少一个队列的并发请求的最大值;-监视对应于所述至少一个队列的至少一个队列利用参数,并且基于所述至少一个队列利用参数计算性能值;-基于所述性能值,动态调整所述至少一个队列的并发请求的最大值,以便改进系统性能,以及-基于动态调整的最大值,动态限制所述至少一个队列的并发请求的数目。例如,至少一个队列利用参数是请求的平均处理时间、服务的请求的数目、被拒绝请求的数目、在特定时间段中相对于请求的总数目的被拒绝请求的比率或者基于组合至少两个上述参数的计算的参数等。此外,可以从关于处理请求所需要时间的统计分布的信息(例如,最小处理时间、最大处理时间、处理时间的范围、处理时间的偏差、处理时间的变化等)得到至少一个队列利用参数。所述特征可能是有利的,由于可能取决于数据库服务器的负荷,以其峰值性能运行数据库系统。如果仅仅存在临街负荷,即,性能因子低,那么动态地增加并发的排队请求的数目。相反地,如果系统性能劣化,那么减少并发的排队请求的数目,以便使得系统能够处理请求而没有请求的超时。根据优选实施例,将请求分组在至少两个分组中,其中每个分组与专用队列和并发请求的队列特定最大值相关联。特别在具有大数目的进入的请求的环境中,由锁定处理消耗数据库性能。优选地,根据相互锁定的可能性在分组中排列请求。更可能相互锁定的请求将分配到相同分组。相反地,具有低的相互锁定的可能性的请求将分配到不同分组。例如,还可以根据触发请求的服务的服务ID,根据分析异常堆栈以识别干扰服务的学习机制等进行分组。根据优选实施例,通过在插入队列之前拒绝进入的请求和/或通过将请求移出队列,限制并发请求的数目。优选地,仅以小的步伐改变并发请求的数目,以便以平滑的方式调整当前系统性能。通过在插入队列之前拒绝进入的请求进行。如果锁定超时事件出现,那么系统性能将迅速上升。因此,减少已经排队的并发请求的数目,根据优选实施例,以便允许系统迅速上升。根据优选实施例,对于第一时间段计算所述性能值,其中所述第一时间段的所述性能值用于调整在第二时间段中的并发请求的最大值,所述第二时间段紧接在所述第一时间段之后。优选地,第一时间段的性能值与第二时间段的性能值相比较,以确定性能值的变化。为了动态地改进系统性能,性能值的变化用于调整并发请求的数目。根据优选实施例,通过计数信号量处理并发请求的最大值。使用计数信号量的有点在于可以同时处理各个队列的状态(开/关)以及并发请求的数目。从而可能确定分配到分组的进入的请求是否可以插入队列或者必须被拒绝(开/关)。此外,可以从信号量读取并发请求的最大值。根据优选实施例,选择并发请求的最大值,以便最大化并发请求的数目与请求的平均处理时间的乘积。相对于并发请求的数目绘制并发请求的数目与请求的平均处理时间的乘积示出峰值。在该峰值处,实现最佳系统性能。因此,根据该峰值选择并发请求的最大值。根据优选实施例,基于并发请求的最大值和请求的平均处理时间,动态调整至少一个队列的最大长度。从而,不但改变插入队列的请求的数目,而且改变队列的总长度,以便对于当前系统性能调整队列专用参数。根据优选实施例,在接收数据库的锁定超时之后,减小并发请求的最大值和至少一个队列的最大长度,以便避免进一步的锁定超时。通常,使用根据本专利技术的方法,相当不可能出现锁定超时。然而,在锁定超时事件出现之后,减小并发请求的数目和至少一个队列的长度,使得系统能够迅速上升,因此避免进一步的锁定超时。在进一步的方面中,本专利技术涉及包括用其体现的计算机可读程序代码的计算机可读介质,当由处理器执行所述计算机可读程序代码时,使得处理器执行根据上述实施例的任一的方法。在进一步的方面中,本专利技术涉及一种基于计算机的数据库系统,包括用作数据库客户端的至少一个服务器,包括:-调度器单元,适于在至少一个队列中排列要本文档来自技高网
...
<a href="http://www.xjishu.com/zhuanli/55/201310524569.html" title="用于减少服务器/数据库系统中锁定发生的方法和系统原文来自X技术">用于减少服务器/数据库系统中锁定发生的方法和系统</a>

【技术保护点】
一种用于限制数据库系统中并发请求的数目的计算机实施的方法,所述方法包括以下步骤:‑在至少一个队列(10)中排列要由所述数据库系统处理的请求;‑限定对应于所述至少一个队列(10)的并发请求的最大值(SS);‑监视对应于所述至少一个队列(10)的至少一个队列利用参数,并且基于所述至少一个队列利用参数计算性能值(PF);‑基于所述性能值(PF),动态调整所述至少一个队列的并发请求的最大值(SS),以便改进系统性能;以及‑基于动态调整的最大值(SS),动态限制所述至少一个队列(10)的并发请求的数目。

【技术特征摘要】
2012.10.30 GB 1219442.91.一种用于限制数据库系统中并发请求的数目的计算机实施的方法,所
述方法包括以下步骤:
-在至少一个队列(10)中排列要由所述数据库系统处理的请求;
-限定对应于所述至少一个队列(10)的并发请求的最大值(SS);
-监视对应于所述至少一个队列(10)的至少一个队列利用参数,并且
基于所述至少一个队列利用参数计算性能值(PF);
-基于所述性能值(PF),动态调整所述至少一个队列的并发请求的最大
值(SS),以便改进系统性能;以及
-基于动态调整的最大值(SS),动态限制所述至少一个队列(10)的并
发请求的数目。
2.如权利要求1所述的方法,其中将请求分组在至少两个分组中,其中
每个分组与专用队列(10)和并发请求的队列特定最大值(SS)相关联。
3.如权利要求2所述的方法,其中基于请求与分组中包含的其他请求锁
定的可能性、基于请求的起源或基于请求的服务类型,将请求分配到分组。
4.如权利要求2或3所述的方法,其中实施学习机制,以便导出关于异
常的原因的信息,并且基于导出的信息在至少两个分组中分发请求。
5.如前述任一权利要求所述,其中通过在插入队列(10)之前拒绝进入
的请求和/或通过将请求移出队列(10),限制并发请求的数目。
6.如前述任一权利要求所述,其中对于第一时间段(MP(act)-ΔMP)计算
所述性能值(PF),其中所述第一时间段(MP(act)-ΔMP)的所述性能值(PF)
用于调整在第二时间段(MP(act))中的并发请求的最大值(SS),所述第二时间
段(MP(act))紧接在所述第一时间段(MP(act)-ΔMP)之后。
7.如前述任一权利要求所述,其中选择并发请求的最大值(SS),以便
最大化并发请求的数目与请求的平均...

【专利技术属性】
技术研发人员:BT马莱基P戈塞克J马斯扎莱克GK莱奇J沃尔齐切克
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

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

1