CN102859521A - 数据库应用的集中控制 - Google Patents
数据库应用的集中控制 Download PDFInfo
- Publication number
- CN102859521A CN102859521A CN2011800184902A CN201180018490A CN102859521A CN 102859521 A CN102859521 A CN 102859521A CN 2011800184902 A CN2011800184902 A CN 2011800184902A CN 201180018490 A CN201180018490 A CN 201180018490A CN 102859521 A CN102859521 A CN 102859521A
- Authority
- CN
- China
- Prior art keywords
- application
- database
- characteristic information
- specific characteristic
- query language
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
根据本发明的一个实施例,一种系统实现对数据库应用的控制。所述系统包括:计算机系统,所述计算机系统包括:数据库应用,以提供对数据库系统的存取;及至少一个处理器。所述计算机系统请求从数据储存库中取回所述数据库应用的应用特定的特性信息,及将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。本发明的实施例还包括:用于使用与前文描述的基本相同方式来控制数据库应用的方法和计算机程序产品。
Description
技术领域
本发明的实施例涉及数据库应用的控制,更具体地说,涉及跨一个或多个应用服务器的企业数据库应用的集中式控制。
背景技术
企业通常具有大量的数据库应用。这些数据库应用的每一个定义相关的特性,其中一些是应用特定的,及提供用于数据存取的机制。然而,控制和优化数据库应用的任务非常复杂和冗长。例如,数据库管理员被迫跨多个服务器和多个地理位置个别地优化每个数据库应用。目前的控制服务器上的连接特性的系统在跨分发在多个地理位置的多个服务器而控制这些特性方面效率很低。此外,数据库管理员缺乏能力以:集中地控制SQL执行模型;集中地控制、优化及限制所执行的SQL;及控制来自多个客户端的开启连接的数目而无需用作集中式网关的中间系统。
发明内容
相应地,本发明在第一方面中提供了一种控制数据库应用的方法,包括以下步骤:从数据储存库中取回数据库应用的应用特定的特性信息,其中所述数据库应用提供对数据库系统的存取;及将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。
优选地,所述应用特定的特性信息包括:一个或多个特性,所述特性与所述数据库应用的查询语言执行模型相关联,以控制查询语言语句的执行。优选地,所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及应用所述应用特定的特性信息的步骤包括以下步骤:响应于所述应用特定的特性信息指示所述查询语言语句的静态执行,将所述优化后的查询语言语句绑定至所述数据库系统。优选地,所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及应用所述应用特定的特性信息的步骤包括以下步骤:响应于所述应用特定的特性信息指示替换所述数据库应用的查询语言语句,拦截所述查询语言语句并使用所述优化后的查询语言语句来替换所述查询语言语句。优选地,所述应用特定的特性信息包括:被许可执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。优选地,所述应用特定的特性信息包括:被禁止执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。优选地,所述应用特定的特性信息包括:待批量执行以控制所述数据库应用的操作的查询语言语句的指示。优选地,所述数据库应用包括:用于存取所述数据库系统的具有多个层的程序堆栈,以及其中所述应用特定的特性信息包括:与所述程序堆栈的至少一个层关联以控制所述数据库应用的操作的一个或多个特性。优选地,所述应用特定的特性信息包括:连接的数目,以根据到所述数据库系统的连接的数目来控制所述数据库应用的动作。优选地,所述应用特定的特性信息包括:连接的数目,以控制由所述数据库应用维护的到所述数据库系统的连接的数目。优选地,取回所述应用特定的特性信息的步骤包括以下步骤:确定所述数据库应用的更新后的应用特定的特性信息的存在;以及从所述数据储存库取回所述更新后的应用特定的特性信息。优选地,所述数据储存库存储多个数据库应用的应用特定的特性信息,并且其中取回所述应用特定的特性信息的步骤包括以下步骤:根据相应标识符从所述数据储存库取回每个数据库应用的应用特定的特性信息。优选地,所述数据库应用中的至少两个数据库应用位于不同计算机系统上。优选地,所述应用特定的特性信息包括:认证对应用户以针对数据库对象实施规则的简档。
优选地,所述数据库应用与均存储在所述数据储存库中的多个配置相关联,以及包括所述应用特定的特性信息以针对对应期望操作而配置所述数据库应用。优选地,取回所述应用特定的特性信息的步骤包括以下步骤:拦截所述数据库应用的已执行查询语言语句并提供与这些语句的执行有关的性能信息;以及根据所述性能信息与阈值的关系而将所述已执行查询语言语句与用于执行的优化后的查询语言语句相关联,其中所述应用特定的特性信息包括所述优化后的查询语言语句。
在第二方面中,提供了一种用于控制数据库应用的系统,包括:计算机系统,其包括:数据库应用,以提供对数据库系统的存取,其中所述计算机系统还包括至少一个处理器,所述处理器被配置为:请求从数据储存库中取回所述数据库应用的应用特定的特性信息;及将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。
优选地,所述应用特定的特性信息包括:一个或多个特性,所述特性与所述数据库应用的查询语言执行模型相关联,以控制查询语言语句的执行。优选地,所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及响应于所述应用特定的特性信息指示所述查询语言语句的静态执行而将所述优化后的查询语言语句绑定至所述数据库系统。优选地,所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及所述至少一个处理器还被配置为:响应于所述应用特定的特性信息指示替换所述数据库应用的查询语言语句,拦截所述查询语言语句并使用所述优化后的查询语言语句来替换所述查询语言语句。优选地,所述应用特定的特性信息包括:被许可执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。优选地,所述应用特定的特性信息包括:被禁止执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。优选地,所述应用特定的特性信息包括:待批量执行以控制所述数据库应用的操作的查询语言语句的指示。优选地,所述数据库应用包括:用于存取所述数据库系统的具有多个层的程序堆栈,以及其中所述应用特定的特性信息包括:与所述程序堆栈的至少一个层关联以控制所述数据库应用的操作的一个或多个特性。优选地,所述应用特定的特性信息包括:连接的数目,以根据到所述数据库系统的连接的数目来控制所述数据库应用的动作。优选地,所述应用特定的特性信息包括:连接的数目,以控制由所述数据库应用维护的到所述数据库系统的连接的数目。优选地,所述至少一个处理器还被配置为:定期请求从所述数据储存库中取回所述数据库应用的更新后的应用特定的特性信息。优选地,所述数据储存库存储多个数据库应用的应用特定的特性信息,其中所述系统还包括多个计算机系统,每个计算机系统均包括数据库应用和至少一个处理器,所述处理器被配置为:根据标识符从所述数据储存库取回对应数据库应用的应用特定的特性信息。
所述系统还可包括:控制系统,其与所述数据储存库通信并包括至少一个处理器,所述处理器被配置为:接收来自所述计算机系统的请求并且根据标识符从所述数据储存库取回所述数据库应用的所述应用特定的特性信息;以及将所取回的应用特定的特性信息提供给所述计算机系统。
所述系统还可包括:控制系统,其与所述数据储存库通信并包括至少一个处理器,所述处理器被配置为:确定所述数据库应用的更新后的应用特定的特性信息的存在;以及从所述数据储存库取回所述数据库应用的所述更新后的应用特定的特性信息并将所述更新后的应用特定的特性信息提供给所述计算机系统。优选地,所述应用特定的特性信息包括:认证对应用户以针对数据库对象实施规则的简档。优选地,所述数据库应用与均存储在所述数据储存库中的多个配置相关联,以及包括所述应用特定的特性信息以针对对应期望操作而配置所述数据库应用。优选地,所述至少一个处理器还被配置为:拦截所述数据库应用的已执行查询语言语句并提供与这些语句的执行有关的性能信息;以及根据所述性能信息与阈值的关系而将所述已执行查询语言语句与用于执行的优化后的查询语言语句相关联,其中所述应用特定的特性信息包括所述优化后的查询语言语句。
在第三方面中,提供了一种包括存储在计算机可读介质上的计算机程序代码的计算机程序,当所述代码被载入计算机系统并在其上执行时,将导致所述计算机系统执行根据第一方面中的方法的所有步骤。
所述计算机程序可以以用于控制数据库应用的计算机程序产品的形式实现,所述计算机程序产品包括其上包含计算机可读程序代码的计算机可读存储介质,所述计算机可读程序代码被配置为:从数据储存库中取回数据库应用的应用特定的特性信息;及将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。
根据本发明的一个实施例,一种系统实现对数据库应用的控制。所述系统包括:计算机系统,所述计算机系统包括:数据库应用,以提供对数据库系统的存取;及至少一个处理器。所述计算机系统请求从数据储存库中取回所述数据库应用的应用特定的特性信息,及将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。本发明的实施例还包括:用于使用与前文描述的基本相同方式来控制数据库应用的方法和计算机程序产品。
附图说明
现在将仅通过实例的方式参考附图描述本发明的优选实施例,这些附图是:
图1示出根据本发明的一个实施例的控制系统的实例拓扑;
图2是根据本发明的一个实施例的提供数据库连接信息的实例图形用户接口屏幕的示意图;
图3是根据本发明的一个实施例的提供数据库应用的配置信息的实例图形用户接口屏幕的示意图;
图4是根据本发明的一个实施例的提供与数据库应用相关联的应用特定的特性信息的实例图形用户接口屏幕的示意图;
图5是根据本发明的一个实施例的提供与数据库应用的数据库连接有关的连接信息的实例图形用户界屏幕的示意图;
图6是根据本发明的一个实施例的提供与数据库应用的查询语言(例如SQL等)执行模型有关的信息的实例图形用户接口屏幕的示意图;
图7是根据本发明的一个实施例的示出其中应用服务器取回数据库应用的应用特定的特性信息的方式的程序流程图;
图8是根据本发明的一个实施例的示出其中从配置储存库中取回数据库应用的应用特定的特性信息及将其提供至应用服务器的方式的程序流程图;
图9是根据本发明的一个实施例的示出其中从配置储存库取回数据库应用的更新后的应用特定的特性信息及将其提供至应用服务器以更新数据库应用配置的备选方式的程序流程图;
图10是根据本发明的一个实施例的示出其中控制查询语言执行(例如SQL等)的方式的程序流程图;
图11是根据本发明的一个实施例的提供与查询语言(例如SQL等)执行有关的各种性能信息的实例图形用户接口屏幕的示意图;以及
图12是根据本发明的一个实施例的控制系统的备选实例拓扑的示意图。
具体实施方式
本发明的各实施例涉及用于集中地控制企业数据库应用的机制(例如,包括或关联于来自数据库的软件应用处理数据以执行期望动作;对应基础过程,其实施数据库存取以从数据库取回数据用于该处理;到数据库的连接;和/或查询语言(例如SQL等)执行模型)。此机制提供数据库连接特性、及从数据库客户端至给定数据库的开启连接的数目的集中式控制,而无需迫使数据库应用利用集中式网关。连接的数目可为数据库的特性,以及指示允许连至数据库的开启连接的数目,其中根据到所述数据库的连接的数目来控制数据库应用的动作。例如,数据库应用可根据到所述数据库的连接为活动或耗尽的数目而采取不同阶段的动作。备选地,连接的数目可为数据库应用的特性,以及指示允许在连接池内维持的开启连接的数目。
此外,本发明的实施例使得管理员(例如,数据库管理员、系统管理员或其他用户)能够对在数据库中执行的特定查询语言(例如SQL等)语句及执行这些语句的方式进行安全化、优化以及控制。通过查询语言(例如SQL等)执行模型提供集中式控制,以使得管理员能够将优化后的查询语言(例如SQL等)语句分发至所有企业数据库应用。可应用这些优化而无需修改数据库应用的源代码。因此,本发明的各实施例提供一种框架以及定义用于集中地控制和监视数据库应用的基础协议。
图1示出了根据本发明的一个实施例的控制系统的实例拓扑。具体地说,控制系统100包括:一个或多个应用服务器10和控制服务器30。如下所述,所述控制服务器集中地控制应用服务器10的数据库应用。控制服务器30可远离应用服务器10及通过网络70进行通信。网络可由任意数目的任何适当通信介质来实施(例如广域网(WAN)、局域网(LAN)、因特网、企业内部网络等)。备选地,控制服务器30可位于一个或多个应用服务器10的本地,及经由通信介质74进行通信。通信介质可由任何适当的通信介质(例如局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施。
每一应用服务器10耦合至对应事务或其他数据库50,及存取所述数据库以取回数据以执行各种功能或动作。每一应用服务器10和对应数据库50可彼此远离及通过网络70进行通信。备选地,应用服务器和对应数据库可彼此位于本地及通过通信介质76进行通信。通信介质可由任何适当的通信介质(例如局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施。在数据库50由网络(例如LAN和WAN)存取的情况中,数据库可包括数据库服务器或采取数据库服务器的形式。所述数据库服务器可由任何传统的,或优选地配备有显示器或监视器、基本部分(例如,包括:处理器、存储器和/或内部或外部通信设备(例如调制解调器、网卡等))、可选的输入设备(例如键盘、鼠标或其他输入设备)、及任何商用和/或订制软件(例如服务器/通信软件等)的其他计算机系统来实施。
每一应用服务器10包括:一个或多个数据库应用80(例如,包括或关联于来自对应数据库50的软件应用处理数据以执行期望动作;对应基础过程,其实施数据库存取以从对应数据库50取回数据用于此处理;到对应数据库50的连接;和/或查询语言(例如SQL等)处理模型)。在程序堆栈81中提供来自数据库50的软件应用处理数据和对应基础过程(例如,包括管理数据库连接)。每一应用服务器10包括:一个或多个数据库应用80,它们均具有程序堆栈81,程序堆栈81包括多个层82,多个层82相互操作以提供到对应数据库50的存取及实施查询语言(例如SQL等)执行模型。程序堆栈81可包括:多个层82,其提供对数据库(例如,Java数据库连接性(JDBC)或IBM DB2呼叫级别接口(CLI))的直接存取或间接数据库存取(例如,经由包括IBM pureQuery、Java Persistent API(JPA)、Hibernate等的各种框架)。仅通过实例的方式,程序堆栈层82包括:业务逻辑12、映射逻辑14、数据存取逻辑16、连接池18、配置控件20、及数据库驱动器22。业务逻辑12包括:软件应用,其处理来自对应数据库50的数据,以提供业务或其他功能以用于特定实施方式。这些软件应用典型地包括:一个或多个数据库查询,以取回和处理来自对应数据库50的数据。映射逻辑14将数据库表映射至特定计算机编程语言(例如Java、C++等)的对象。例如,就业务逻辑12和关系数据库50的Java实施而言,映射逻辑14可映射业务逻辑12的基于Java的对象至数据库50的关系数据库表。映射逻辑使得来自业务逻辑12的具有基于Java的对象的查询能够从数据库50的关系表取回适当的数据,以及就基于Java的对象而言,还将从这些关系数据库表中所取回的数据提供给业务逻辑12。换言之,映射逻辑提供在具有基于Java的业务逻辑与数据库之间的数据管理兼容性。映射逻辑14可包括任何期望计算机编程语言的任何适当的映射工具或框架(例如JavaPersistent API(JPA)、Hibernate等)。
数据存取逻辑16提供存取数据库的方式(例如,规则或准则、连接或其他信息等),而连接池18提供连接分配管理功能(例如,控制到数据库的连接的数目等)。连接的数目可为数据库的特性,并指示到数据库的所允许的开启连接的数目,其中根据到数据库的连接数目来控制数据库应用的动作。例如,数据库应用可根据到数据库的连接是活动或耗尽的数目而采取不同阶段的动作。备选地,连接的数目可为数据库应用的特性,并指示允许由连接池18所维持的开启连接的数目。如下所述,根据管理员(例如,数据库管理员、系统管理员或其他用户)的规定,配置控件20与控制服务器30通信,以配置数据库应用和促进数据库查询的执行(例如可包括:IBMpureQuery或其他框架)。数据库驱动器22提供与对应数据库50的实际通信以用于数据库存取。数据库驱动器22可包括Java数据库驱动器(例如JDBC等)或其他驱动器、或与任何适当的计算机编程语言兼容的机制。业务逻辑12、映射逻辑14、数据存取逻辑16、连接池18、配置控件20及数据库驱动器22可由软件和/或硬件模块或单元的组合来实施。
每个数据库应用80与应用特定的特性信息相关联,所述应用特定的特性信息包括:控制存取对应数据库50的方式的各种特性和参数。数据库应用的应用特定的特性信息可涉及应用服务器10和/或一个或多个程序堆栈层82。仅通过实例的方式,应用特定的特性信息的特性或参数涉及:应用服务器10可包括:最大连接(例如为数据源连接池创建的连接的最大数目)、最小连接(例如数据源连接池的连接的最小数目)、未使用超时(例如,代表在关闭之前,开启连接允许保持为未使用的时间量的超时值)、获取时间(reaptime)(例如,指定在连接池维持线程的执行之间的以秒为单位的时间量)等;映射逻辑14可包括:JPA或Hibernate实施hibernate.cache.use_query_cache(例如指定查询结果是否由Hibernate引擎缓存);及数据存取逻辑16可包括:JDBC或IBM DB2CLI实施databaseurl(例如,数据连接信息(例如,主机、端口、数据库名称))、deferprepares(延迟准备)(例如,指定是否延迟查询语言语句准备直到执行此语句)、fetchsize(取回大小)(例如,指定用于查询语言语句的取回大小)等、以及IBM pureQuery实施captureMode(捕获模式)(例如,控制捕获启用和禁用)、executionMode(执行模式)(例如,指定查询语言语句执行是静态还是动态)、allowDynamicSQL(例如,指定是否允许动态SQL)等。业务逻辑12的应用特定的特性信息对每一特定实施而改变,并且可包括适合于此特定实施的任何特性或参数。
此外,每个数据库应用80(例如,经由程序堆栈81)实施具有相关的应用特定的特性信息的执行模型,所述应用特定的特性信息包括:控制执行形式为查询语言(例如SQL等)语句的数据库查询的方式的特性或参数。执行模型和相关联的特性或参数涉及:用于控制来自数据库应用的查询语言(例如SQL等)的执行的配置控件20(例如IBM pureQuery等)的框架的特定能力。用于执行查询语言的应用特定的特性信息的实例特性或参数可指示:查询语言(例如SQL等)的动态或静态执行,及原始的或优化后的查询语言(例如SQL等)的执行。优化查询语言可包括:以较佳执行的语句来替换不佳执行的查询语言(例如SQL等)语句,或以参数标记来替换查询语言(例如SQL等)语句参数,由此使能缓存和重用所述语句。相应地,包括前文所描述的各种特性或参数的值的应用特定的特性信息提供数据库应用的配置,及控制存取所述数据库和执行查询语言(例如SQL等)语句的方式。
应用服务器10可由任何传统的、或优选地配备有显示器或监视器、基本部分(例如其包括:处理器、存储器和/或内部或外部通信设备(例如调制解调器、网卡等))、可选的输入设备(例如键盘、鼠标或其他输入设备)、及任何商用(例如,服务器/通信软件等)和/或订制软件(例如,控制软件等)的其他计算机系统来实施,以如下所述控制数据库应用。事务数据库50可由任何数目的任何类型的传统的或其他数据库、数据储存库或存储结构(例如文件、数据库、数据结构等)来实施。
企业通常具有大量的数据库应用,其中每个数据库应用如上所述跨多个服务器和多个地理位置被个别地优化。然而,本发明的实施例提供跨多个服务器而集中地配置和控制数据库应用的方式。为了提供此集中控制能力,控制服务器30使得管理员(例如,数据库管理员、系统管理员或其他用户)能够通过定义、输入和/或修改与各种应用服务器的一个或多个数据库应用相关联的任何应用特定的特性信息来配置这些数据库应用(例如,应用服务器10的特性、对应程序堆栈的层82、数据库连接和/或查询语言(例如SQL等)执行模型)。所输入或修改的应用特定的特性信息被提供至对应应用服务器,及因此应用于配置数据库应用。
具体地说,控制服务器30耦合至配置储存库60,配置储存库60存储数据库应用的应用特定的特性或参数信息。控制服务器存取配置储存库60,以取回应用特定的特性信息并将其提供给一个或多个应用服务器10,以配置和控制对应数据库应用80,如下文所述。控制服务器30和配置储存库60可彼此远离及通过网络70进行通信。备选地,控制服务器30可位于配置储存库60的本地并且经由通信介质78进行通信。通信介质可由任何适当的通信介质来实施(例如,局域网(LAN)、硬件线路、无线链接、企业内部网络等)。在配置储存库60由网络(例如,LAN或WAN)存取的情况中,储存库可包括数据库服务器或可采取数据库服务器的形式。数据库服务器可由任何传统的、或优选地配备有显示器或监视器、基本部分(例如包括:处理器、存储器和/或内部或外部通信设备(例如,调制解调器、网卡等))、可选输入设备(例如,键盘、鼠标或其他输入设备)、及任何商用和/或订制软件(例如,服务器/通信软件等)的其他计算机系统来实施。
控制服务器30使得管理员能够针对应用特定的特性信息而定义数据库应用特性的逻辑和分层分组。可根据不同的准则(包括数据源、数据库、特定管理员及工作站)来将这些特性分组。
配置控件20与控制服务器30建立通信,以从配置数据库60取回对应数据库应用的应用特定的特性信息,以便配置此数据库应用。本发明的实施例可在异构应用服务器上执行,及可支持以任何计算机编程语言撰写的异构配置控制组件。应用与控制服务器之间的通信可经由同步或异步通信来实现。利用所取回的应用特定的特性信息来配置应用服务器10上的对应数据库应用。相应地,控制服务器30包括控制器32和配置管理器服务34。控制器32与应用服务器10的配置控件20进行通信,及与配置管理器服务34相互操作,以从配置数据库60取回所请求的对应数据库应用的应用特定的特性信息。所述控制器将所取回的应用特定的特性信息传输到发出请求的应用服务器。
配置管理器服务34存取配置储存库60以取回和存储应用特定的特性信息和其中的其他信息。此外,配置管理器服务经由配置管理器接口40与一个或多个终端用户系统90进行交互。配置管理器接口使得管理员(例如,数据库管理员、系统管理员或其他用户)能够查看和/或修改配置储存库60中的应用特定的特性信息,以控制应用服务器10的数据库应用,如下文所述。配置管理器接口40由配置管理器服务34产生,及可呈现给终端用户系统90上的管理员。终端用户系统90和控制服务器30可彼此远离及通过网络70进行通信。备选地,终端用户系统90可位于控制服务器30的本地及通过通信介质79进行通信。通信介质可由任何适当通信介质(例如,局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施。控制器32、配置管理器服务34及配置管理器接口40可由软件和/或硬件模块或单元的任何组合来实施。
控制服务器30和终端用户系统90可由任何传统的、或优选地配备有显示器或监视器、基本部分(例如包括处理器、存储器和/或内部或外部通信设备(例如,调制解调器、网卡等))、可选输入设备(例如,键盘、鼠标或其他输入设备)及任何商用(例如,服务器、浏览器或其他通信介质等)和/或订制软件(例如,控制软件等)的其他计算机系统来实施,以控制数据库应用,如下文所述。配置储存库60可由任何数目的任何类型的传统或其他数据库、数据储存库或存储结构(例如文件、数据库、数据结构等)来实施。
配置管理器接口40使得管理员(例如,数据库管理员、系统管理员或其他用户)能够查看、定义、输入和/或修改配置储存库60中的应用特定的特性信息,以配置和控制应用服务器10的数据库应用80。每个数据库应用80被指派唯一标识符,而提供数据库应用配置的应用特定的特性信息根据配置标识符(例如,标识符113(图3-6))而存储在配置储存库60中。以此方式,配置标识符用作索引或关键字以取回适当的应用特定的特性信息,以提供数据库应用的期望配置。例如,配置标识符可用于取回文件名、指针、或指示应用特定的特性信息在配置储存库60内的位置的其他指示器(例如,可利用查询表以根据配置标识符而提供应用特定的特性信息的位置等)。备选地,配置标识符可为文件名、指针或其他指示器,或为包含应用特定的特性信息的位置信息的数据库表的索引(例如,配置标识符可为数据库表内的关键字字段等)。
在本发明的一个实施例中,数据库应用可与单个配置相关联,并且配置标识符可与数据库应用标识符相同。例如,数据库应用标识符可包括逻辑名称并且标识定义数据库应用的配置的应用特定的特性信息(包括具有多个层的程序堆栈)。管理员可知晓数据库应用的逻辑名称,并在信息输入期间提供逻辑名称(或数据库应用标识符),其变为配置标识符以将定义配置的应用特定的特性信息与数据库应用相关联。
备选地,管理员可输入数据库应用的一个或多个属性(attributes)(例如,URL或地址等),并且配置管理器服务34可根据所述属性来确定期望数据库应用的逻辑名称(或数据库应用标识符)(例如,通过与应用服务器通信,其经由查找表或包括数据库应用属性和逻辑名称等的其他表)。在此情况中,所确定的逻辑名称(或数据库应用标识符)变为配置标识符,并被用于将定义所述配置的应用特定的特性信息与期望数据库应用相关联。
相应地,数据库应用标识符可由应用服务器10用于从配置储存库60中取回定义数据库应用80的配置的适当应用特定的特性信息。例如,应用服务器10上的数据库应用80可被指定为“A”的逻辑名称。定义配置储存库60内的此数据库应用的配置的应用特定的特性信息的查找根据逻辑名称“A”来执行(逻辑名称“A”为数据库应用标识符和配置标识符二者),并且应用得到的应用特定的特性信息(例如,应用于数据库应用的程序堆栈内的各层)。类似地,同一或不同应用服务器上的另一数据库应用可被指定逻辑名称“B”。定义此其他数据库应用的配置的应用特定的特性信息的查找根据逻辑名称“B”来执行(逻辑名称“B”为数据库应用标识符和配置标识符二者),并且应用得到的应用特定的特性信息(例如,应用于该其他数据库应用的程序堆栈内的各层)。
在本发明的一个实施例中,可针对数据库应用80定义多个配置。在此情况中,应用服务器10可提供数据库应用标识符和附加信息,以便确定配置标识符113并取回定义来自配置储存库60的特定配置的适当应用特定的特性信息。通过实例方式,附加信息可包括:期望配置的属性(例如,特性的描述、配置名称、创建或修改日期(多个)(例如,取回最新的、最早的等)等),并且配置管理器服务34可根据数据库应用标识符和属性来确定期望的配置标识符113(例如,经由查找表或包括配置属性和逻辑名称的其他表等)。此外,配置标识符113可包括具有额外信息的数据库应用标识符,此附加信息附加于数据库应用标识符,或以其它方式结合在数据库应用标识符内,其中可由应用服务器确定和提供配置标识符,以取回定义期望配置的应用特定的特性信息。
备选地,定义相应数据库应用配置的应用特定的特性信息均可与特定于该配置的配置标识符113关联(例如,独立于数据库应用标识符,和在配置的创建/修改期间被指定),配置标识符113将该配置的应用特定的特性信息与数据库应用相关联。在此情况中,配置标识符113可由应用服务器10(其具有或没有数据库应用标识符)来提供,以取回该配置的应用特定的特性信息。配置标识符113备选地可包括此特定的配置标识符,所述配置标识符附加于数据库应用标识符,或以其它方式结合在数据库应用标识符内,其中可由应用服务器确定和提供配置标识符113,以取回配置的应用特定的特性信息。
配置管理器接口40优选地利用多个图形用户接口屏幕,以便与管理员(例如,数据库管理员、系统管理员或其他用户)交互并配置数据库应用。配置管理接口由配置管理器服务34来产生,并可被呈现给终端用户系统90上的管理员。图2示出了提供关于数据库连接的信息的实例接口屏幕。具体地说,接口屏幕105提供企业系统内关于数据连接的信息。接口屏幕包括多个标签115,每个标签115均可由管理员选择以显示各种信息。通过实例的方式,标签包括:欢迎(Welcome)、管理数据库连接(ManageDatabase Connections)及数据客户端管理(Data Client Management)。接口屏幕105还包括:主机区域111和工作区域117,并反映所显示的实例屏幕以响应激活管理数据库连接标签115。主机区域111以目录型结构提供各种主机以由管理员选择。一旦管理员选择主机(例如,经由鼠标或其他输入设备),就从配置储存库60取回所选择主机的连接信息,并将其显示在工作区域117中。通过实例的方式,工作区域117包括具有包含Name(名称)、Data Server Type(数据服务器类型)、DataName(数据库名称)、UserID(用户ID)、Host Name(主机名称)及Port Number(端口号)的列的表。名称字段包括数据库连接的名称。数据服务器类型字段提供数据库服务器的类型(例如,所使用的服务器软件等)。数据库名称字段包括数据库的名称,而用户ID字段包括用户的标识。主机名称字段包括主机计算机系统的名称(例如,URL或地址等),及端口号字段包括连接所使用的端口。
表的每一行提供所选择项目的信息(例如所选择的主机cfgmgr.com,如图2中所见)。接口屏幕105使得管理员能够添加(或注册)新的数据库连接至控制系统,及随后经由激活器(actuator)107来查看、编辑和/或删除这些数据库连接。由管理员输入的数据库连接的信息由配置管理器服务34存储于配置储存库60中。
图3示出了提供数据库应用的配置信息的实例接口屏幕。具体地说,接口屏幕110提供关于在应用服务器10上的数据库应用的配置的信息。接口屏幕110反映所显示的实例屏幕,以响应激活数据客户端管理标签115。接口屏幕包括配置区域112及工作区域114。配置区域112提供数据库应用的各种配置以由管理员(例如,数据库管理员、系统管理员或其他用户)来选择。所述配置包括应用特定的特性信息并由配置版本119指示,及配置标识符或关键字113,其将配置与数据库应用相关联,如下文所述。工作区域114包括多个标签16,每个标签16可由管理员选择以显示关于所选择配置的各种信息。通过实例的方式,标签16包括:配置(Configuration)、特性(Properties)、连接(Connection)及SQL。接口屏幕110还反映所显示的实例屏幕以响应激活配置标签116。配置标签使能在工作区域114中显示所选择配置。
一旦管理员选择配置(例如,经由鼠标或其他输入设备),就从储存库60取回所选择配置的信息,并显示于工作区域114中。通过实例的方式,工作区域114包括:标示为版本(Version)、客户端刷新更新(Client RefreshUpdate)、描述(Description)、联系人名称(Contact Name)、联系人定位符(Contact Locator)及联系人描述(Contact description)的字段。Version字段包括配置的版本,而Client Refresh Update字段包括刷新信息的时间间隔及对应时间单位(例如,分钟等)。Description字段包括所选择配置的描述。联系人名称、联系人定位符及联系人描述字段相应地包括:联系人的名称(例如创建/修改或负责配置的版本的管理员等)、通知具有对应通知信息的联系人的方式(例如,电子邮件(E-mail)及对应电子邮件地址等)以及联系人的描述(例如职业名称、任务等)。各种字段中的信息可由管理员输入和/或修改,以更新所选择配置的信息,其中信息由配置管理员服务34存储在配置储存库60中。
图4中示出使得管理员(例如,数据库管理员、系统管理员或其他用户)能够查看、定义和/或编辑数据库应用的应用特定的特性信息的实例接口屏幕。具体地说,接口屏幕120类似于前文所描述的接口屏幕110,并提供与数据库应用的应用特定的特性信息有关的信息。接口屏幕120反映所显示的实例屏幕以响应激活数据客户端管理标签115和特性标签116。接口屏幕包括配置区域112,及工作区域114。配置区域112提供数据库应用的各种配置以由管理员选择,其中配置由配置标识符或关键字113和配置版本119来指示,如前文所述。一旦管理员选择配置(例如,经由鼠标或其他输入设备),就从配置储存库60取回所选择配置的应用特定的特性信息并显示在工作区域114中。通过实例的方式,工作区域114显示具有包含驱动器类型(Driver Type)、名称(Name)、值(Value)、覆盖(Override)、类型(Type)及描述(Description)列的表。Driver Type字段包括驱动器的类型,而Name字段包括在应用特定的特性信息内的特性的名称。Value字段包括在应用特定的特性信息内的特性的值。Type字段包括特性值的类型(例如整数、字符等),以及Description字段包括应用特定的特性信息内的特性的描述。
覆盖字段确定要用于数据库应用的特性值。当针对应用特定的特性信息内的特性启用覆盖时(例如,针对特性(例如fetchsize和useTransactionR,如图4中可见)而勾选复选符号),在表中指定的特性的值用于数据库应用配置。如果针对应用特定的特性信息内的特性禁用覆盖(例如,针对特性(例如accountingInter,如图4中可见)而未勾选复选符号),则利用由数据库应用所设置的特性的值(例如,初始或默认值)。然而,当尚未由数据库应用设置在具有禁用的覆盖的应用特定的特性信息内的特性的值时(例如,对此特性未存在的初始值或默认值),则利用为此特性在表中指定的值。
表中的每一行提供所选项目的应用特定的特性信息(例如,JCC驱动器包括具有值3600和已禁用覆盖的accountingInter的特性、及具有值25和已启用覆盖的fetchsize、及具有真值和已启用覆盖的useTransactionR,如图4中可见)。接口屏幕120还使得管理员能够输入和/或修改应用特定的特性信息内的特性。这借助各种激活器来完成。具体地说,保存激活器121促进所输入特性值的存储,而删除激活器127使能从表中删除所选择的特性。新的激活器123促进具有对应字段的输入窗口的显示,以定义和输入从表中所选择项目的新的特性的值。编辑激活器125使能更改所选择特性的值。包括特性和对应值的应用特定的特性信息可由配置管理器服务34存储于储存库60中。
图5中示出了提供数据库应用的连接信息的实例接口屏幕。具体地说,接口屏幕130类似于接口屏幕110、120,如前文所述,及提供关于选择的数据库应用配置的数据库连接的信息。接口屏幕130反映所显示的实例屏幕,以响应激活数据客户端管理标签115和连接标签116。接口屏幕包括配置区域112和工作区域114。配置区域112提供数据库应用的各种配置以由管理员(例如,数据库管理员、系统管理员或其他用户)来选择,其中配置由配置标识符或关键字113及配置版本119来指示,如前文所述。一旦管理员选择配置(例如,经由鼠标或其他输入设备),就从配置储存库60取回所选择配置的连接信息并显示在工作区域114中。通过实例的方式,工作区域114显示具有包括Connection和Database的列的表。Connection字段包括数据库应用连接的名称,而Database字段包括连接与之建立通信链接的数据库。
表的每一行提供选择项目的信息(例如,REPO-连接与REPO数据库关联)。接口屏幕130使得管理员能够经由创建激活器131来创建从数据库应用至所选择数据库的连接。创建激活器促进具有对应字段的输入窗口的显示,以定义和输入新连接的信息。所创建连接的特性和对应值可经由基本与前文所述的方式相同的一个或多个接口屏幕来查看、输入和/或修改。连接信息和对应应用特定的特性信息由配置管理器服务34存储在配置储存库60中。
本发明的实施例还使得管理员(例如,数据库管理员、系统管理员或其他用户等)能够影响应用服务器处的查询语言(例如SQL等)执行模型。执行模型和相关的特性或参数涉及配置控件20的框架的特定能力(例如IBMpureQuery等),以控制从数据库应用执行的查询语言(例如SQL等)。本发明的实施例使得管理员(例如数据库管理器、系统管理器、或其他用户)能够提供优化后的查询语言(例如SQL等)语句。优化查询语言的步骤可包括以下步骤:以较佳执行的语句来替换不佳执行的查询语言(例如SQL等)语句,或以参数标记来替换查询语言(例如SQL等)语句参数,由此使能缓存和重用语句。
此外,本发明的实施例可使得管理员能够限制执行的查询语言(例如SQL等)语句,及以控制从数据库应用传输至数据库50的查询语言(例如SQL等)语句的批处理以供执行。包括查询语言(例如SQL等)执行模型的特性或参数的应用特定的特性信息存储在配置储存库60中。
相应地,本发明的实施例使得管理员(例如数据库管理员、系统管理员、或其他用户)能够优化框架(例如JPA等),其中自动地生成查询语言(例如SQL等)。本发明的实施例使得管理员能够捕获、查看、优化及限制相对于数据库而执行的查询语言(例如SQL等)。一旦查询语言(例如SQL等)已针对数据库应用被优化,优化就可传输至托管数据库应用的其他系统,由此提供查询语言(例如SQL等)执行模型的集中式控制。
图6中示出了使得管理员(例如数据库管理员、系统管理员、或其他用户)能够查看和输入关于数据库应用的查询语言(例如SQL等)执行模型的各种信息的实例接口屏幕。具体地说,接口屏幕155类似于前文所描述的接口屏幕110、120、130,并提供关于所选择数据库应用配置的查询语言(例如SQL等)执行模型的信息。接口屏幕155反映所显示的实例屏幕,以响应激活数据客户端管理标签115和SQL标签116。实例屏幕包括配置区域112和工作区域114。配置区域112提供由管理员选择的数据库应用的各种配置,其中配置由配置标识符或关键字113和配置版本119来指示,如前文所述。
一旦管理员选择配置(例如,经由鼠标或其他输入设备),就从配置储存库60取回所选择配置的应用特定的特性信息的查询语言(例如SQL等)执行模型信息,并显示在工作区域114中。通过实例的方式,工作区域114包括优化区域157、限制区域159及批处理区域161。可使用从配置储存库60取回的适当配置信息自动填充这些区域。优化区域157包括使得管理员能够针对在所选择数据库应用配置中执行的特定语句而查看和/或输入优化后的查询语言(例如SQL等)的字段。管理员还可针对优化区域内的优化语句和实施(例如,绑定或替换等)的方式而查看和/或指定执行的类型(例如静态或动态,如后文所描述的)。管理员针对优化后的查询语言(例如SQL等)所输入的信息可由配置管理员服务34作为应用特定的特性信息的一部分而存储在配置储存库60中。
限制区域159包括使得管理员能够查看和/或输入被允许在给定数据库上执行的查询语言(例如SQL等)语句的列表的字段。管理器针对所述限制区域输入的信息可由配置管理器服务34作为应用特定的特性信息的一部分而存储在配置储存库60中。
批处理区域161包括使得管理员能够查看和/或指定查询语言(例如SQL等)语句的字段,所述语句可一起被批处理以便执行。批处理将多个查询语言(例如SQL等)执行组合成对数据库的单个请求,由此增强性能。例如,连接利用率可借助异构批处理而优化,并延迟此执行直到提交事务。这使得框架能够在少量的执行时间将物理连接指派给数据库应用以便执行。可在与数据库应用关联的一个或多个特性或参数中指定此批处理,并在批处理区域161的字段内输入此批处理。管理员针对批处理区域输入的信息由配置管理员服务34作为应用特定的特性信息的一部分而存储在配置储存库60中。
配置管理器服务34可与管理员(例如,数据库管理员、系统管理员或其他用户)交互以接收信息而实现对数据库应用的其他方面的控制。例如,控制系统可使得管理员能够将优化后的对象-关系(O/R)映射特性集中地传输至应用服务器(例如,避免在每一个体应用服务器上配置这些设置),以作为应用特定的特性信息的一部分。在此情况中,所述特性至少与程序堆栈81的映射逻辑14关联,并控制计算机编程语言内的对象至数据库内的关系表或其他结构的映射。通过实例的方式,这些特性可控制来自数据库表的对象加载(或映射)的精确性(例如,延迟性载入(较低的精确性)或积极性载入(较高的精确性))。然而,可经由接口40调整数据库应用的任何适当应用特定的特性信息,以控制对象至关系或其他类型的数据库的映射。
此外,控制系统可控制哪些管理员(例如,数据库管理员、系统管理员或其他用户)被允许针对所产生的数据库对象执行和实施规则。可建立简档以从数据库连接提取管理员。简档封装数据库连接(无需使用用户标识和密码),并包括用于认证的准则(例如,用户的类型、源计算机系统、用户的安全性或系统级别、用户标识等)。简档的信息和相关的数据库对象规则可由管理员经由配置管理器接口40和配置管理器服务34来输入,及作为应用特定的特性信息的一部分而存储在配置储存库60中。
配置控件20取回简档和相关的规则,以作为数据库应用的应用特定的特性信息的一部分,并利用简档认证管理员(例如,使用否决权以执行对外呼叫等)。如果管理员经过认证(例如,作为数据库、系统或其他管理员),配置控件20使得认证后的管理员能够建立和实施规则以控制对对应数据库50的对象的存取。以此方式,管理员可使用没有许多特权的连接来存取基础数据库以读取目录对象,并利用简档来建立和实施规则。
管理员(例如,数据库管理员、系统管理员或其他用户)可经由接口40或其他输入机制来指定或修改应用特定的特性信息的任何数据库应用特性的值(例如,关联于应用服务器,任何程序堆栈层、任何连接、查询语言(例如SQL等)执行模型等),以集中地从控制服务器30配置和控制数据库应用的任何部分。定义配置的应用特定的特性信息还可应用于同一应用服务器的一个或多个数据库应用,或应用于任何数目的不同应用服务器的一个或多个数据库应用。可通过任何适当准则来分组用于配置的数据库应用,其中相同的配置标识符可由每一组成员来利用,以使能取回组成员的相同配置。
图7中示出了应用服务器10(例如,经由配置控件20)取回并应用应用特定的特性信息以控制数据库应用的方式。初始地,数据库应用特定的特性信息(例如,包括应用服务器10、程序堆栈81的层82、数据库连接和/或查询语言(例如SQL等)执行模型的特性)可经由配置管理器服务接口40来定义、分组及向控制器32注册,如前文所述。在步骤140,如果针对应用服务器10的数据库应用采用集中式控制,则配置控件20检测控制服务器30的存在,并建立与控制服务器的适当通信。此检测可通过利用可由配置控件20存取的标志、统一资源定位器(URL)或地址、或控制服务器的存在性的指示器来完成(例如,储存于配置变量、预定位置、参数等)。配置控件利用控制服务器30的指定URL或地址,以建立与控制器32的通信。备选地,配置控件可包括自动检测机制以确定控制服务器在网络上的存在(和URL或地址)以建立通信。
在步骤142,一旦建立适当的通信,配置控件20就根据配置标识符或关键字113向控制器32查询对应数据库应用80的期望的应用特定的特性信息。配置控件20将配置标识符113(和/或使能确定配置标识符的其他信息,如前文所述)传递至控制器32,以经由配置管理器服务34从配置储存库取回定义期望配置的应用特定的特性信息。
如在步骤143所确定的,如果未取回应用特定的特性信息,则在步骤149,配置控件20从控制器32接收指示缺少应用特定的特性信息的异常或消息,并且所述数据库应用使用初始或预设值来继续。配置控件20和/或控制器32可促进向管理员显示错误或其他消息,以提供与取回应用特定的特性信息和/或配置数据库应用有关的问题的通知。
当取回应用特定的特性信息时,配置控件20从控制器32接收所取回的应用特定的特性信息,并在步骤144应用所接收的应用特定的特性信息内的特性值以配置数据库应用。具体地说,配置控件20使用接收的应用特定的特性信息中的值来修改现有参数或特性值。这可通过更新或存储所接收的值于对应配置变量、存储器、或包含现有特性或参数值(例如,应用服务器和程序堆栈层期望找到用于查询语言(例如SQL等)执行模型的操作和/或实施的存储参数的位置)的其他存储位置(例如,文件、寄存器等)中来完成。一旦应用所接收的特性值,则更新数据库应用配置,并且数据库应用根据这些接收的值来操作。
在步骤146,配置控件20周期性地检查以确定数据库应用特定的特性信息的任何更新的存在。例如,这可通过配置管理器服务34识别在与管理员(例如,数据库管理员、系统管理员或其他用户)交互期间经由配置管理器接口40输入和/或更新后的应用特定的特性信息来完成。配置管理器服务通知控制器32所更新的信息和每个更新的配置的相关配置标识符113的存在。响应于来自配置控件20的对更新的询问,控制器32确定应用特定的特性信息内的更新的存在。如果已更新应用特定的特性信息,控制器32根据配置标识符113尝试从配置储存库60取回所更新后的应用特定的特性信息,其利用与前文所述基本相同的方式。
如在步骤147所确定的,如果未更新应用特定的特性信息,或不能根据配置标识符113取回更新后的应用特定的特性信息时,则在步骤149,配置控件20从控制器32接收指示缺乏更新后的应用特定的特性信息的异常或消息,并且数据库应用使用先前的特性值来继续。配置控件20和/或控制器32可促进向管理员显示错误或其他消息,以提供缺乏更新后的应用特定的特性信息、或存在与取回更新后的应用特定的特性信息和/或配置数据库应用有关的问题的通知。
当取回更新后的应用特定的特性信息时,控制器32传输更新后的应用特定的特性信息至配置控件20。配置控件从控制器32接收更新后的应用特定的特性信息,并在步骤148应用更新后的应用特定的特性信息以配置数据库应用,其利用如前文所述基本相同的方式。配置控件20和/或控制器32发送更新后的应用特定的特性信息至配置储存库60以实现审计目的。配置控件还可在应用服务器本地保存应用特定的特性信息。
图8中示出了控制服务器30取回数据库应用的对应应用特定的特性信息的方式。初始地,定义、分组和向控制器32注册数据库应用特定的特性信息(例如,包括应用服务器10、程序堆栈81的层82、数据库连接和/或查询语言(例如SQL等)执行模型的特性),并在应用服务器10和控制服务器30之间建立适当的通信,如前文所述。具体地说,在步骤150,控制器32从应用服务器10的配置控件20接收定义对应数据库应用的期望配置的应用特定的特性信息的请求。此请求可针对应用特定的特性信息的取回,并包括配置标识符113(和/或使能确定配置标识符的其他信息,如前文所述)或周期性的询问以取回更新后的应用特定的特性信息。在步骤152,控制器与配置服务管理器34相互操作,配置服务管理器34与配置储存库60进行通信,以取回应用特定的特性信息。控制器32提供配置标识符113(和/或使能确定配置标识符其他信息,如前文所述)至配置管理器服务34,以使能取回定义期望配置的应用特定的特性信息。配置标识符(和/或使能确定配置标识符的其他信息,如前文所述)可在所述请求中提供至控制器32,或控制器由于来自配置管理器服务的更新后的信息的通知而具有配置标识符,如前文所述。
如果如步骤153所确定的,未取回应用特定的特性信息或不存在更新后的信息,则在步骤156,将指示缺乏应用特定的特性信息的异常或消息通过控制器32传输至配置控件20,并且数据库应用利用默认或先前的特性值来继续。配置控件20和/或控制器32可促进向管理员显示错误或其他消息,以提供缺乏更新后的应用特定的特性信息、或存在与取回应用特定的特性信息和/或配置数据库应用有关的问题的通知。
当从配置储存库60取回应用特定的特性信息时,所取回的应用特定的特性信息由配置服务管理员服务34来接收,并提供至控制器32以在步骤154传输至配置控件20,以利用与前文所描述的相同方式更新数据库应用配置。
备选地,控制服务器30可自动地提供更新后的应用特定的特性信息至应用服务器10,而非应用服务器针对应用特定的特性信息来轮询控制服务器。图9中示出控制服务器30自动地提供更新后的应用特定的特性信息至应用服务器10的方式。初始地,定义、分组及向控制器32注册应用特定的特性信息的特性(例如,包括应用服务器10、程序堆栈81的层82、数据库连接和/或查询语言(例如SQL等)执行模型的特性),并且在应用服务器10和控制服务器30之间建立适当的通信,如前文所述。具体地说,控制器32确定更新后的应用特定的特性信息的存在性。例如,这可通过配置管理器服务34识别在与管理员(例如,数据库管理员、系统管理员或其他用户)交互期间经由配置管理器接口40输入和/或更新的应用特定的特性信息来完成,并且向控制器32通知更新后的应用特定的特性信息和每个更新的配置的相关配置标识符113的存在,如前文所述。
如果在步骤160确定存在更新,则在步骤162,控制器32经由配置管理员服务34根据配置标识符113而从配置储存库60取回更新后的应用特定的特性信息,其利用与前文所描述基本相同的方式。如果如在步骤163所确定的,未取回更新后的应用特定的特性信息,则控制器确定托管与配置标识符113相关联的数据库应用的适当应用服务器,及在步骤165中,发送指示存在取回更新后的应用特定的特性信息的问题的异常或消息至此应用服务器的配置控件20。在此情况中,数据库应用利用先前的特性值继续。配置控件20和/或控制器32可促进向管理员显示错误或其他消息,以提供存在关于取回应用特定的特性信息和/或配置数据库应用的问题的通知。
如果取回更新后的应用特定的特性信息,则控制器确定托管与配置标识符113关联的数据库应用的适当应用服务器,及在步骤164中,传输更新后的应用特定的特性信息至此应用服务器的配置控件20。配置控件从控制器32接收更新后的应用特定的特性信息,及应用更新后的应用特定的特性信息以配置数据库应用,其利用与前文所描述的相同方式。重复过程直到终止条件的发生(例如,电源关闭),如在步骤166所确定的。
本发明的实施例还使得管理员(例如,数据库管理员、系统管理员或其他用户等)能够影响在应用服务器处的查询语言(例如SQL等)执行模型,如同前文所述。图10中示出了可以控制数据库应用的查询语言执行模型的方式。初始地,配置控件20从其他程序堆栈82接收和促进查询语言(例如SQL等)语句的执行,如前文所述(例如,经由IBM pureQuery框架)。具体地说,在步骤170,配置控件20监视查询语言(例如SQL等)语句的执行,及在步骤172捕获语句。配置控件捕获查询语言语句和追踪各种相关的信息(例如,数据库应用和提供语句、时间等的特定程序堆栈)。所捕获的查询语言(例如SQL等)语句由配置控件20优选地存储在文件中(例如XML等)。将此文件发送至控制器32以由配置管理器服务34存储在配置储存库60中。
一旦捕获了查询语言(例如SQL等)语句,配置管理器服务34就可从配置储存库60取回语句,以经由配置管理器接口40呈现给终端用户系统90上的管理员(例如,数据库管理员、系统管理员或其他用户)。在步骤174中,管理员可重新查看语句和各种性能或其他信息(例如,每个语句的执行时间等)。性能信息基于所捕获的信息和从执行语句的一个或多个对应数据库50所收集的信息。图11中示出提供关于查询语言(例如SQL等)执行的各种性能信息的实例图形用户接口屏幕190。屏幕190包括关于查询语言(例如SQL等)语句的各种实例图形表示和图表,以及由一个或多个对应数据库50进行的执行。
返回图10,如果查询语言(例如SQL等)语句不与性能阈值一致,在步骤176,管理员可优化查询语言(例如SQL等)语句。例如,配置管理器服务34可呈现接口屏幕155(图6),使得管理员能够输入特定语句或语句序列的优化后的查询语言集,如前文所述。
此外,在步骤178,管理员可限制执行的查询语言(例如SQL等)语句。例如,配置管理器服务34可呈现接口屏幕155(图6),使得管理员能够创建查询语言(例如SQL等)语句的列表,所述语句被允许在给定数据库上执行,如前文所述。
此外,本发明的实施例还可在步骤179使得管理员能够控制传输至数据库50的查询语言(例如SQL等)语句的批处理以便执行。例如,配置管理器服务34可呈现接口屏幕155(图6),使得管理员能够指定查询语言(例如SQL等)语句要被一起批处理而无需改变应用代码,如前文所述。一旦已确定和输入优化、限制和/或批处理,配置管理器服务34就基于配置标识符113将优化后的查询语言集、限制及批处理规范作为应用特定的特性信息的一部分存储在配置储存库60中以注册信息,如前文所述。
当初始化配置控件20或已更新应用特定的特性信息时,配置控件接收定义对应数据库应用(例如,其包括:优化后的查询语言(例如SQL等)集、对应参数以及用于限制和/或批处理的规范)的配置的应用特定的特性信息。在步骤180,配置控件20配置数据库应用或执行初始化和其他任务。在用于静态执行的配置的情况中(例如,数据库应用特性或参数指示静态执行),在步骤182,优化后的查询语言(例如SQL等)可绑定到数据库50。然而,当配置用于动态执行(例如,数据库应用特性或参数指示动态执行)时,在步骤182,配置控件20拦截由数据库应用执行的查询语言(例如SQL等)语句,并使用用于这些层的适当优化后的查询语言(例如SQL等)来替换所拦截的语句。这使能将优化后的查询语言(例如SQL等)传输至数据库应用,而无需手动地修改跨多个服务器和地理位置的每个数据库应用或对应特性。查询语言语句的拦截和替换可基于应用特定的特性信息而类似地用于静态执行。
一旦安装了查询语言(例如SQL等)配置,就可根据限制和/或批处理规范将查询语言语句传输至数据库50并在步骤184处执行。例如,可借助异构批处理以及延迟执行直到提交事务来优化连接利用率,如前文所述。这使得框架能够在少量的时间将物理连接指派给数据库应用以便执行。可在与数据库应用关联的应用特定的特性信息的一个或多个特性或参数中指定此批处理,如前文所述。
此外,执行的延迟使得所有查询语言(例如SQL等)语句能够由配置控件20捕获和分析以提供这些语句的优化批处理。例如,可移除捕获的语句集内的多余查询语言语句,而所述捕获集中的类似语句可被参数化以合并语句。此外,可由配置控件20分析所述捕获集内的语句的影响,以减少被提供以执行的语句的数目,由此增强性能(例如,可移除所述捕获集内提供附加数据并随后删除此数据的语句而没有负面影响)。
图12中示出了根据本发明的一个实施例的控制系统的备选拓扑。初始地,控制系统200基本类似于前文所述的控制系统100,其中控制器32和配置服管理器服务34嵌入应用服务器程序堆栈81的配置控件20内,以使得应用服务器10能够直接存取配置储存库60,以取回定义对应数据库应用的配置的应用特定的特性信息。具体地说,控制系统200包括一个或多个应用服务器10以及配置储存库60。应用服务器和配置储存库可彼此远离并通过网络70进行通信。网络可由任何数目的任何适当通信介质来实施(例如,广域网(WAN)、局域网(LAN)、因特网、企业内部网络等),如前文所述。备选地,配置储存库60可位于应用服务器10的本地,并经由通信介质78进行通信。通信介质可由任何适当的通信介质(例如,局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施,如前文所述。在配置储存库60由网络(例如,LAN和WAN)存取的情况中,配置储存库可包括数据库服务器或采取数据库服务器的形式。数据库服务器可由任何传统的、或优选地配备有显示器或监视器、基本部分(例如包括处理器、存储器和/或内部或外部通信设备(例如,调制解调器、网卡等))、可选的输入设备(例如键盘、鼠标或其他输入设备)、及任何商用和/或订制软件(例如服务器/通信软件等)的其他计算机系统来实施。
应用服务器10基本类似于在前文所描述的应用服务器,其中每个应用服务器耦合至对应事务或其他数据库50。数据库50和配置储存库60基本类似于前文所述的数据库和配置储存库。每个应用服务器和对应数据库可彼此远离并通过网络70进行通信。备选地,应用服务器和对应数据库可彼此位于本地及经由通信介质76进行通信。通信介质可由任何适当的通信介质(例如,局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施,如前文所述。在数据库50由网络(例如LAN和WAN)存取时,数据库可以包括数据库服务器或采取数据库服务器的形式。数据库服务器可由任何传统的、或优选地配备有显示器或监视器、基本部分(例如包括处理器、存储器、和/或内部或外部通信设备(例如调制解调器、网卡等))、可选的输入设备(例如键盘、鼠标或其他输入设备)、及任何商用和/或订制软件(例如服务器/通信软件等)的其他计算机系统来实施。
每个应用服务器10包括一个或多个数据库应用80(例如,包括或关联于来自对应数据库50的软件应用处理数据以执行期望动作、实施数据库存取以从对应数据库50中取回数据以用于该处理的对应基础过程、到对应数据库50的连接和/或查询语言(例如SQL等)执行模型)。在程序堆栈81中提供来自数据库50的软件应用处理数据和对应基础过程(例如,包括管理数据库连接)。每个应用服务器10包括一个或多个数据库应用80,每个数据库应用80包括具有多个层82的程序堆栈81,它们相互操作以提供对对应数据库50的存取并实施查询语言(例如SQL等)执行模型,如前文所述。每个数据库应用与应用特定的特性信息相关联,所述应用特定的特性信息定义此数据库应用的一个或多个配置,并且包括控制存取对应数据库50的方式的各种特性或参数。数据库应用的应用特定的特性信息的各种特性或参数可涉及应用服务器10和/或一个或多个程序堆栈层82。此外,每个数据库应用80(例如,经由程序堆栈81)实施具有相关应用特定的特性信息的执行模型,所述应用特定的特性信息包括特性或参数,它们控制执行具有查询语言(例如SQL等)语句形式的数据库查询的方式,如前文所述。
配置储存库60存储应用特定的特性信息(例如,包括应用服务器10、程序堆栈81的层82、数据库连接和/或查询语言(例如SQL等)执行模型的特性),所述应用特定的特性信息定义数据库应用的配置,以配置所述数据库应用,如前文所述。控制系统200基本上采用应用服务器10内的上述控制服务器30的功能性,以使得管理员(例如,数据库管理员、系统管理员或其他用户)能够集中地控制数据库应用。
具体地说,配置控件20包括控制器32和配置管理器服务34,它们均基本类似于上述控制器和配置控件管理器服务。配置管理服务34与一个或多个终端用户系统90的配置管理员接口40交互,以使得管理员能够查看、定义、输入和/或编辑应用特定的特性信息,以如前文所述基本相同的方式来集中地控制和配置数据库应用。所输入的应用特定的特性信息由配置管理器服务34根据配置标识符113存储在配置储存库60中,如前文所述。终端用户系统90和应用服务器10可彼此远离并经由网络70进行通信。备选地,终端用户系统90可位于应用服务器10的本地并经由通信介质79进行通信。网络可由任何数目的任何适当的通信介质(例如广域网(WAN)、局域网(LAN)、因特网、企业内部网络等)来实施,如前文所述。
控制器32与配置管理器服务34相互操作,以取回应用特定的特性信息,所述应用特定的特性信息根据配置标识符113以与前文所描述基本相同的方式定义来自配置储存库60的对应数据库应用的期望配置。取回应用特定的特性信息以响应控制器32的初始化,或响应对应用特定的特性信息的更新,如前文所述。控制器32可利用配置储存库60的指定URL或地址来建立通信,或可采用自动检测机制以与前文所述基本相同的方式来检测配置储存库。
一旦取回了应用特定的特性信息,控制器32就将所取回的应用特定的特性信息提供给配置控件20。配置控件应用所述应用特定的特性信息,以与前文所述基本相同的方式配置对应数据库应用。控制器和配置服务管理员可备选地嵌入应用服务器10的程序堆栈81中的一个或多个层内,或在应用服务器10的程序堆栈81内形成一个或多个层,或驻留于应用服务器外部,但可由应用服务器的一个或多个程序堆栈存取以配置数据库应用。
将理解,前文所描述和图中例示的实施例仅代表实现用于集中地控制数据库应用的实施例的许多方式中的几种方式。
本发明的实施例的拓扑可包括任何数目的计算机或其他处理系统(例如数据库、应用、控件或其他服务器系统、终端用户系统等)及以任何期望方式排列的数据库或其他储存库,其中本发明的实施例可应用于任何期望类型的计算环境(例如,云计算、客户端-服务器端(例如用作客户端的应用服务器(或配置控件)和用作服务器端的控制服务器(或控制器)、网络计算、大型计算机等))。由本发明的实施例采用的计算机或其他处理系统可由任何数目的任何个人或其他类型的计算机或处理系统来实施(例如IBM-可兼容、Apple、Macintosh、膝上型计算机、palm、pilot等),并可包括任何商用操作系统(例如Windows、OS/2、Unix、Linux等),及任何商用或订制软件(例如,浏览器软件、通信软件、服务器软件、控制软件)(例如,控制器、配置管理器服务、配置管理器接口、程序堆栈层等)。这些系统可包括任何类型的监视器和输入设备(例如键盘、鼠标、语音识别等)以输入和/或查看信息。
应理解,用于本发明的实施例的计算机系统的软件(例如控制器、配置管理器服务、配置管理器接口、程序堆栈层)可以以任何期望的计算机语言来实施,并由在计算机领域的技术人员根据包含在说明书中的描述和图中示出的流程图来开发。例如,控制器和配置管理器服务可在Java中实施,而配置控件可在C++中实施。此外,执行各种功能的软件的在此的任何参照通常指执行在软件控制下的这些功能的计算机系统或处理器。本发明的实施例的计算机系统备选地可由任何类型的硬件和/或其他处理电路实施。
计算机系统的各种功能可以任何方式分布在任何数目的软件和/或硬件模块或单元、处理或计算机系统和/或电路之间,其中计算机或处理系统可彼此本地或远程地设置,并经由任何适当的通信介质进行通信(例如LAN、WAN、企业内部网络、因特网、硬件线路、调制解调器连接、无线等)。例如,本发明的实施例的功能可以任何方式分布在各种终端用户、控制服务器、应用服务器、数据库服务器系统、和/或任何其他中间处理设备之间。前文所描述及流程图中示出的软件和/或算法可利用实现在此所描述的功能的任何方式来修改。此外,流程图或说明书中的功能可利用实现期望操作的任何次序来执行。
本发明的实施例的软件(例如控制器、配置管理器服务、配置管理器接口、程序堆栈层等)可在可记录介质(例如磁性或光学介质、磁性-光学介质、软盘、CD-ROM、DVD、存储器件等)上提供,以在独立系统或由网络或其他通信介质连接的系统上使用。
通信网络可由任何数目的任何类型的通信网络(例如LAN、WAN、因特网、企业内部网络、VPN等)来实施。本发明的实施例的计算机系统(例如数据库、应用、控件、或其他服务器系统、终端用户系统等)可包括任何传统或其他通信设备以经由任何传统或其他通信协议通过网络进行通信。计算机系统(例如数据库、应用、控件、或其他服务器系统、终端用户系统等)可利用任何类型的连接(例如有线、无线等)来存取网络。通信介质可由任何适当的通信介质(例如局域网(LAN)、硬件线路、无线链接、企业内部网络等)来实施。
数据库和储存库可由任何数目的任何传统或其他数据库、数据储存或存储结构(例如文件、数据结构、数据或其他储存库等)来实施。数据库可彼此远离或位于本地,和/或远离服务器系统(例如应用服务器、控制服务器、数据库服务器等)、或位于服务器系统的本地。应用特定的特性信息可包括任何期望的应用特定的或其他信息,并且应用特定的特性信息的所有或任何部分可存储在任何数目的数据库、数据储存库、或彼此位于本地或彼此远离的存储单元。例如,应用特定的特性信息的所有或一部分可存储于一个或多个数据库50中。
数据库应用可包括使能处理数据库中的数据的任何数目的任何组件(例如程序堆栈、应用服务器软件、程序堆栈的一个或多个层的任何部分、及应用服务器软件的任何部分等)。程序堆栈可包括以任何方式排列和提供任何期望功能的任何数目的层(例如事务功能、映射功能、连接和/或存取功能、通信功能等)。数据库应用可提供商业或任何其他类型的实施,以处理储存于数据库中的数据。数据库应用(或其任何部分)可与任何数目的标识符相关联。数据库应用和配置标识符可包括任何数目的任何适当的字符或符号(例如,字母数字、标点或其他符号等)或任何其他适当信息(属性、一个或多个附加标识符等)。数据库应用和/或配置标识符可用于存储和/或取回数据库应用的适当信息及其部分(例如特性、运行时信息等)。例如,单独数据库应用和/或配置标识符可用于数据库应用的每一部分(例如程序堆栈层、应用服务器等),以取回和应用包括这些部分的特性的应用特定的特性信息。在此情况中,可以配置数据库应用的一个或多个特定部分。此外,数据库应用可与任何数目的配置相关联,其中取回每个配置的配置标识符可包括数据库应用标识符和任何附加信息(例如属性、特定配置的标识符等)。数据库应用和/或配置标识符可以任何适当的方式用于取回或确定期望的应用特定的特性信息(例如查找表、关键字或数据库表的其他字段等)的配置储存库内的位置(例如文件名、地址、指针等)。
应用特定的特性信息可包括任何适当的数据库应用或其他实体的应用特定或其他信息(例如属性、特性、特征、操作参数等),并可关联于数据库应用的任何部分(例如程序堆栈的一个或多个层、应用服务器等)。应用特定的特性信息可以任何方式存储在配置储存库或其他数据库或存储单元中(例如根据数据库应用和/或配置标识符或其他索引、根据特性特征或数据库应用的相关部分等)。数据库应用和/或应用特定的特性信息的特性可根据任何适当的准则(例如数据源、连接等)来分组。应用特定的特性信息可本地存储在应用服务器上和/或储存在远程或本地储存库内。任何数目的特性和应用特定的特性信息可被存储和/或取回以配置数据库应用。
可以任何适当的方式(例如,标志或其他指示器、控制提供者的统一资源定位器(URL)或地址、自动检测机制等)检测集中式或其他控制的存在。可以任何方式(例如,将取回的特性值存储在对应配置变量中、存储器或其他储存位置(例如文件、寄存器等)等)来应用数据库应用的应用特定的特性信息。可以以任何期望时间间隔(例如分钟、秒等)轮询(例如传输对更新信息的请求)更新信息的取回,并且可为周期性的或处于各种情况。更新的信息备选地可被自动取回并以任何期望时间间隔(例如在更新后的数分钟、数秒钟、随即在更新后的时刻)被提供给数据库应用。异常或消息可包括任何期望信息(例如错误码、说明、指示器等),并可被提供给任何感兴趣的一方(例如任何管理员或其他用户等),以响应任何情况(例如关于取回数据、配置数据库或其他应用的错误或其他情况)。
本发明的实施例可采用任何数目或类型的用户接口(例如图形用户接口(GUI)、命令行、提示等),其中接口可包括以任何方式排列的信息。所述接口可包括任何数目的任何类型的设置于任何位置的输入或致动机制(例如按钮、图标、字段、框、链接等)以经由任何适当的输入设备(例如鼠标、键盘等)输入/显示信息及启始期望动作。控制系统可由任何适当的用户来操作以配置数据库应用(例如数据库管理员、系统管理员或终端用户等)。接口屏幕可包括任何适当的激活器(例如链接、标签等)以便以任何方式在屏幕之间导航。
查询语言优化可以以任何方式来执行(例如手动、查询语言优化器等),而查询语言语句可以任何方式从执行中加以限制(例如提供被允许执行的语句或语句属性、提供不允许执行的语句或语句属性等)。查询语言语句批处理可以以任何期望方式来执行(例如手动地指定要批处理的语句等)。可以任何方式来捕获和分析所述语句以确定批处理顺序。批处理执行可延迟任何期望时间间隔,或备选地,批处理执行可于指定的时间或编程间隔(例如事务边界等)来执行。查询语言执行模型可用于任何期望查询或其他语言(例如SQL等)。
数据库应用控制可从单个中央平台(例如中央控制器等)执行以对企业系统内的所有数据库应用提供集中控制。备选地,数据库应用的控制可从任何数目的平台执行,其中每个平台可控制企业内的一个或多个数据库应用的任何适当的方面或部分。
本发明的实施例并不限于如前文所讨论的使用或应用特定的特性信息,而是可用于集中地查看、定义和/或修改任何数据库应用的任何期望的应用特定的特性信息或相关项目以配置这些项目。例如,控制系统可使得用户能够集中地设置数据库应用的初始数据库连接配置,及集中地控制从目前配置的数据库连接至不同的数据库连接的数据库应用的重定向。连接的数目可为数据库的特性,并指示允许连至数据库的开启连接的数目,其中数据库应用的动作可根据连至数据库的连接的数目来加以控制。通过实例的方式,数据库应用可根据连至数据库的连接是活动还是耗尽的数目而采取不同阶段的动作。备选地,连接的数目可为数据库应用的特性并指示允许在连接池中保持的开启连接的数目。此外,控制系统可使得用户能够集中地查看此拓扑,包括配置哪些数据库应用及连接至这些数据库应用的数据库。
控制系统可追踪配置变化并将其存储在配置储存库中,并使得用户能够集中地查看和审核这些变化的轨迹。控制系统可使得用户能够集中地定义数据库应用和数据库的任意逻辑、分层分组,并按照定义的逻辑、分层分组和策略集中地查看数据库或数据库应用以及它们的配置。
此外,控制系统可使得用户能够集中地查看和控制应用服务器数据源,而无需应用服务器重新配置(其可以是复杂和易于出错的)或服务器重新启动,并集中地改变任意的数据库应用配置特性。控制系统还可使得用户能够集中地管理数据库应用静态查询语言(例如SQL等)的使用,及改变查询语言编程模型。此外,控制系统可使得用户能够集中地查看所有数据库应用设置,包括驱动器级别、环境信息、应用特性和网站服务器信息。
本发明的实施例的技术并不限于数据库应用的控制,而是可应用于控制和/或配置任何适当的实施(例如网络、计算机(例如服务器、客户端等)、计算机或其他环境、工具、仿真、处理或其他设备等)。标识符可以以任何方式将数据库应用与应用特定的特性信息(例如索引或关键字等)和/或应用服务器(例如,经由查找表或其他方式以与应用服务器的URL、地址或其他标识符链接)相关联。
本文中所用的术语,仅仅是为了描述特定的实施例,而不意图限定本发明。本文中所用的单数形式的“一”和“该”,旨在也包括复数形式,除非上下文中明确地另行指出。还要知道,“包含”、“包含”等在本说明书中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件,以及/或者它们的组合。
以下的权利要求中的对应结构、材料、操作以及所有功能性限定的装置或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它单元相组合地执行该功能的结构、材料或操作。所给出的对本发明的描述其目的在于示意和描述,并非是穷尽性的,也并非是要把本发明限定到所表述的形式。对于所属技术领域的普通技术人员来说,在不偏离本发明范围和精神的情况下,显然可以作出许多修改和变型。对实施例的选择和说明,是为了最好地解释本发明的原理和实际应用,使所属技术领域的普通技术人员能够明了,本发明可以有适合所要的特定用途的具有各种改变的各种实施方式。
所属技术领域的技术人员知道,本发明的各方面可以体现为系统、方法或计算机程序产品。因此,本发明的各方面可以具体实现为以下形式,即,可以是完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“系统”的软件部分与硬件部分的组合。此外,本发明的各方面还可以采取体现在任何有形的表达介质中的计算机程序产品的形式,该介质中包含计算机可用的程序码。
可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质,计算机可读存储介质例如可以是-但不限于-电的、磁的、光的、电磁的、红外线的、或半导体的系统、装置、器件或传播介质、或前述各项的任何适当的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括以下:有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或前述各项的任何适当的组合。在本文语境中,计算机可读存储介质可以是任何含有或存储供指令执行系统、装置或器件使用的或与指令执行系统、装置或器件相联系的程序的有形介质。
计算机可读信号介质可以包括例如在基带中或作为载波的一部分传播的带有计算机可读程序代码的数据信号。这样一种传播信号可以采取任何适当的形式,包括-但不限于-电磁的、光的或其任何适当的组合。计算机可读信号介质可以是不同于计算机可读存储介质的、可以传达、传播或传输供指令执行系统、装置或器件使用的或与指令执行系统、装置或器件相联系的程序的任何一种计算机可读介质。
包含在计算机可读介质中的程序代码可以采用任何适当的介质传输,包括-但不限于-无线、有线、光缆、射频等等、或上述各项的任何适当的组合。
用于执行本发明的操作的计算机程序码,可以以一种或多种程序设计语言的任何组合来编写,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++之类,还包括常规的过程式程序设计语言-诸如“C”程序设计语言或类似的程序设计语言。程序码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络-包括局域网(LAN)或广域网(WAN)-连接到用户的计算机,或者,可以(例如利用因特网服务提供商来通过因特网)连接到外部计算机。
以下参照按照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。要明白的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其它可编程数据处理装置执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以将这些计算机程序指令存储在能指令计算机或其它可编程数据处理装置或其他设备以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的制品。
也可以将计算机程序指令加载到计算机或其它可编程数据处理装置或其他设备上,使得在计算机或其它可编程数据处理装置上执行一系列操作步骤,以产生计算机实现的过程,从而在计算机或其它可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (34)
1.一种控制数据库应用的方法,包括以下步骤:
从数据储存库中取回数据库应用的应用特定的特性信息,其中所述数据库应用提供对数据库系统的存取;及
将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。
2.如权利要求1所述的方法,其中所述应用特定的特性信息包括:一个或多个特性,所述特性与所述数据库应用的查询语言执行模型相关联,以控制查询语言语句的执行。
3.如权利要求2所述的方法,其中所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及应用所述应用特定的特性信息的步骤包括以下步骤:响应于所述应用特定的特性信息指示所述查询语言语句的静态执行,将所述优化后的查询语言语句绑定至所述数据库系统。
4.如权利要求2或3所述的方法,其中所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及应用所述应用特定的特性信息的步骤包括以下步骤:响应于所述应用特定的特性信息指示替换所述数据库应用的查询语言语句,拦截所述查询语言语句并使用所述优化后的查询语言语句来替换所述查询语言语句。
5.如权利要求2至4中的任一权利要求所述的方法,其中所述应用特定的特性信息包括:被许可执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。
6.如权利要求2至5中的任一权利要求所述的方法,其中所述应用特定的特性信息包括:被禁止执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。
7.如权利要求2至6中的任一权利要求所述的方法,其中所述应用特定的特性信息包括:待批量执行以控制所述数据库应用的操作的查询语言语句的指示。
8.如任一先前权利要求所述的方法,其中所述数据库应用包括:用于存取所述数据库系统的具有多个层的程序堆栈,以及其中所述应用特定的特性信息包括:与所述程序堆栈的至少一个层关联以控制所述数据库应用的操作的一个或多个特性。
9.如任一先前权利要求所述的方法,其中所述应用特定的特性信息包括:连接的数目,以根据到所述数据库系统的连接的数目来控制所述数据库应用的动作。
10.如任一先前权利要求所述的方法,其中所述应用特定的特性信息包括:连接的数目,以控制由所述数据库应用维护的到所述数据库系统的连接的数目。
11.如任一先前权利要求所述的方法,其中取回所述应用特定的特性信息的步骤包括以下步骤:
确定所述数据库应用的更新后的应用特定的特性信息的存在;以及
从所述数据储存库取回所述更新后的应用特定的特性信息。
12.如任一先前权利要求所述的方法,其中所述数据储存库存储多个数据库应用的应用特定的特性信息,并且其中取回所述应用特定的特性信息的步骤包括以下步骤:
根据相应标识符从所述数据储存库取回每个数据库应用的应用特定的特性信息。
13.如权利要求12所述的方法,其中所述数据库应用中的至少两个数据库应用位于不同计算机系统上。
14.如任一先前权利要求所述的方法,其中所述应用特定的特性信息包括:认证对应用户以针对数据库对象实施规则的简档。
15.如任一先前权利要求所述的方法,其中所述数据库应用与均存储在所述数据储存库中的多个配置相关联,以及包括所述应用特定的特性信息以针对对应期望操作而配置所述数据库应用。
16.如任一先前权利要求所述的方法,其中取回所述应用特定的特性信息的步骤包括以下步骤:
拦截所述数据库应用的已执行查询语言语句并提供与这些语句的执行有关的性能信息;以及
根据所述性能信息与阈值的关系而将所述已执行查询语言语句与用于执行的优化后的查询语言语句相关联,其中所述应用特定的特性信息包括所述优化后的查询语言语句。
17.一种用于控制数据库应用的系统,包括:
计算机系统,其包括:数据库应用,以提供对数据库系统的存取,其中所述计算机系统还包括至少一个处理器,所述处理器被配置为:
请求从数据储存库中取回所述数据库应用的应用特定的特性信息;及
将所取回的应用特定的特性信息应用于所述数据库应用,以控制所述数据库应用的操作。
18.如权利要求17所述的系统,其中所述应用特定的特性信息包括:一个或多个特性,所述特性与所述数据库应用的查询语言执行模型相关联,以控制查询语言语句的执行。
19.如权利要求18所述的系统,其中所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及响应于所述应用特定的特性信息指示所述查询语言语句的静态执行而将所述优化后的查询语言语句绑定至所述数据库系统。
20.如权利要求18或19所述的系统,其中所述应用特定的特性信息包括:用于执行的优化后的查询语言语句,以及所述至少一个处理器还被配置为:响应于所述应用特定的特性信息指示替换所述数据库应用的查询语言语句,拦截所述查询语言语句并使用所述优化后的查询语言语句来替换所述查询语言语句。
21.如权利要求18至20中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:被许可执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。
22.如权利要求18至21中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:被禁止执行以控制所述数据库应用的操作的至少一个查询语言语句的指示。
23.如权利要求18至22中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:待批量执行以控制所述数据库应用的操作的查询语言语句的指示。
24.如权利要求17至23中的任一权利要求所述的系统,其中所述数据库应用包括:用于存取所述数据库系统的具有多个层的程序堆栈,以及其中所述应用特定的特性信息包括:与所述程序堆栈的至少一个层关联以控制所述数据库应用的操作的一个或多个特性。
25.如权利要求17至24中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:连接的数目,以根据到所述数据库系统的连接的数目来控制所述数据库应用的动作。
26.如权利要求17至25中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:连接的数目,以控制由所述数据库应用维护的到所述数据库系统的连接的数目。
27.如权利要求17至26中的任一权利要求所述的系统,其中所述至少一个处理器还被配置为:
定期请求从所述数据储存库中取回所述数据库应用的更新后的应用特定的特性信息。
28.如权利要求17至27中的任一权利要求所述的系统,其中所述数据储存库存储多个数据库应用的应用特定的特性信息,其中所述系统还包括多个计算机系统,每个计算机系统均包括数据库应用和至少一个处理器,所述处理器被配置为:
根据标识符从所述数据储存库取回对应数据库应用的应用特定的特性信息。
29.如权利要求17至28中的任一权利要求所述的系统,还包括:
控制系统,其与所述数据储存库通信并包括至少一个处理器,所述处理器被配置为:
接收来自所述计算机系统的请求并且根据标识符从所述数据储存库取回所述数据库应用的所述应用特定的特性信息;以及
将所取回的应用特定的特性信息提供给所述计算机系统。
30.如权利要求17至29中的任一权利要求所述的系统,还包括:
控制系统,其与所述数据储存库通信并包括至少一个处理器,所述处理器被配置为:
确定所述数据库应用的更新后的应用特定的特性信息的存在;以及
从所述数据储存库取回所述数据库应用的所述更新后的应用特定的特性信息并将所述更新后的应用特定的特性信息提供给所述计算机系统。
31.如权利要求17至30中的任一权利要求所述的系统,其中所述应用特定的特性信息包括:认证对应用户以针对数据库对象实施规则的简档。
32.如权利要求17至31中的任一权利要求所述的系统,其中所述数据库应用与均存储在所述数据储存库中的多个配置相关联,以及包括所述应用特定的特性信息以针对对应期望操作而配置所述数据库应用。
33.如权利要求17至32中的任一权利要求所述的系统,其中所述至少一个处理器还被配置为:
拦截所述数据库应用的已执行查询语言语句并提供与这些语句的执行有关的性能信息;以及
根据所述性能信息与阈值的关系而将所述已执行查询语言语句与用于执行的优化后的查询语言语句相关联,其中所述应用特定的特性信息包括所述优化后的查询语言语句。
34.一种包括存储在计算机可读介质上的计算机程序代码的计算机程序,当所述代码被载入计算机系统并在其上执行时,将导致所述计算机系统执行如权利要求1至16中的任一权利要求所述的方法的所有步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/771,104 US9129000B2 (en) | 2010-04-30 | 2010-04-30 | Method and system for centralized control of database applications |
US12/771,104 | 2010-04-30 | ||
PCT/EP2011/055829 WO2011134795A1 (en) | 2010-04-30 | 2011-04-13 | Centralized control of database applications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102859521A true CN102859521A (zh) | 2013-01-02 |
CN102859521B CN102859521B (zh) | 2016-06-15 |
Family
ID=44310317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180018490.2A Active CN102859521B (zh) | 2010-04-30 | 2011-04-13 | 数据库应用的集中控制 |
Country Status (7)
Country | Link |
---|---|
US (3) | US9129000B2 (zh) |
JP (1) | JP5700730B2 (zh) |
CN (1) | CN102859521B (zh) |
DE (1) | DE112011101508T5 (zh) |
GB (1) | GB2493311A (zh) |
TW (1) | TWI505110B (zh) |
WO (1) | WO2011134795A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016086800A1 (zh) * | 2014-12-03 | 2016-06-09 | 阿里巴巴集团控股有限公司 | 用于对MySQL数据库的并发操作进行控制的方法及装置 |
WO2016177027A1 (zh) * | 2015-05-06 | 2016-11-10 | 华为技术有限公司 | 批量数据查询方法和装置 |
CN108770367A (zh) * | 2016-05-26 | 2018-11-06 | 艾尔维兹股份有限公司 | 密集数据获取、存储和取回 |
CN110716960A (zh) * | 2019-10-22 | 2020-01-21 | 北京锐安科技有限公司 | 一种数据库查询方法、装置、设备及存储介质 |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9129000B2 (en) | 2010-04-30 | 2015-09-08 | International Business Machines Corporation | Method and system for centralized control of database applications |
US20130081109A1 (en) | 2011-09-23 | 2013-03-28 | Corent Technology, Inc. | Multi-Tenant Agile Database Connector |
US9086937B2 (en) | 2012-05-16 | 2015-07-21 | Apple Inc. | Cloud-based application resource files |
US9401869B1 (en) * | 2012-06-04 | 2016-07-26 | Google Inc. | System and methods for sharing memory subsystem resources among datacenter applications |
US8903178B2 (en) | 2012-11-02 | 2014-12-02 | International Business Machines Corporation | Adjusting application properties |
US8694574B2 (en) * | 2012-11-08 | 2014-04-08 | Concurix Corporation | Optimized settings in a configuration database with boundaries |
TWI510938B (zh) * | 2012-11-23 | 2015-12-01 | Cobrasonic Software Inc | 藉由異動日誌檔識別資料庫異動之方法以及資料庫系統 |
WO2014086043A1 (en) * | 2012-12-07 | 2014-06-12 | Hewlett-Packard Development Company, L.P. | Network resource management |
US9665474B2 (en) | 2013-03-15 | 2017-05-30 | Microsoft Technology Licensing, Llc | Relationships derived from trace data |
US10152605B2 (en) * | 2014-05-21 | 2018-12-11 | Siddharth Shetye | Systems and methods for front-end and back-end data security protocols |
US10235434B2 (en) * | 2014-07-29 | 2019-03-19 | Red Hat, Inc. | Optimizing loading of relational data for applications |
KR102037300B1 (ko) * | 2015-02-17 | 2019-10-30 | 주식회사 엘지유플러스 | 가입 프로파일 처리 시스템, 어플리케이션서버 및 그 가입 프로파일 처리방법 |
US10862747B2 (en) | 2015-03-25 | 2020-12-08 | Airwatch Llc | Single user device staging |
US10333778B2 (en) | 2015-03-25 | 2019-06-25 | Airwatch, Llc | Multiuser device staging |
CN105677326B (zh) * | 2015-12-28 | 2019-03-22 | 国云科技股份有限公司 | 一种软件接口参数验证方法 |
US10536338B2 (en) * | 2016-07-07 | 2020-01-14 | International Business Machines Corporation | Networking connection resolution assistant |
US10635659B2 (en) * | 2016-09-19 | 2020-04-28 | Salesforce.Com, Inc. | Mobile application bundled with metadata database |
US10885024B2 (en) * | 2016-11-03 | 2021-01-05 | Pearson Education, Inc. | Mapping data resources to requested objectives |
US11200228B2 (en) * | 2017-04-19 | 2021-12-14 | American International Group, Inc. | Integrated object environment system and method |
US11182382B2 (en) * | 2017-04-19 | 2021-11-23 | American International Group, Inc. | Integrated object environment system and method |
US11416235B2 (en) * | 2017-09-28 | 2022-08-16 | Oracle International Corporation | System and method for managed server independence for deployment of software applications and libraries |
US10642828B2 (en) * | 2017-10-10 | 2020-05-05 | Sap Se | Searchable encryption scheme with external tokenizer |
US10796013B2 (en) * | 2017-11-13 | 2020-10-06 | Veeva Systems Inc. | User programmatic interface for supporting data access control in a database system |
CN110658980B (zh) * | 2018-06-29 | 2021-03-23 | 华为技术有限公司 | 数据处理方法及装置、存储系统 |
US11113258B2 (en) | 2019-05-08 | 2021-09-07 | Bank Of America Corporation | Artificially-intelligent, continuously-updating, centralized-database-identifier repository system |
GB2593363A (en) | 2019-08-08 | 2021-09-22 | Google Llc | Low entropy browsing history for content quasi-personalization |
US11194866B2 (en) | 2019-08-08 | 2021-12-07 | Google Llc | Low entropy browsing history for content quasi-personalization |
US11507371B2 (en) * | 2019-12-11 | 2022-11-22 | Microsoft Technology Licensing, Llc | Column data driven arithmetic expression evaluation |
US11379465B2 (en) * | 2020-01-09 | 2022-07-05 | Raytheon Company | Autonomous self-healing application data validation using database configurations |
US11442965B2 (en) * | 2020-02-28 | 2022-09-13 | Paypal, Inc. | Processing techniques for database transaction requests with operations defined by different ORM libraries |
US11354120B1 (en) * | 2020-06-05 | 2022-06-07 | Amazon Technologies, Inc. | Machine learning-based software application modernization assessments |
US11467828B1 (en) | 2020-06-05 | 2022-10-11 | Amazon Technologies, Inc. | Ontology-based software modernization assessment engines |
US11567758B2 (en) * | 2020-12-09 | 2023-01-31 | Adp, Inc. | Configuration properties management for software |
CN113407360A (zh) * | 2021-05-21 | 2021-09-17 | 上汽通用五菱汽车股份有限公司 | 数据处理方法、服务器及计算机可读存储介质 |
US11269913B1 (en) * | 2021-06-24 | 2022-03-08 | Snowflake Inc. | Reverse extract, transform, load (ETL) tool |
CN113590643B (zh) * | 2021-09-28 | 2022-03-18 | 太平金融科技服务(上海)有限公司深圳分公司 | 基于双轨数据库的数据同步方法、装置、设备和存储介质 |
US11930047B2 (en) * | 2021-10-11 | 2024-03-12 | Hewlett Packard Enterprise Development Lp | Unified policy broker |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050193033A1 (en) * | 2004-02-26 | 2005-09-01 | International Business Machines Corporation | System and method for database management |
US20070288474A1 (en) * | 2006-06-09 | 2007-12-13 | Hitachi, Ltd. | Method for changing configuration of servers in a shared-nothing database system |
WO2009020472A1 (en) * | 2007-06-28 | 2009-02-12 | Stratavia Corporation | Standard operating procedure automation in database administration |
US20090240711A1 (en) * | 2008-03-20 | 2009-09-24 | Dbsophic Ltd. | Method and apparatus for enhancing performance of database and environment thereof |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5941947A (en) * | 1995-08-18 | 1999-08-24 | Microsoft Corporation | System and method for controlling access to data entities in a computer network |
US6850893B2 (en) * | 2000-01-14 | 2005-02-01 | Saba Software, Inc. | Method and apparatus for an improved security system mechanism in a business applications management system platform |
JP3560806B2 (ja) | 1998-03-30 | 2004-09-02 | 三菱電機株式会社 | サーバクライアント型のデータベースシステムおよびデータベースシステムのリモートデータベースアクセス方法 |
US6487547B1 (en) | 1999-01-29 | 2002-11-26 | Oracle Corporation | Database appliance comprising hardware and software bundle configured for specific database applications |
US6430562B1 (en) * | 1999-03-01 | 2002-08-06 | Electronic Data Systems Corporation | Integrated resource management system and method |
US7123608B1 (en) * | 1999-09-10 | 2006-10-17 | Array Telecom Corporation | Method, system, and computer program product for managing database servers and service |
US7457279B1 (en) * | 1999-09-10 | 2008-11-25 | Vertical Communications Acquisition Corp. | Method, system, and computer program product for managing routing servers and services |
JP2001084257A (ja) | 1999-09-13 | 2001-03-30 | Hitachi Ltd | 問合せ処理方法及びシステム |
US6721747B2 (en) * | 2000-01-14 | 2004-04-13 | Saba Software, Inc. | Method and apparatus for an information server |
US6643652B2 (en) * | 2000-01-14 | 2003-11-04 | Saba Software, Inc. | Method and apparatus for managing data exchange among systems in a network |
US7203752B2 (en) * | 2001-02-16 | 2007-04-10 | Openwave Systems Inc. | Method and system for managing location information for wireless communications devices |
US6854010B1 (en) * | 2001-04-05 | 2005-02-08 | Bluecube Software, Inc. | Multi-location management system |
US7801967B1 (en) * | 2001-06-19 | 2010-09-21 | Microstrategy, Incorporated | Method and system for implementing database connection mapping for reporting systems |
US20030055757A1 (en) * | 2001-07-30 | 2003-03-20 | Pfiffner Kimberly Ann | Method, system and apparatus for enterprise customer contact management |
US7275235B2 (en) * | 2001-08-29 | 2007-09-25 | Molinari Alfred A | Graphical application development system for test, measurement and process control applications |
US7010521B2 (en) | 2002-05-13 | 2006-03-07 | Netezza Corporation | Optimized database appliance |
US7421442B2 (en) | 2002-07-02 | 2008-09-02 | American Express Travel Related Services Company, Inc. | System and method for data capture and reporting |
WO2005024669A1 (en) | 2003-09-04 | 2005-03-17 | Oracle International Corporation | Self-managing database architecture |
US7552420B1 (en) * | 2004-09-01 | 2009-06-23 | Intuit Inc. | Externally defined application configuration |
US7801882B2 (en) | 2004-10-01 | 2010-09-21 | Microsoft Corporation | Optimized constraint and index maintenance for non updating updates |
US7554560B2 (en) * | 2004-12-24 | 2009-06-30 | Donald Pieronek | System for defining network behaviors within application programs |
US7729363B2 (en) * | 2005-01-24 | 2010-06-01 | Research In Motion Limited | System and method for managing communication for component applications |
US7640230B2 (en) * | 2005-04-05 | 2009-12-29 | Microsoft Corporation | Query plan selection control using run-time association mechanism |
US8295492B2 (en) * | 2005-06-27 | 2012-10-23 | Wells Fargo Bank, N.A. | Automated key management system |
JP2007018309A (ja) | 2005-07-08 | 2007-01-25 | Mitsubishi Electric Corp | データベース装置およびdbアクセス制御装置およびアクセス制御システムおよびアクセス制御方法およびアクセス制御プログラム |
US8429630B2 (en) * | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
US7953734B2 (en) * | 2005-09-26 | 2011-05-31 | Oracle International Corporation | System and method for providing SPI extensions for content management system |
US8078597B2 (en) * | 2005-11-17 | 2011-12-13 | Oracle International Corporation | System and method for providing extensible controls in a communities framework |
US8832048B2 (en) * | 2005-12-29 | 2014-09-09 | Nextlabs, Inc. | Techniques and system to monitor and log access of information based on system and user context using policies |
US8862551B2 (en) * | 2005-12-29 | 2014-10-14 | Nextlabs, Inc. | Detecting behavioral patterns and anomalies using activity data |
US7877781B2 (en) * | 2005-12-29 | 2011-01-25 | Nextlabs, Inc. | Enforcing universal access control in an information management system |
US8621549B2 (en) * | 2005-12-29 | 2013-12-31 | Nextlabs, Inc. | Enforcing control policies in an information management system |
US7716240B2 (en) * | 2005-12-29 | 2010-05-11 | Nextlabs, Inc. | Techniques and system to deploy policies intelligently |
US8627490B2 (en) * | 2005-12-29 | 2014-01-07 | Nextlabs, Inc. | Enforcing document control in an information management system |
US9942271B2 (en) * | 2005-12-29 | 2018-04-10 | Nextlabs, Inc. | Information management system with two or more interactive enforcement points |
US8151323B2 (en) * | 2006-04-12 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for providing levels of access and action control via an SSL VPN appliance |
US7613682B2 (en) | 2006-05-16 | 2009-11-03 | International Business Machines Corporation | Statistics collection using path-identifiers for relational databases |
US20070293212A1 (en) * | 2006-06-16 | 2007-12-20 | Neltura Technology, Inc. | System and methods for using online community identities of users to establish mobile communication sessions |
US7865515B2 (en) | 2006-08-28 | 2011-01-04 | Microsoft Corporation | Server side bucketization of parameterized queries |
US8285707B2 (en) | 2006-11-08 | 2012-10-09 | International Business Machines Corporation | Method of querying relational database management systems |
US20080195577A1 (en) * | 2007-02-09 | 2008-08-14 | Wei Fan | Automatically and adaptively determining execution plans for queries with parameter markers |
US8260821B2 (en) * | 2008-02-05 | 2012-09-04 | International Business Machines Corporation | Global, dynamic, remote and central system for database driver configuration |
US8775413B2 (en) | 2008-06-30 | 2014-07-08 | Teradata Us, Inc. | Parallel, in-line, query capture database for real-time logging, monitoring and optimizer feedback |
US8700602B2 (en) | 2008-09-29 | 2014-04-15 | Oracle International Corporation | Multi-database, runtime database query performance monitoring |
US8224806B2 (en) * | 2009-07-31 | 2012-07-17 | Hewlett-Packard Development Company, L.P. | Selectivity-based optimized-query-plan caching |
US9129000B2 (en) | 2010-04-30 | 2015-09-08 | International Business Machines Corporation | Method and system for centralized control of database applications |
US20130254761A1 (en) * | 2012-03-20 | 2013-09-26 | Cellco Partnership D/B/A Verizon Wireless | Granular application sessions tagging |
-
2010
- 2010-04-30 US US12/771,104 patent/US9129000B2/en active Active
-
2011
- 2011-04-13 CN CN201180018490.2A patent/CN102859521B/zh active Active
- 2011-04-13 GB GB201220375A patent/GB2493311A/en active Pending
- 2011-04-13 JP JP2013506575A patent/JP5700730B2/ja active Active
- 2011-04-13 WO PCT/EP2011/055829 patent/WO2011134795A1/en active Application Filing
- 2011-04-13 DE DE201111101508 patent/DE112011101508T5/de not_active Ceased
- 2011-04-21 TW TW100113926A patent/TWI505110B/zh active
-
2015
- 2015-08-10 US US14/822,386 patent/US9679017B2/en active Active
-
2017
- 2017-05-05 US US15/587,909 patent/US10360211B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050193033A1 (en) * | 2004-02-26 | 2005-09-01 | International Business Machines Corporation | System and method for database management |
US20070288474A1 (en) * | 2006-06-09 | 2007-12-13 | Hitachi, Ltd. | Method for changing configuration of servers in a shared-nothing database system |
WO2009020472A1 (en) * | 2007-06-28 | 2009-02-12 | Stratavia Corporation | Standard operating procedure automation in database administration |
US20090240711A1 (en) * | 2008-03-20 | 2009-09-24 | Dbsophic Ltd. | Method and apparatus for enhancing performance of database and environment thereof |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016086800A1 (zh) * | 2014-12-03 | 2016-06-09 | 阿里巴巴集团控股有限公司 | 用于对MySQL数据库的并发操作进行控制的方法及装置 |
CN105718474A (zh) * | 2014-12-03 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 用于对MySQL数据库的并发操作进行控制的方法及装置 |
WO2016177027A1 (zh) * | 2015-05-06 | 2016-11-10 | 华为技术有限公司 | 批量数据查询方法和装置 |
US10678789B2 (en) | 2015-05-06 | 2020-06-09 | Huawei Technologies Co., Ltd. | Batch data query method and apparatus |
CN108770367A (zh) * | 2016-05-26 | 2018-11-06 | 艾尔维兹股份有限公司 | 密集数据获取、存储和取回 |
CN110716960A (zh) * | 2019-10-22 | 2020-01-21 | 北京锐安科技有限公司 | 一种数据库查询方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US10360211B2 (en) | 2019-07-23 |
US20150347524A1 (en) | 2015-12-03 |
GB2493311A (en) | 2013-01-30 |
CN102859521B (zh) | 2016-06-15 |
US9679017B2 (en) | 2017-06-13 |
GB201220375D0 (en) | 2012-12-26 |
TWI505110B (zh) | 2015-10-21 |
JP2013533525A (ja) | 2013-08-22 |
US9129000B2 (en) | 2015-09-08 |
JP5700730B2 (ja) | 2015-04-15 |
TW201202976A (en) | 2012-01-16 |
US20170242888A1 (en) | 2017-08-24 |
US20110270857A1 (en) | 2011-11-03 |
DE112011101508T5 (de) | 2013-03-14 |
WO2011134795A1 (en) | 2011-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102859521A (zh) | 数据库应用的集中控制 | |
EP2035949B1 (en) | Declarative management framework | |
US6976262B1 (en) | Web-based enterprise management with multiple repository capability | |
US8321549B2 (en) | Action execution management for service configuration items | |
US20150046524A1 (en) | Data Management for Mobile Data System | |
US6772159B1 (en) | System and method for disconnected database access by heterogeneous clients | |
EP2182448A1 (en) | Federated configuration data management | |
EP1468375A1 (en) | System and method for autonomously generating heterogeneous data source interoperability bridges based on semantic modeling derived from self adapting ontology | |
US20070156765A1 (en) | Method and apparatus for presentation of a security-focused repository with a party-focused repository | |
US20150317331A1 (en) | Unified platform for application development | |
US20140130005A1 (en) | Mechanisms to persist hierarchical object relations | |
US20180314957A1 (en) | Inferring a label namespace | |
US8561053B2 (en) | Method and system for managing a computer system | |
EP1573584A2 (en) | A knowledge repository system for computing devices | |
US11669513B2 (en) | Structured data collection, presentation, validation and workflow management | |
US8726336B2 (en) | Authorizations for analytical reports | |
KR20050055240A (ko) | 메타데이터 통합관리 시스템 및 방법 | |
WO2007145680A1 (en) | Declarative management framework | |
MacDonald et al. | Profiles | |
Smith | 2 A Critical Introduction to Data Base Management Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |