用于在数据库管理系统中的查询管理的系统和方法技术方案

技术编号:2852593 阅读:187 留言:0更新日期:2012-04-11 18:40
一种用于使用下面这样的控制点策略来管理数据库查询执行的系统、方法和计算机程序产品,该控制点策略可被(1)定义,(2)应用于数据库操作的范围,以及(3)在运行时间被评价以确定是否采取策略行为。控制点策略的“定义”可包括对(1)应用该控制点策略的操作控制点,(2)确定是否将执行该控制点策略的控制点策略过滤器,和(3)将依照该控制点策略执行的控制点策略行为的说明。控制点策略的“应用”包括对(1)数据库管理系统操作的作用域,(2)代表该控制点策略相对于其他控制点策略的优先级的等级,和(3)用于控制点策略执行的操作环境的说明。控制点策略的“评价”可包括在达到相关联的控制点时评价被应用的控制点策略的过滤器说明,以确定是否应采取该策略行为。

【技术实现步骤摘要】

本专利技术涉及数据库管理系统。更具体地,本专利技术涉及查询管理策略在数据库管理服务器内的实现。
技术介绍
作为背景情况,数据库管理系统需要这样的控制,即可被实施以使这种系统的数据库管理服务器适合于改变的工作负荷,查询类型,用户活动等。例如,在实时数据仓库环境下,过多的用户、过多的存储器利用以及由于参照大量数据而导致的差的高速缓存效果,较容易使数据库管理服务器过载。当前数据库管理服务器使用固定的策略管理方法,其中使用静态环境和控制参数设置以间接影响关键执行路径和数据库管理服务器作为数据库资源、工作负荷和用户改变的语义。这种数据库管理服务器没有提供可动态地适应于在运行时间期间可能出现的情况的复杂组合的足够的控制机制。在上述示例内,随着用户数量增大或达到某一阈值,数据库管理员会希望改变并发控制优化以支持高的并发性。类似地,如果认识到特定用户或特定查询非常重要,则数据库管理员可能会希望指定一组可为该特定用户或特定查询优化运行时间的运行时间参数设置。但是,在开发原始应用时,通常不能提前知道特定用户或特定查询。希望提供一种可在数据库管理系统内更灵活地执行策略管理的技术。尤其需要这样一种解决方案,其中策略管理是基于在事务处理期间相对于关键路径和判定点可被动态定义、处理和应用的环境和控制参数的。
技术实现思路
使用用于通过灵活的控制点策略管理数据库查询执行的新系统、方法和计算机程序产品,可解决上述问题并获得本
内的改进,该控制点策略可被(1)定义,(2)应用于数据库操作的范围,以及(3)在运行时间被评价以确定是否采取策略行为。在本专利技术的示例性实施例内,控制点策略的“定义”包括对(1)应用该控制点策略的操作控制点,(2)确定是否执行该控制点策略的控制点策略过滤器,和(3)将依照该控制点策略执行的控制点策略行为的说明。在本专利技术的示例性实施例内,控制点策略的“应用”包括对(1)数据库管理系统操作的作用域,(2)代表该控制点策略相对于其他控制点策略的优先级的等级,和(3)用于控制点策略执行的操作环境的说明。在本专利技术的示例性实施例内,控制点策略的“评价”包括在达到相关联的控制点时评价被应用的控制点策略的过滤器说明,以确定是否应采取该策略行为。本专利技术的其他实施例可包括用于保留被应用的控制点策略评价的历史的控制点跟踪,以及用于维持控制点策略的控制数据库。附图说明从下面结合附图对本专利技术的优选实施例的更详细的说明中,将清楚地了解本专利技术的前述和其他特征及优点,在这些附图中图1是示出示例性数据库管理系统的功能框图,本专利技术可在该数据库管理系统内执行;图2是示出用于评价应用的控制点策略的示例性处理步骤的流程图。具体实施例方式下面将作为由附图所示的示例性实施例说明本专利技术,在附图中类似的标号指示所有附图中的相似元件。参照图1,示出可用于根据本专利技术的一种可能实现执行本专利技术的数据库管理系统2。数据库管理系统2配置以管理数据库6的数据库管理服务器4,该数据库6的数据驻存在一个或多个数据存储子系统8上。一个或多个客户机10通过合适的通信接口例如LAN(局域网)或WAN(广域网)12向数据库管理服务器4传送数据库查询请求。数据库管理服务器4通过调用合适的数据库查询功能来服务于该客户查询请求,并将查询结果返回请求客户机。尽管图2中仅示出一个数据库管理服务器4,但是应理解,可选择地可使用多个数据库管理服务器以提供并行服务器环境。除了在下面的说明中另外提到的之外,数据库管理系统2的前述元件本质上是传统的,并且可使用数据库管理领域公知类型的现有硬件和软件资源来实现。数据库管理服务器4通常(但不总是)被编程成容纳多个客户机10,该客户机可同时连接到该数据库管理服务器4以便发出可能不同类型的数据库查询请求。这些请求可包括常规的联机事务处理(OLTP)请求,其中需要秒以下的响应时间来处理较少的数据库记录。客户机10还自组织地发出处理器密集的决策支持系统(DSS)请求,该请求需要数小时来完成。为了支持上述类型的查询,数据库管理服务器4内的编程将实现通常的一组数据库管理服务器功能14。这些功能包括但并不必局限于各种事务管理、调度和数据管理功能例如查询优化、扫描处理、连接处理、聚集处理、分类处理、收敛处理、最终结果组处理、登记、恢复、索引管理、并发控制、缓冲池管理和并行查询处理。I.对基于控制点策略的查询管理的介绍根据本专利技术,数据库管理服务器4还使用查询管理组件16,该组件允许在数据库管理服务器功能14的执行期间定义、处理并应用控制和管理参数。查询管理组件16不是使用现有技术的静态控制技术试图间接影响关键执行路径和服务器的语义,而是允许关键执行路径和判定点针对直接和动态控制开放。此控制能力的载体就是控制点策略。查询管理组件16执行的控制点策略可定义为用预先指定的行为响应于预定的操作条件(或条件的组合)。一旦被定义,控制点策略还可被修改、补充或删除,从而可将复杂性提高的控制策略应用于数据库管理服务器4而不需要服务器升级。查询管理组件16执行的控制点策略的主要任务是管理服务器4上的查询工作负荷。控制点策略还提供了(1)指定应被监控的全局条件和资源的能力,(2)与客户机10相关联的数据库用户定义数据库管理服务器4内的关心的事件的能力,和(3)定义用户和系统执行的重叠环境的语义的能力。下面,简单地说明由根据本专利技术的查询管理组件16实现的特定的与控制点策略相关的功能·控制点策略定义查询管理组件16的功能之一是允许用户使用与客户机10(以及与数据库管理员系统(未示出))相关联的外部控制包18定义控制点策略。外部控制包18提供了允许客户机和管理员与查询管理组件16的控制点策略定义单元20交互的前端接口。控制点策略定义代表对查询管理组件16的条件和行为的说明。每个控制点策略定义包括对策略针对的操作点、可触发激活该策略的条件过滤器以及将断言的一组行为的说明。应指出,直到已应用控制点定义(见下文)之前,控制点策略应认为是无效的。·控制点策略应用查询管理组件16的另一功能是允许用户通过用具体例子说明控制点策略定义来应用控制点策略。此功能由图1中的标号22指示。从而,将控制点策略的定义与控制点策略的应用分开。一旦已应用控制点策略,就应认为该控制点策略是有效控制点策略。此方法使得可在数据库管理系统2的各种重叠控制范围内选择性地重新使用给定的控制点策略。控制点策略的应用允许明确控制该策略的范围、等级和环境。应用的控制点策略的上下文内的术语“范围”是指数据库管理系统操作的范围,例如指定的数据库或用户。另外的可应用控制点策略的操作范围包括已知为“应用”和“角色”的两个数据库管理控制实体。如数据库管理
内已知的,应用是指一个或多个用户通过明确定义复杂工作负荷的不同分区来与数据库管理服务器通信并控制该服务器从而可更有效地控制和多路复用执行覆盖区(footprint)的能力。另外,应用可对应于可在客户机10(或中间应用服务器(未示出))上运行以便与数据库管理服务器4交互的特定软件实体。“角色”是用户定义的允许在组的基础上而不是单独地管理数据库控制参数例如访问许可的特权的集合。应用的控制点策略的上下文内的术语“等级”是指控制点策略相对于具有重叠范围的其他应用的控制点策略的优先级。等级指示器允许以正本文档来自技高网
...

【技术保护点】
一种用于通过灵活的策略管理数据库查询执行的系统,该策略可被定义并被应用以在指定的操作控制点操作,该系统包括:    用于定义控制点策略的策略定义装置;    用于将控制点策略应用于数据库操作的范围的策略应用装置;以及    用于评价应用的控制点策略的策略评价装置。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:保罗泰勒罗伯特格伯尔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1