專(zhuān)利名稱(chēng):數(shù)據(jù)庫(kù)應(yīng)用的集中控制的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實(shí)施例涉及數(shù)據(jù)庫(kù)應(yīng)用的控制,更具體地說(shuō),涉及跨一個(gè)或多個(gè)應(yīng)用服務(wù)器的企業(yè)數(shù)據(jù)庫(kù)應(yīng)用的集中式控制。
背景技術(shù):
企業(yè)通常具有大量的數(shù)據(jù)庫(kù)應(yīng)用。這些數(shù)據(jù)庫(kù)應(yīng)用的每一個(gè)定義相關(guān)的特性,其中一些是應(yīng)用特定的,及提供用于數(shù)據(jù)存取的機(jī)制。然而,控制和優(yōu)化數(shù)據(jù)庫(kù)應(yīng)用的任務(wù)非常復(fù)雜和冗長(zhǎng)。例如,數(shù)據(jù)庫(kù)管理員被迫跨多個(gè)服務(wù)器和多個(gè)地理位置個(gè)別地優(yōu)化每個(gè)數(shù)據(jù)庫(kù)應(yīng)用。目前的控制服務(wù)器上的連接特性的系統(tǒng)在跨分發(fā)在多個(gè)地理位置的多個(gè)服務(wù)器而控制這些特性方面效率很低。此外,數(shù)據(jù)庫(kù)管理員缺乏能力以集中地控制SQL執(zhí)行模型;集中地控制、優(yōu)化及限制所執(zhí)行的SQL ;及控制來(lái)自多個(gè)客戶(hù)端的開(kāi)啟連接的數(shù)目而無(wú)需用作集中式網(wǎng)關(guān)的中間系統(tǒng)。
發(fā)明內(nèi)容
相應(yīng)地,本發(fā)明在第一方面中提供了一種控制數(shù)據(jù)庫(kù)應(yīng)用的方法,包括以下步驟從數(shù)據(jù)儲(chǔ)存庫(kù)中取回?cái)?shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,其中所述數(shù)據(jù)庫(kù)應(yīng)用提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存??;及將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。優(yōu)選地,所述應(yīng)用特定的特性信息包括一個(gè)或多個(gè)特性,所述特性與所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言執(zhí)行模型相關(guān)聯(lián),以控制查詢(xún)語(yǔ)言語(yǔ)句的執(zhí)行。優(yōu)選地,所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及應(yīng)用所述應(yīng)用特定的特性信息的步驟包括以下步驟響應(yīng)于所述應(yīng)用特定的特性信息指示所述查詢(xún)語(yǔ)言語(yǔ)句的靜態(tài)執(zhí)行,將所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句綁定至所述數(shù)據(jù)庫(kù)系統(tǒng)。優(yōu)選地,所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及應(yīng)用所述應(yīng)用特定的特性信息的步驟包括以下步驟響應(yīng)于所述應(yīng)用特定的特性信息指示替換所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言語(yǔ)句,攔截所述查詢(xún)語(yǔ)言語(yǔ)句并使用所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句來(lái)替換所述查詢(xún)語(yǔ)言語(yǔ)句。優(yōu)選地,所述應(yīng)用特定的特性信息包括被許可執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少一個(gè)查詢(xún) 語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述應(yīng)用特定的特性信息包括被禁止執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少一個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述應(yīng)用特定的特性信息包括待批量執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的查詢(xún)語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述數(shù)據(jù)庫(kù)應(yīng)用包括用于存取所述數(shù)據(jù)庫(kù)系統(tǒng)的具有多個(gè)層的程序堆棧,以及其中所述應(yīng)用特定的特性信息包括與所述程序堆棧的至少一個(gè)層關(guān)聯(lián)以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的一個(gè)或多個(gè)特性。優(yōu)選地,所述應(yīng)用特定的特性信息包括連接的數(shù)目,以根據(jù)到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目來(lái)控制所述數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。優(yōu)選地,所述應(yīng)用特定的特性信息包括連接的數(shù)目,以控制由所述數(shù)據(jù)庫(kù)應(yīng)用維護(hù)的到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目。優(yōu)選地,取回所述應(yīng)用特定的特性信息的步驟包括以下步驟確定所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息的存在;以及從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述更新后的應(yīng)用特定的特性信息。優(yōu)選地,所述數(shù)據(jù)儲(chǔ)存庫(kù)存儲(chǔ)多個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,并且其中取回所述應(yīng)用特定的特性信息的步驟包括以下步驟根據(jù)相應(yīng)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回每個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息。優(yōu)選地,所述數(shù)據(jù)庫(kù)應(yīng)用中的至少兩個(gè)數(shù)據(jù)庫(kù)應(yīng)用位于不同計(jì)算機(jī)系統(tǒng)上。優(yōu)選地,所述應(yīng)用特定的特性信息包括認(rèn)證對(duì)應(yīng)用戶(hù)以針對(duì)數(shù)據(jù)庫(kù)對(duì)象實(shí)施規(guī)則的簡(jiǎn)檔。優(yōu)選地,所述數(shù)據(jù)庫(kù)應(yīng)用與均存儲(chǔ)在所述數(shù)據(jù)儲(chǔ)存庫(kù)中的多個(gè)配置相關(guān)聯(lián),以及包括所述應(yīng)用特定的特性信息以針對(duì)對(duì)應(yīng)期望操作而配置所述數(shù)據(jù)庫(kù)應(yīng)用。優(yōu)選地,取回所述應(yīng)用特定的特性信息的步驟包括以下步驟攔截所述數(shù)據(jù)庫(kù)應(yīng)用的已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句并提供與這些語(yǔ)句的執(zhí)行有關(guān)的性能信息;以及根據(jù)所述性能信息與閾值的關(guān)系而將所述已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句與用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句相關(guān)聯(lián),其中所述應(yīng)用特定的特性信息包括所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句。在第二方面中,提供了一種用于控制數(shù)據(jù)庫(kù)應(yīng)用的系統(tǒng) ,包括計(jì)算機(jī)系統(tǒng),其包括數(shù)據(jù)庫(kù)應(yīng)用,以提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存取,其中所述計(jì)算機(jī)系統(tǒng)還包括至少一個(gè)處理器,所述處理器被配置為請(qǐng)求從數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息;及將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。優(yōu)選地,所述應(yīng)用特定的特性信息包括一個(gè)或多個(gè)特性,所述特性與所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言執(zhí)行模型相關(guān)聯(lián),以控制查詢(xún)語(yǔ)言語(yǔ)句的執(zhí)行。優(yōu)選地,所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及響應(yīng)于所述應(yīng)用特定的特性信息指示所述查詢(xún)語(yǔ)言語(yǔ)句的靜態(tài)執(zhí)行而將所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句綁定至所述數(shù)據(jù)庫(kù)系統(tǒng)。優(yōu)選地,所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及所述至少一個(gè)處理器還被配置為響應(yīng)于所述應(yīng)用特定的特性信息指示替換所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言語(yǔ)句,攔截所述查詢(xún)語(yǔ)言語(yǔ)句并使用所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句來(lái)替換所述查詢(xún)語(yǔ)言語(yǔ)句。優(yōu)選地,所述應(yīng)用特定的特性信息包括被許可執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少一個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述應(yīng)用特定的特性信息包括被禁止執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少一個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述應(yīng)用特定的特性信息包括待批量執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的查詢(xún)語(yǔ)言語(yǔ)句的指示。優(yōu)選地,所述數(shù)據(jù)庫(kù)應(yīng)用包括用于存取所述數(shù)據(jù)庫(kù)系統(tǒng)的具有多個(gè)層的程序堆棧,以及其中所述應(yīng)用特定的特性信息包括與所述程序堆棧的至少一個(gè)層關(guān)聯(lián)以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的一個(gè)或多個(gè)特性。優(yōu)選地,所述應(yīng)用特定的特性信息包括連接的數(shù)目,以根據(jù)到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目來(lái)控制所述數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。優(yōu)選地,所述應(yīng)用特定的特性信息包括連接的數(shù)目,以控制由所述數(shù)據(jù)庫(kù)應(yīng)用維護(hù)的到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目。優(yōu)選地,所述至少一個(gè)處理器還被配置為定期請(qǐng)求從所述數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息。優(yōu)選地,所述數(shù)據(jù)儲(chǔ)存庫(kù)存儲(chǔ)多個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,其中所述系統(tǒng)還包括多個(gè)計(jì)算機(jī)系統(tǒng),每個(gè)計(jì)算機(jī)系統(tǒng)均包括數(shù)據(jù)庫(kù)應(yīng)用和至少一個(gè)處理器,所述處理器被配置為根據(jù)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息。所述系統(tǒng)還可包括控制系統(tǒng),其與所述數(shù)據(jù)儲(chǔ)存庫(kù)通信并包括至少一個(gè)處理器,所述處理器被配置為接收來(lái)自所述計(jì)算機(jī)系統(tǒng)的請(qǐng)求并且根據(jù)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述數(shù)據(jù)庫(kù)應(yīng)用的所述應(yīng)用特定的特性信息;以及將所取回的應(yīng)用特定的特性信息提供給所述計(jì)算機(jī)系統(tǒng)。所述系統(tǒng)還可包括控制系統(tǒng),其與所述數(shù)據(jù)儲(chǔ)存庫(kù)通信并包括至少一個(gè)處理器,所述處理器被配置為確定所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息的存在;以及從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述數(shù)據(jù)庫(kù)應(yīng)用的所述更新后的應(yīng)用特定的特性信息并將所述更新后的應(yīng)用特定的特性信息提供給所述計(jì)算機(jī)系統(tǒng)。優(yōu)選地,所述應(yīng)用特定的特性信息包括認(rèn)證對(duì)應(yīng)用戶(hù)以針對(duì)數(shù)據(jù)庫(kù)對(duì)象實(shí)施規(guī)則的簡(jiǎn)檔。優(yōu)選地,所述數(shù)據(jù)庫(kù)應(yīng)用與均存儲(chǔ)在所述數(shù)據(jù)儲(chǔ)存庫(kù)中的多個(gè)配置相關(guān)聯(lián),以及包括所述應(yīng)用特定的特性信息以針對(duì)對(duì)應(yīng)期望操作而配置所述數(shù)據(jù)庫(kù)應(yīng)用。優(yōu)選地,所述至少一個(gè)處理器還被配置為攔截所述數(shù)據(jù)庫(kù)應(yīng)用的已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句并提供與這些語(yǔ)句的執(zhí)行有關(guān)的性能信息;以及根據(jù)所述性能信息與閾值的關(guān)系而將所述已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句與用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句相關(guān)聯(lián),其中所述應(yīng)用特定的特性信息包括所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句。在第三方面中,提供了一種包括存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序,當(dāng)所述代碼被載入計(jì)算機(jī)系統(tǒng)并在其上執(zhí)行時(shí),將導(dǎo)致所述計(jì)算機(jī)系統(tǒng)執(zhí)行根 據(jù)第一方面中的方法的所有步驟。 所述計(jì)算機(jī)程序可以以用于控制數(shù)據(jù)庫(kù)應(yīng)用的計(jì)算機(jī)程序產(chǎn)品的形式實(shí)現(xiàn),所述計(jì)算機(jī)程序產(chǎn)品包括其上包含計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀程序代碼被配置為從數(shù)據(jù)儲(chǔ)存庫(kù)中取回?cái)?shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息;及將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。根據(jù)本發(fā)明的一個(gè)實(shí)施例,一種系統(tǒng)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)應(yīng)用的控制。所述系統(tǒng)包括計(jì)算機(jī)系統(tǒng),所述計(jì)算機(jī)系統(tǒng)包括數(shù)據(jù)庫(kù)應(yīng)用,以提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存?。患爸辽僖粋€(gè)處理器。所述計(jì)算機(jī)系統(tǒng)請(qǐng)求從數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,及將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。本發(fā)明的實(shí)施例還包括用于使用與前文描述的基本相同方式來(lái)控制數(shù)據(jù)庫(kù)應(yīng)用的方法和計(jì)算機(jī)程序產(chǎn)品。
現(xiàn)在將僅通過(guò)實(shí)例的方式參考附圖描述本發(fā)明的優(yōu)選實(shí)施例,這些附圖是圖I示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的控制系統(tǒng)的實(shí)例拓?fù)?;圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供數(shù)據(jù)庫(kù)連接信息的實(shí)例圖形用戶(hù)接口屏眷的不意圖;圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供數(shù)據(jù)庫(kù)應(yīng)用的配置信息的實(shí)例圖形用戶(hù)接口屏幕的示意圖;圖4是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供與數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián)的應(yīng)用特定的特性信息的實(shí)例圖形用戶(hù)接口屏幕的示意圖;圖5是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供與數(shù)據(jù)庫(kù)應(yīng)用的數(shù)據(jù)庫(kù)連接有關(guān)的連接信息的實(shí)例圖形用戶(hù)界屏幕的示意圖;圖6是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供與數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型有關(guān)的信息的實(shí)例圖形用戶(hù)接口屏幕的示意圖7是根據(jù)本發(fā)明的一個(gè)實(shí)施例的示出其中應(yīng)用服務(wù)器取回?cái)?shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息的方式的程序流程圖;圖8是根據(jù)本發(fā)明的一個(gè)實(shí)施例的示出其中從配置儲(chǔ)存庫(kù)中取回?cái)?shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息及將其提供至應(yīng)用服務(wù)器的方式的程序流程圖;圖9是根據(jù)本發(fā)明的一個(gè)實(shí)施例的示出其中從配置儲(chǔ)存庫(kù)取回?cái)?shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息及將其提供至應(yīng)用服務(wù)器以更新數(shù)據(jù)庫(kù)應(yīng)用配置的備選方式的程序流程圖;圖10是根據(jù)本發(fā)明的一個(gè)實(shí)施例的示出其中控制查詢(xún)語(yǔ)言執(zhí)行(例如SQL等)的方式的程序流程圖;圖11是根據(jù)本發(fā)明的一個(gè)實(shí)施例的提供與查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行有關(guān)的 各種性能信息的實(shí)例圖形用戶(hù)接口屏幕的示意圖;以及圖12是根據(jù)本發(fā)明的一個(gè)實(shí)施例的控制系統(tǒng)的備選實(shí)例拓?fù)涞氖疽鈭D。
具體實(shí)施例方式本發(fā)明的各實(shí)施例涉及用于集中地控制企業(yè)數(shù)據(jù)庫(kù)應(yīng)用的機(jī)制(例如,包括或關(guān)聯(lián)于來(lái)自數(shù)據(jù)庫(kù)的軟件應(yīng)用處理數(shù)據(jù)以執(zhí)行期望動(dòng)作;對(duì)應(yīng)基礎(chǔ)過(guò)程,其實(shí)施數(shù)據(jù)庫(kù)存取以從數(shù)據(jù)庫(kù)取回?cái)?shù)據(jù)用于該處理;到數(shù)據(jù)庫(kù)的連接;和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型)。此機(jī)制提供數(shù)據(jù)庫(kù)連接特性、及從數(shù)據(jù)庫(kù)客戶(hù)端至給定數(shù)據(jù)庫(kù)的開(kāi)啟連接的數(shù)目的集中式控制,而無(wú)需迫使數(shù)據(jù)庫(kù)應(yīng)用利用集中式網(wǎng)關(guān)。連接的數(shù)目可為數(shù)據(jù)庫(kù)的特性,以及指示允許連至數(shù)據(jù)庫(kù)的開(kāi)啟連接的數(shù)目,其中根據(jù)到所述數(shù)據(jù)庫(kù)的連接的數(shù)目來(lái)控制數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。例如,數(shù)據(jù)庫(kù)應(yīng)用可根據(jù)到所述數(shù)據(jù)庫(kù)的連接為活動(dòng)或耗盡的數(shù)目而采取不同階段的動(dòng)作。備選地,連接的數(shù)目可為數(shù)據(jù)庫(kù)應(yīng)用的特性,以及指示允許在連接池內(nèi)維持的開(kāi)啟連接的數(shù)目。此外,本發(fā)明的實(shí)施例使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠?qū)υ跀?shù)據(jù)庫(kù)中執(zhí)行的特定查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句及執(zhí)行這些語(yǔ)句的方式進(jìn)行安全化、優(yōu)化以及控制。通過(guò)查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型提供集中式控制,以使得管理員能夠?qū)?yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句分發(fā)至所有企業(yè)數(shù)據(jù)庫(kù)應(yīng)用??蓱?yīng)用這些優(yōu)化而無(wú)需修改數(shù)據(jù)庫(kù)應(yīng)用的源代碼。因此,本發(fā)明的各實(shí)施例提供一種框架以及定義用于集中地控制和監(jiān)視數(shù)據(jù)庫(kù)應(yīng)用的基礎(chǔ)協(xié)議。圖I示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的控制系統(tǒng)的實(shí)例拓?fù)?。具體地說(shuō),控制系統(tǒng)100包括一個(gè)或多個(gè)應(yīng)用服務(wù)器10和控制服務(wù)器30。如下所述,所述控制服務(wù)器集中地控制應(yīng)用服務(wù)器10的數(shù)據(jù)庫(kù)應(yīng)用??刂品?wù)器30可遠(yuǎn)離應(yīng)用服務(wù)器10及通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。網(wǎng)絡(luò)可由任意數(shù)目的任何適當(dāng)通信介質(zhì)來(lái)實(shí)施(例如廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)絡(luò)等)。備選地,控制服務(wù)器30可位于一個(gè)或多個(gè)應(yīng)用服務(wù)器10的本地,及經(jīng)由通信介質(zhì)74進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施。每一應(yīng)用服務(wù)器10耦合至對(duì)應(yīng)事務(wù)或其他數(shù)據(jù)庫(kù)50,及存取所述數(shù)據(jù)庫(kù)以取回?cái)?shù)據(jù)以執(zhí)行各種功能或動(dòng)作。每一應(yīng)用服務(wù)器10和對(duì)應(yīng)數(shù)據(jù)庫(kù)50可彼此遠(yuǎn)離及通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。備選地,應(yīng)用服務(wù)器和對(duì)應(yīng)數(shù)據(jù)庫(kù)可彼此位于本地及通過(guò)通信介質(zhì)76進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施。在數(shù)據(jù)庫(kù)50由網(wǎng)絡(luò)(例如LAN和WAN)存取的情況中,數(shù)據(jù)庫(kù)可包括數(shù)據(jù)庫(kù)服務(wù)器或采取數(shù)據(jù)庫(kù)服務(wù)器的形式。所述數(shù)據(jù)庫(kù)服務(wù)器可由任何傳統(tǒng)的,或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如,包括處理器、存儲(chǔ)器和/或內(nèi)部或外部通信設(shè)備(例如調(diào)制解調(diào)器、網(wǎng)卡等))、可選的輸入設(shè)備(例如鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)、及任何商用和/或訂制軟件(例如服務(wù)器/通信軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施。每一應(yīng)用服務(wù)器10包括一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用80(例如,包括或關(guān)聯(lián)于來(lái)自對(duì)應(yīng)數(shù)據(jù)庫(kù)50的軟件應(yīng)用處理數(shù)據(jù)以執(zhí)行期望動(dòng)作;對(duì)應(yīng)基礎(chǔ)過(guò)程,其實(shí)施數(shù)據(jù)庫(kù)存取以從對(duì)應(yīng)數(shù)據(jù)庫(kù)50取回?cái)?shù)據(jù)用于此處理;到對(duì)應(yīng)數(shù)據(jù)庫(kù)50的連接;和/或查詢(xún)語(yǔ)言(例如SQL等)處理模型)。在程序堆棧81中提供來(lái)自數(shù)據(jù)庫(kù)50的軟件應(yīng)用處理數(shù)據(jù)和對(duì)應(yīng)基礎(chǔ)過(guò)程(例如,包括管理數(shù)據(jù)庫(kù)連接)。每一應(yīng)用服務(wù)器10包括一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用80,它們均具有程序堆棧81,程序堆棧81包括多個(gè)層82,多個(gè)層82相互操作以提供到對(duì)應(yīng)數(shù)據(jù)庫(kù)50的存取及實(shí)施查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型。程序堆棧81可包括多個(gè)層82, 其提供對(duì)數(shù)據(jù)庫(kù)(例如,Java數(shù)據(jù)庫(kù)連接性(JDBC)或IBM DB2呼叫級(jí)別接口(CLI))的直接存取或間接數(shù)據(jù)庫(kù)存取(例如,經(jīng)由包括IBM pureQuery、Java Persistent API (JPA)、Hibernate等的各種框架)。僅通過(guò)實(shí)例的方式,程序堆棧層82包括業(yè)務(wù)邏輯12、映射邏輯14、數(shù)據(jù)存取邏輯16、連接池18、配置控件20、及數(shù)據(jù)庫(kù)驅(qū)動(dòng)器22。業(yè)務(wù)邏輯12包括軟件應(yīng)用,其處理來(lái)自對(duì)應(yīng)數(shù)據(jù)庫(kù)50的數(shù)據(jù),以提供業(yè)務(wù)或其他功能以用于特定實(shí)施方式。這些軟件應(yīng)用典型地包括一個(gè)或多個(gè)數(shù)據(jù)庫(kù)查詢(xún),以取回和處理來(lái)自對(duì)應(yīng)數(shù)據(jù)庫(kù)50的數(shù)據(jù)。映射邏輯14將數(shù)據(jù)庫(kù)表映射至特定計(jì)算機(jī)編程語(yǔ)言(例如Java、C++等)的對(duì)象。例如,就業(yè)務(wù)邏輯12和關(guān)系數(shù)據(jù)庫(kù)50的Java實(shí)施而言,映射邏輯14可映射業(yè)務(wù)邏輯12的基于Java的對(duì)象至數(shù)據(jù)庫(kù)50的關(guān)系數(shù)據(jù)庫(kù)表。映射邏輯使得來(lái)自業(yè)務(wù)邏輯12的具有基于Java的對(duì)象的查詢(xún)能夠從數(shù)據(jù)庫(kù)50的關(guān)系表取回適當(dāng)?shù)臄?shù)據(jù),以及就基于Java的對(duì)象而言,還將從這些關(guān)系數(shù)據(jù)庫(kù)表中所取回的數(shù)據(jù)提供給業(yè)務(wù)邏輯12。換言之,映射邏輯提供在具有基于Java的業(yè)務(wù)邏輯與數(shù)據(jù)庫(kù)之間的數(shù)據(jù)管理兼容性。映射邏輯14可包括任何期望計(jì)算機(jī)編程語(yǔ)言的任何適當(dāng)?shù)挠成涔ぞ呋蚩蚣?例如JavaPersistent API (JPA)、Hibernate 等)。數(shù)據(jù)存取邏輯16提供存取數(shù)據(jù)庫(kù)的方式(例如,規(guī)則或準(zhǔn)則、連接或其他信息等),而連接池18提供連接分配管理功能(例如,控制到數(shù)據(jù)庫(kù)的連接的數(shù)目等)。連接的數(shù)目可為數(shù)據(jù)庫(kù)的特性,并指示到數(shù)據(jù)庫(kù)的所允許的開(kāi)啟連接的數(shù)目,其中根據(jù)到數(shù)據(jù)庫(kù)的連接數(shù)目來(lái)控制數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。例如,數(shù)據(jù)庫(kù)應(yīng)用可根據(jù)到數(shù)據(jù)庫(kù)的連接是活動(dòng)或耗盡的數(shù)目而采取不同階段的動(dòng)作。備選地,連接的數(shù)目可為數(shù)據(jù)庫(kù)應(yīng)用的特性,并指示允許由連接池18所維持的開(kāi)啟連接的數(shù)目。如下所述,根據(jù)管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))的規(guī)定,配置控件20與控制服務(wù)器30通信,以配置數(shù)據(jù)庫(kù)應(yīng)用和促進(jìn)數(shù)據(jù)庫(kù)查詢(xún)的執(zhí)行(例如可包括IBM pureQuery或其他框架)。數(shù)據(jù)庫(kù)驅(qū)動(dòng)器22提供與對(duì)應(yīng)數(shù)據(jù)庫(kù)50的實(shí)際通信以用于數(shù)據(jù)庫(kù)存取。數(shù)據(jù)庫(kù)驅(qū)動(dòng)器22可包括Java數(shù)據(jù)庫(kù)驅(qū)動(dòng)器(例如JDBC等)或其他驅(qū)動(dòng)器、或與任何適當(dāng)?shù)挠?jì)算機(jī)編程語(yǔ)言兼容的機(jī)制。業(yè)務(wù)邏輯12、映射邏輯14、數(shù)據(jù)存取邏輯16、連接池18、配置控件20及數(shù)據(jù)庫(kù)驅(qū)動(dòng)器22可由軟件和/或硬件模塊或單元的組合來(lái)實(shí)施。
每個(gè)數(shù)據(jù)庫(kù)應(yīng)用80與應(yīng)用特定的特性信息相關(guān)聯(lián),所述應(yīng)用特定的特性信息包括控制存取對(duì)應(yīng)數(shù)據(jù)庫(kù)50的方式的各種特性和參數(shù)。數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息可涉及應(yīng)用服務(wù)器10和/或一個(gè)或多個(gè)程序堆棧層82。僅通過(guò)實(shí)例的方式,應(yīng)用特定的特性信息的特性或參數(shù)涉及應(yīng)用服務(wù)器10可包括最大連接(例如為數(shù)據(jù)源連接池創(chuàng)建的連接的最大數(shù)目)、最小連接(例如數(shù)據(jù)源連接池的連接的最小數(shù)目)、未使用超時(shí)(例如,代表在關(guān)閉之前,開(kāi)啟連接允許保持為未使用的時(shí)間量的超時(shí)值)、獲取時(shí)間(reaptime)(例如,指定在連接池維持線程的執(zhí)行之間的以秒為單位的時(shí)間量)等;映射邏輯 14 可包括JPA 或 Hibernate 實(shí)施 hibernate, cache. use_query_cache (例如指定查詢(xún)結(jié)果是否由Hibernate引擎緩存);及數(shù)據(jù)存取邏輯16可包括JDBC或IBM DB2CLI實(shí)施databaseurl (例如,數(shù)據(jù)連接信息(例如,主機(jī)、端口、數(shù)據(jù)庫(kù)名稱(chēng)))、deferprepares (延遲準(zhǔn)備)(例如,指定是否延遲查詢(xún)語(yǔ)言語(yǔ)句準(zhǔn)備直到執(zhí)行此語(yǔ)句)、fetchsize (取回大小)(例如,指定用于查詢(xún)語(yǔ)言語(yǔ)句的取回大小)等、以及IBM pureQuery實(shí)施captureMode (捕獲模式)(例如,控制捕獲啟用和禁用)、executionMode (執(zhí)行模式)(例如,指定查詢(xún)語(yǔ)言
語(yǔ)句執(zhí)行是靜態(tài)還是動(dòng)態(tài))、allowDynamicSQL(例如,指定是否允許動(dòng)態(tài)SQL)等。業(yè)務(wù)邏輯12的應(yīng)用特定的特性信息對(duì)每一特定實(shí)施而改變,并且可包括適合于此特定實(shí)施的任何特性或參數(shù)。此外,每個(gè)數(shù)據(jù)庫(kù)應(yīng)用80(例如,經(jīng)由程序堆棧81)實(shí)施具有相關(guān)的應(yīng)用特定的特性信息的執(zhí)行模型,所述應(yīng)用特定的特性信息包括控制執(zhí)行形式為查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的數(shù)據(jù)庫(kù)查詢(xún)的方式的特性或參數(shù)。執(zhí)行模型和相關(guān)聯(lián)的特性或參數(shù)涉及用于控制來(lái)自數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言(例如SQL等)的執(zhí)行的配置控件20 (例如IBM pureQuery等)的框架的特定能力。用于執(zhí)行查詢(xún)語(yǔ)言的應(yīng)用特定的特性信息的實(shí)例特性或參數(shù)可指示查詢(xún)語(yǔ)言(例如SQL等)的動(dòng)態(tài)或靜態(tài)執(zhí)行,及原始的或優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)的執(zhí)行。優(yōu)化查詢(xún)語(yǔ)言可包括以較佳執(zhí)行的語(yǔ)句來(lái)替換不佳執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句,或以參數(shù)標(biāo)記來(lái)替換查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句參數(shù),由此使能緩存和重用所述語(yǔ)句。相應(yīng)地,包括前文所描述的各種特性或參數(shù)的值的應(yīng)用特定的特性信息提供數(shù)據(jù)庫(kù)應(yīng)用的配置,及控制存取所述數(shù)據(jù)庫(kù)和執(zhí)行查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的方式。應(yīng)用服務(wù)器10可由任何傳統(tǒng)的、或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如其包括處理器、存儲(chǔ)器和/或內(nèi)部或外部通信設(shè)備(例如調(diào)制解調(diào)器、網(wǎng)卡等))、可選的輸入設(shè)備(例如鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)、及任何商用(例如,服務(wù)器/通信軟件等)和/或訂制軟件(例如,控制軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施,以如下所述控制數(shù)據(jù)庫(kù)應(yīng)用。事務(wù)數(shù)據(jù)庫(kù)50可由任何數(shù)目的任何類(lèi)型的傳統(tǒng)的或其他數(shù)據(jù)庫(kù)、數(shù)據(jù)儲(chǔ)存庫(kù)或存儲(chǔ)結(jié)構(gòu)(例如文件、數(shù)據(jù)庫(kù)、數(shù)據(jù)結(jié)構(gòu)等)來(lái)實(shí)施。企業(yè)通常具有大量的數(shù)據(jù)庫(kù)應(yīng)用,其中每個(gè)數(shù)據(jù)庫(kù)應(yīng)用如上所述跨多個(gè)服務(wù)器和多個(gè)地理位置被個(gè)別地優(yōu)化。然而,本發(fā)明的實(shí)施例提供跨多個(gè)服務(wù)器而集中地配置和控制數(shù)據(jù)庫(kù)應(yīng)用的方式。為了提供此集中控制能力,控制服務(wù)器30使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠通過(guò)定義、輸入和/或修改與各種應(yīng)用服務(wù)器的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián)的任何應(yīng)用特定的特性信息來(lái)配置這些數(shù)據(jù)庫(kù)應(yīng)用(例如,應(yīng)用服務(wù)器10的特性、對(duì)應(yīng)程序堆棧的層82、數(shù)據(jù)庫(kù)連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型)。所輸入或修改的應(yīng)用特定的特性信息被提供至對(duì)應(yīng)應(yīng)用服務(wù)器,及因此應(yīng)用于配置數(shù)據(jù)庫(kù)應(yīng)用。具體地說(shuō),控制服務(wù)器30耦合至配置儲(chǔ)存庫(kù)60,配置儲(chǔ)存庫(kù)60存儲(chǔ)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性或參數(shù)信息。控制服務(wù)器存取配置儲(chǔ)存庫(kù)60,以取回應(yīng)用特定的特性信息并將其提供給一個(gè)或多個(gè)應(yīng)用服務(wù)器10,以配置和控制對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用80,如下文所述??刂品?wù)器30和配置儲(chǔ)存庫(kù)60可彼此遠(yuǎn)離及通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。備選地,控制服務(wù)器30可位于配置儲(chǔ)存庫(kù)60的本地并且經(jīng)由通信介質(zhì)78進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)來(lái)實(shí)施(例如,局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)。在配置儲(chǔ)存庫(kù)60由網(wǎng)絡(luò)(例如,LAN或WAN)存取的情況中,儲(chǔ)存庫(kù)可包括數(shù)據(jù)庫(kù)服務(wù)器或可采取數(shù)據(jù)庫(kù)服務(wù)器的形式。數(shù)據(jù)庫(kù)服務(wù)器可由任何傳統(tǒng)的、或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如包括處理器、存儲(chǔ)器和/或內(nèi)部或外部通信設(shè)備(例如,調(diào)制解調(diào)器、網(wǎng)卡等))、可選輸入設(shè)備(例如,鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)、及任何商用和/或訂制軟件(例如,月艮務(wù)器/通信軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施。
控制服務(wù)器30使得管理員能夠針對(duì)應(yīng)用特定的特性信息而定義數(shù)據(jù)庫(kù)應(yīng)用特性的邏輯和分層分組??筛鶕?jù)不同的準(zhǔn)則(包括數(shù)據(jù)源、數(shù)據(jù)庫(kù)、特定管理員及工作站)來(lái)將這些特性分組。配置控件20與控制服務(wù)器30建立通信,以從配置數(shù)據(jù)庫(kù)60取回對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,以便配置此數(shù)據(jù)庫(kù)應(yīng)用。本發(fā)明的實(shí)施例可在異構(gòu)應(yīng)用服務(wù)器上執(zhí)行,及可支持以任何計(jì)算機(jī)編程語(yǔ)言撰寫(xiě)的異構(gòu)配置控制組件。應(yīng)用與控制服務(wù)器之間的通信可經(jīng)由同步或異步通信來(lái)實(shí)現(xiàn)。利用所取回的應(yīng)用特定的特性信息來(lái)配置應(yīng)用服務(wù)器10上的對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用。相應(yīng)地,控制服務(wù)器30包括控制器32和配置管理器服務(wù)34。控制器32與應(yīng)用服務(wù)器10的配置控件20進(jìn)行通信,及與配置管理器服務(wù)34相互操作,以從配置數(shù)據(jù)庫(kù)60取回所請(qǐng)求的對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息。所述控制器將所取回的應(yīng)用特定的特性信息傳輸?shù)桨l(fā)出請(qǐng)求的應(yīng)用服務(wù)器。配置管理器服務(wù)34存取配置儲(chǔ)存庫(kù)60以取回和存儲(chǔ)應(yīng)用特定的特性信息和其中的其他信息。此外,配置管理器服務(wù)經(jīng)由配置管理器接口 40與一個(gè)或多個(gè)終端用戶(hù)系統(tǒng)90進(jìn)行交互。配置管理器接口使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠查看和/或修改配置儲(chǔ)存庫(kù)60中的應(yīng)用特定的特性信息,以控制應(yīng)用服務(wù)器10的數(shù)據(jù)庫(kù)應(yīng)用,如下文所述。配置管理器接口 40由配置管理器服務(wù)34產(chǎn)生,及可呈現(xiàn)給終端用戶(hù)系統(tǒng)90上的管理員。終端用戶(hù)系統(tǒng)90和控制服務(wù)器30可彼此遠(yuǎn)離及通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。備選地,終端用戶(hù)系統(tǒng)90可位于控制服務(wù)器30的本地及通過(guò)通信介質(zhì)79進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)通信介質(zhì)(例如,局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施??刂破?2、配置管理器服務(wù)34及配置管理器接口 40可由軟件和/或硬件模塊或單元的任何組合來(lái)實(shí)施??刂品?wù)器30和終端用戶(hù)系統(tǒng)90可由任何傳統(tǒng)的、或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如包括處理器、存儲(chǔ)器和/或內(nèi)部或外部通信設(shè)備(例如,調(diào)制解調(diào)器、網(wǎng)卡等))、可選輸入設(shè)備(例如,鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)及任何商用(例如,服務(wù)器、瀏覽器或其他通信介質(zhì)等)和/或訂制軟件(例如,控制軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施,以控制數(shù)據(jù)庫(kù)應(yīng)用,如下文所述。配置儲(chǔ)存庫(kù)60可由任何數(shù)目的任何類(lèi)型的傳統(tǒng)或其他數(shù)據(jù)庫(kù)、數(shù)據(jù)儲(chǔ)存庫(kù)或存儲(chǔ)結(jié)構(gòu)(例如文件、數(shù)據(jù)庫(kù)、數(shù)據(jù)結(jié)構(gòu)等)來(lái)實(shí)施。
配置管理器接口 40使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠查看、定義、輸入和/或修改配置儲(chǔ)存庫(kù)60中的應(yīng)用特定的特性信息,以配置和控制應(yīng)用服務(wù)器10的數(shù)據(jù)庫(kù)應(yīng)用80。每個(gè)數(shù)據(jù)庫(kù)應(yīng)用80被指派唯一標(biāo)識(shí)符,而提供數(shù)據(jù)庫(kù)應(yīng)用配置的應(yīng)用特定的特性信息根據(jù)配置標(biāo)識(shí)符(例如,標(biāo)識(shí)符113(圖3-6))而存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。以此方式,配置標(biāo)識(shí)符用作索引或關(guān)鍵字以取回適當(dāng)?shù)膽?yīng)用特定的特性信息,以提供數(shù)據(jù)庫(kù)應(yīng)用的期望配置。例如,配置標(biāo)識(shí)符可用于取回文件名、指針、或指示應(yīng)用特定的特性信息在配置儲(chǔ)存庫(kù)60內(nèi)的位置的其他指示器(例如,可利用查詢(xún)表以根據(jù)配置標(biāo)識(shí)符而提供應(yīng)用特定的特性信息的位置等)。備選地,配置標(biāo)識(shí)符可為文件名、指針或其他指示器,或?yàn)榘瑧?yīng)用特定的特性信息的位置信息的數(shù)據(jù)庫(kù)表的索引(例如,配置標(biāo)識(shí)符可為數(shù)據(jù)庫(kù)表內(nèi)的關(guān)鍵字字段等)。在本發(fā)明的一個(gè)實(shí)施例中,數(shù)據(jù)庫(kù)應(yīng)用可與單個(gè)配置相關(guān)聯(lián),并且配置標(biāo)識(shí)符可與數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符相同。例如,數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符可包括邏輯名稱(chēng)并且標(biāo)識(shí)定義數(shù)據(jù)庫(kù)應(yīng)用的配置的應(yīng)用特定的特性信息(包括具有多個(gè)層的程序堆棧)。管理員可知曉數(shù)據(jù)庫(kù)應(yīng)用的邏輯名稱(chēng),并在信息輸入期間提供邏輯名稱(chēng)(或數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符),其變?yōu)榕渲脴?biāo)識(shí)符以將定義配置的應(yīng)用特定的特性信息與數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián)。 備選地,管理員可輸入數(shù)據(jù)庫(kù)應(yīng)用的一個(gè)或多個(gè)屬性(attributes)(例如,URL或地址等),并且配置管理器服務(wù)34可根據(jù)所述屬性來(lái)確定期望數(shù)據(jù)庫(kù)應(yīng)用的邏輯名稱(chēng)(或數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符)(例如,通過(guò)與應(yīng)用服務(wù)器通信,其經(jīng)由查找表或包括數(shù)據(jù)庫(kù)應(yīng)用屬性和邏輯名稱(chēng)等的其他表)。在此情況中,所確定的邏輯名稱(chēng)(或數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符)變?yōu)榕渲脴?biāo)識(shí)符,并被用于將定義所述配置的應(yīng)用特定的特性信息與期望數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián)。相應(yīng)地,數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符可由應(yīng)用服務(wù)器10用于從配置儲(chǔ)存庫(kù)60中取回定義數(shù)據(jù)庫(kù)應(yīng)用80的配置的適當(dāng)應(yīng)用特定的特性信息。例如,應(yīng)用服務(wù)器10上的數(shù)據(jù)庫(kù)應(yīng)用80可被指定為“A”的邏輯名稱(chēng)。定義配置儲(chǔ)存庫(kù)60內(nèi)的此數(shù)據(jù)庫(kù)應(yīng)用的配置的應(yīng)用特定的特性信息的查找根據(jù)邏輯名稱(chēng)“A”來(lái)執(zhí)行(邏輯名稱(chēng)“A”為數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符和配置標(biāo)識(shí)符二者),并且應(yīng)用得到的應(yīng)用特定的特性信息(例如,應(yīng)用于數(shù)據(jù)庫(kù)應(yīng)用的程序堆棧內(nèi)的各層)。類(lèi)似地,同一或不同應(yīng)用服務(wù)器上的另一數(shù)據(jù)庫(kù)應(yīng)用可被指定邏輯名稱(chēng)“B”。定義此其他數(shù)據(jù)庫(kù)應(yīng)用的配置的應(yīng)用特定的特性信息的查找根據(jù)邏輯名稱(chēng)“B”來(lái)執(zhí)行(邏輯名稱(chēng)“B”為數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符和配置標(biāo)識(shí)符二者),并且應(yīng)用得到的應(yīng)用特定的特性信息(例如,應(yīng)用于該其他數(shù)據(jù)庫(kù)應(yīng)用的程序堆棧內(nèi)的各層)。在本發(fā)明的一個(gè)實(shí)施例中,可針對(duì)數(shù)據(jù)庫(kù)應(yīng)用80定義多個(gè)配置。在此情況中,應(yīng)用服務(wù)器10可提供數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符和附加信息,以便確定配置標(biāo)識(shí)符113并取回定義來(lái)自配置儲(chǔ)存庫(kù)60的特定配置的適當(dāng)應(yīng)用特定的特性信息。通過(guò)實(shí)例方式,附加信息可包括期望配置的屬性(例如,特性的描述、配置名稱(chēng)、創(chuàng)建或修改日期(多個(gè))(例如,取回最新的、最早的等)等),并且配置管理器服務(wù)34可根據(jù)數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符和屬性來(lái)確定期望的配置標(biāo)識(shí)符113(例如,經(jīng)由查找表或包括配置屬性和邏輯名稱(chēng)的其他表等)。此外,配置標(biāo)識(shí)符113可包括具有額外信息的數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符,此附加信息附加于數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符,或以其它方式結(jié)合在數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符內(nèi),其中可由應(yīng)用服務(wù)器確定和提供配置標(biāo)識(shí)符,以取回定義期望配置的應(yīng)用特定的特性信息。備選地,定義相應(yīng)數(shù)據(jù)庫(kù)應(yīng)用配置的應(yīng)用特定的特性信息均可與特定于該配置的配置標(biāo)識(shí)符113關(guān)聯(lián)(例如,獨(dú)立于數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符,和在配置的創(chuàng)建/修改期間被指定),配置標(biāo)識(shí)符113將該配置的應(yīng)用特定的特性信息與數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián)。在此情況中,配置標(biāo)識(shí)符113可由應(yīng)用服務(wù)器10 (其具有或沒(méi)有數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符)來(lái)提供,以取回該配置的應(yīng)用特定的特性信息。配置標(biāo)識(shí)符113備選地可包括此特定的配置標(biāo)識(shí)符,所述配置標(biāo)識(shí)符附加于數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符,或以其它方式結(jié)合在數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符內(nèi),其中可由應(yīng)用服務(wù)器確定和提供配置標(biāo)識(shí)符113,以取回配置的應(yīng)用特定的特性信息。配置管理器接口 40優(yōu)選地利用多個(gè)圖形用戶(hù)接口屏幕,以便與管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))交互并配置數(shù)據(jù)庫(kù)應(yīng)用。配置管理接口由配置管理器服務(wù)34來(lái)產(chǎn)生,并可被呈現(xiàn)給終端用戶(hù)系統(tǒng)90上的管理員。圖2示出了提供關(guān)于數(shù)據(jù)庫(kù)連接的信息的實(shí)例接口屏幕。具體地說(shuō),接口屏幕105提供企業(yè)系統(tǒng)內(nèi)關(guān)于數(shù)據(jù)連接的信息。接口屏幕包括多個(gè)標(biāo)簽115,每個(gè)標(biāo)簽115均可由管理員選擇以顯示各種信息。通過(guò)實(shí)例的方式,標(biāo)簽包括歡迎(Welcome)、管理數(shù)據(jù)庫(kù)連接(Manage Database Connections) 及數(shù)據(jù)客戶(hù)端管理(Data Client Management)。接口屏幕105還包括主機(jī)區(qū)域111和工作區(qū)域117,并反映所顯示的實(shí)例屏幕以響應(yīng)激活管理數(shù)據(jù)庫(kù)連接標(biāo)簽115。主機(jī)區(qū)域111以目錄型結(jié)構(gòu)提供各種主機(jī)以由管理員選擇。一旦管理員選擇主機(jī)(例如,經(jīng)由鼠標(biāo)或其他輸入設(shè)備),就從配置儲(chǔ)存庫(kù)60取回所選擇主機(jī)的連接信息,并將其顯示在工作區(qū)域117中。通過(guò)實(shí)例的方式,工作區(qū)域117包括具有包含Name(名稱(chēng))、Data Server Type(數(shù)據(jù)服務(wù)器類(lèi)型)、DataName (數(shù)據(jù)庫(kù)名稱(chēng))、User ID (用戶(hù)ID)、Host Name (主機(jī)名稱(chēng))及PortNumber(端口號(hào))的列的表。名稱(chēng)字段包括數(shù)據(jù)庫(kù)連接的名稱(chēng)。數(shù)據(jù)服務(wù)器類(lèi)型字段提供數(shù)據(jù)庫(kù)服務(wù)器的類(lèi)型(例如,所使用的服務(wù)器軟件等)。數(shù)據(jù)庫(kù)名稱(chēng)字段包括數(shù)據(jù)庫(kù)的名稱(chēng),而用戶(hù)ID字段包括用戶(hù)的標(biāo)識(shí)。主機(jī)名稱(chēng)字段包括主機(jī)計(jì)算機(jī)系統(tǒng)的名稱(chēng)(例如,URL或地址等),及端口號(hào)字段包括連接所使用的端口。表的每一行提供所選擇項(xiàng)目的信息(例如所選擇的主機(jī)cfgmgr. com,如圖2中所見(jiàn))。接口屏幕105使得管理員能夠添加(或注冊(cè))新的數(shù)據(jù)庫(kù)連接至控制系統(tǒng),及隨后經(jīng)由激活器(actuator) 107來(lái)查看、編輯和/或刪除這些數(shù)據(jù)庫(kù)連接。由管理員輸入的數(shù)據(jù)庫(kù)連接的信息由配置管理器服務(wù)34存儲(chǔ)于配置儲(chǔ)存庫(kù)60中。圖3示出了提供數(shù)據(jù)庫(kù)應(yīng)用的配置信息的實(shí)例接口屏幕。具體地說(shuō),接口屏幕110提供關(guān)于在應(yīng)用服務(wù)器10上的數(shù)據(jù)庫(kù)應(yīng)用的配置的信息。接口屏幕110反映所顯示的實(shí)例屏幕,以響應(yīng)激活數(shù)據(jù)客戶(hù)端管理標(biāo)簽115。接口屏幕包括配置區(qū)域112及工作區(qū)域114。配置區(qū)域112提供數(shù)據(jù)庫(kù)應(yīng)用的各種配置以由管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))來(lái)選擇。所述配置包括應(yīng)用特定的特性信息并由配置版本119指示,及配置標(biāo)識(shí)符或關(guān)鍵字113,其將配置與數(shù)據(jù)庫(kù)應(yīng)用相關(guān)聯(lián),如下文所述。工作區(qū)域114包括多個(gè)標(biāo)簽16,每個(gè)標(biāo)簽16可由管理員選擇以顯示關(guān)于所選擇配置的各種信息。通過(guò)實(shí)例的方式,標(biāo)簽 16 包括配置(Configuration)JtI^ (Properties)、連接(Connection)及 SQL。接口屏幕110還反映所顯示的實(shí)例屏幕以響應(yīng)激活配置標(biāo)簽116。配置標(biāo)簽使能在工作區(qū)域114中顯示所選擇配置。一旦管理員選擇配置(例如,經(jīng)由鼠標(biāo)或其他輸入設(shè)備),就從儲(chǔ)存庫(kù)60取回所選擇配置的信息,并顯示于工作區(qū)域114中。通過(guò)實(shí)例的方式,工作區(qū)域114包括標(biāo)示為版本(Version)、客戶(hù)端刷新更新(Client Refresh Update)、描述(Description)、聯(lián)系人名稱(chēng)(Contact Name)、聯(lián)系人定位符(Contact Locator)及聯(lián)系人描述(Contact description)的字段。Version字段包括配置的版本,而Client Refresh Update字段包括刷新信息的時(shí)間間隔及對(duì)應(yīng)時(shí)間單位(例如,分鐘等)。Description字段包括所選擇配置的描述。聯(lián)系人名稱(chēng)、聯(lián)系人定位符及聯(lián)系人描述字段相應(yīng)地包括聯(lián)系人的名稱(chēng)(例如創(chuàng)建/修改或負(fù)責(zé)配置的版本的管理員等)、通知具有對(duì)應(yīng)通知信息的聯(lián)系人的方式(例如,電子郵件(E-mail)及對(duì)應(yīng)電子郵件地址等)以及聯(lián)系人的描述(例如職業(yè)名稱(chēng)、任務(wù)等)。各種字段中的信息可由管理員輸入和/或修改,以更新所選擇配置的信息,其中信息由配置管理員服務(wù)34存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。圖4中示出使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠查看、定義和/或編輯數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息的實(shí)例接口屏幕。具體地說(shuō),接口屏幕120類(lèi)似于前文所描述的接口屏幕110,并提供與數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息有關(guān)的信息。接口屏幕120反映所顯示的實(shí)例屏幕以響應(yīng)激活數(shù)據(jù)客戶(hù)端管理標(biāo)簽115和特性標(biāo)簽116。接口屏幕包括配置區(qū)域112,及工作區(qū)域114。配置區(qū)域112提供數(shù)據(jù)庫(kù)應(yīng)用的各種配置以由管理員選擇,其中配置由配置標(biāo)識(shí)符或關(guān)鍵字113和配置版本119來(lái)指示,如前文所述。一旦管理員選擇配置(例如,經(jīng)由鼠標(biāo)或其他輸入設(shè)備),就從配置儲(chǔ) 存庫(kù)60取回所選擇配置的應(yīng)用特定的特性信息并顯示在工作區(qū)域114中。通過(guò)實(shí)例的方式,工作區(qū)域114顯示具有包含驅(qū)動(dòng)器類(lèi)型(Driver Type)、名稱(chēng)(Name)、值(Value)、覆蓋(Override)、類(lèi)型(Type)及描述(Description)列的表。Driver Type字段包括驅(qū)動(dòng)器的類(lèi)型,而Name字段包括在應(yīng)用特定的特性信息內(nèi)的特性的名稱(chēng)。Value字段包括在應(yīng)用特定的特性信息內(nèi)的特性的值。Type字段包括特性值的類(lèi)型(例如整數(shù)、字符等),以及Description字段包括應(yīng)用特定的特性信息內(nèi)的特性的描述。覆蓋字段確定要用于數(shù)據(jù)庫(kù)應(yīng)用的特性值。當(dāng)針對(duì)應(yīng)用特定的特性信息內(nèi)的特性啟用覆蓋時(shí)(例如,針對(duì)特性(例如fetchsize和useTransactionR,如圖4中可見(jiàn))而勾選復(fù)選符號(hào)),在表中指定的特性的值用于數(shù)據(jù)庫(kù)應(yīng)用配置。如果針對(duì)應(yīng)用特定的特性信息內(nèi)的特性禁用覆蓋(例如,針對(duì)特性(例如accountinglnter,如圖4中可見(jiàn))而未勾選復(fù)選符號(hào)),則利用由數(shù)據(jù)庫(kù)應(yīng)用所設(shè)置的特性的值(例如,初始或默認(rèn)值)。然而,當(dāng)尚未由數(shù)據(jù)庫(kù)應(yīng)用設(shè)置在具有禁用的覆蓋的應(yīng)用特定的特性信息內(nèi)的特性的值時(shí)(例如,對(duì)此特性未存在的初始值或默認(rèn)值),則利用為此特性在表中指定的值。表中的每一行提供所選項(xiàng)目的應(yīng)用特定的特性信息(例如,JCC驅(qū)動(dòng)器包括具有值3600和已禁用覆蓋的accountinglnter的特性、及具有值25和已啟用覆蓋的fetchsize、及具有真值和已啟用覆蓋的useTransactionR,如圖4中可見(jiàn))。接口屏幕120還使得管理員能夠輸入和/或修改應(yīng)用特定的特性信息內(nèi)的特性。這借助各種激活器來(lái)完成。具體地說(shuō),保存激活器121促進(jìn)所輸入特性值的存儲(chǔ),而刪除激活器127使能從表中刪除所選擇的特性。新的激活器123促進(jìn)具有對(duì)應(yīng)字段的輸入窗口的顯示,以定義和輸入從表中所選擇項(xiàng)目的新的特性的值。編輯激活器125使能更改所選擇特性的值。包括特性和對(duì)應(yīng)值的應(yīng)用特定的特性信息可由配置管理器服務(wù)34存儲(chǔ)于儲(chǔ)存庫(kù)60中。圖5中示出了提供數(shù)據(jù)庫(kù)應(yīng)用的連接信息的實(shí)例接口屏幕。具體地說(shuō),接口屏幕130類(lèi)似于接口屏幕110、120,如前文所述,及提供關(guān)于選擇的數(shù)據(jù)庫(kù)應(yīng)用配置的數(shù)據(jù)庫(kù)連接的信息。接口屏幕130反映所顯示的實(shí)例屏幕,以響應(yīng)激活數(shù)據(jù)客戶(hù)端管理標(biāo)簽115和連接標(biāo)簽116。接口屏幕包括配置區(qū)域112和工作區(qū)域114。配置區(qū)域112提供數(shù)據(jù)庫(kù)應(yīng)用的各種配置以由管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))來(lái)選擇,其中配置由配置標(biāo)識(shí)符或關(guān)鍵字113及配置版本119來(lái)指示,如前文所述。一旦管理員選擇配置(例如,經(jīng)由鼠標(biāo)或其他輸入設(shè)備),就從配置儲(chǔ)存庫(kù)60取回所選擇配置的連接信息并顯示在工作區(qū)域114中。通過(guò)實(shí)例的方式,工作區(qū)域114顯示具有包括Connection和Database的列的表。Connection字段包括數(shù)據(jù)庫(kù)應(yīng)用連接的名稱(chēng),而Database字段包括連接與之建立通信鏈接的數(shù)據(jù)庫(kù)。表的每一行提供選擇項(xiàng)目的信息(例如,REPO-連接與REPO數(shù)據(jù)庫(kù)關(guān)聯(lián))。接口屏幕130使得管理員能夠經(jīng)由創(chuàng)建激活器131來(lái)創(chuàng)建從數(shù)據(jù)庫(kù)應(yīng)用至所選擇數(shù)據(jù)庫(kù)的連接。創(chuàng)建激活器促進(jìn)具有對(duì)應(yīng)字段的輸入窗口的顯示,以定義和輸入新連接的信息。所創(chuàng)建連接的特性和對(duì)應(yīng)值可經(jīng)由基本與前文所述的方式相同的一個(gè)或多個(gè)接口屏幕來(lái)查看、輸入和/或修改。連接信息和對(duì)應(yīng)應(yīng)用特定的特性信息由配置管理器服務(wù)34存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。 本發(fā)明的實(shí)施例還使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù)等)能夠影響應(yīng)用服務(wù)器處的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型。執(zhí)行模型和相關(guān)的特性或參數(shù)涉及配置控件20的框架的特定能力(例如IBM pureQuery等),以控制從數(shù)據(jù)庫(kù)應(yīng)用執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)。本發(fā)明的實(shí)施例使得管理員(例如數(shù)據(jù)庫(kù)管理器、系統(tǒng)管理器、或其他用戶(hù))能夠提供優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句。優(yōu)化查詢(xún)語(yǔ)言的步驟可包括以下步驟以較佳執(zhí)行的語(yǔ)句來(lái)替換不佳執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句,或以參數(shù)標(biāo)記來(lái)替換查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句參數(shù),由此使能緩存和重用語(yǔ)句。此外,本發(fā)明的實(shí)施例可使得管理員能夠限制執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句,及以控制從數(shù)據(jù)庫(kù)應(yīng)用傳輸至數(shù)據(jù)庫(kù)50的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的批處理以供執(zhí)行。包括查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的特性或參數(shù)的應(yīng)用特定的特性信息存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。相應(yīng)地,本發(fā)明的實(shí)施例使得管理員(例如數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員、或其他用戶(hù))能夠優(yōu)化框架(例如JPA等),其中自動(dòng)地生成查詢(xún)語(yǔ)言(例如SQL等)。本發(fā)明的實(shí)施例使得管理員能夠捕獲、查看、優(yōu)化及限制相對(duì)于數(shù)據(jù)庫(kù)而執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)。一旦查詢(xún)語(yǔ)言(例如SQL等)已針對(duì)數(shù)據(jù)庫(kù)應(yīng)用被優(yōu)化,優(yōu)化就可傳輸至托管數(shù)據(jù)庫(kù)應(yīng)用的其他系統(tǒng),由此提供查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的集中式控制。圖6中示出了使得管理員(例如數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員、或其他用戶(hù))能夠查看和輸入關(guān)于數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的各種信息的實(shí)例接口屏幕。具體地說(shuō),接口屏幕155類(lèi)似于前文所描述的接口屏幕110、120、130,并提供關(guān)于所選擇數(shù)據(jù)庫(kù)應(yīng)用配置的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的信息。接口屏幕155反映所顯示的實(shí)例屏幕,以響應(yīng)激活數(shù)據(jù)客戶(hù)端管理標(biāo)簽115和SQL標(biāo)簽116。實(shí)例屏幕包括配置區(qū)域112和工作區(qū)域114。配置區(qū)域112提供由管理員選擇的數(shù)據(jù)庫(kù)應(yīng)用的各種配置,其中配置由配置標(biāo)識(shí)符或關(guān)鍵字113和配置版本119來(lái)指示,如前文所述。一旦管理員選擇配置(例如,經(jīng)由鼠標(biāo)或其他輸入設(shè)備),就從配置儲(chǔ)存庫(kù)60取回所選擇配置的應(yīng)用特定的特性信息的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型信息,并顯示在工作區(qū)域114中。通過(guò)實(shí)例的方式,工作區(qū)域114包括優(yōu)化區(qū)域157、限制區(qū)域159及批處理區(qū)域161??墒褂脧呐渲脙?chǔ)存庫(kù)60取回的適當(dāng)配置信息自動(dòng)填充這些區(qū)域。優(yōu)化區(qū)域157包括使得管理員能夠針對(duì)在所選擇數(shù)據(jù)庫(kù)應(yīng)用配置中執(zhí)行的特定語(yǔ)句而查看和/或輸入優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)的字段。管理員還可針對(duì)優(yōu)化區(qū)域內(nèi)的優(yōu)化語(yǔ)句和實(shí)施(例如,綁定或替換等)的方式而查看和/或指定執(zhí)行的類(lèi)型(例如靜態(tài)或動(dòng)態(tài),如后文所描述的)。管理員針對(duì)優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)所輸入的信息可由配置管理員服務(wù)34作為應(yīng)用特定的特性信息的一部分而存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。限制區(qū)域159包括使得管理員能夠查看和/或輸入被允許在給定數(shù)據(jù)庫(kù)上執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的列表的字段。管理器針對(duì)所述限制區(qū)域輸入的信息可由配置管理器服務(wù)34作為應(yīng)用特定的特性信息的一部分而存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。批處理區(qū)域161包括使得管理員能夠查看和/或指定查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的字段,所述語(yǔ)句可一起被批處理以便執(zhí)行。批處理將多個(gè)查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行 組合成對(duì)數(shù)據(jù)庫(kù)的單個(gè)請(qǐng)求,由此增強(qiáng)性能。例如,連接利用率可借助異構(gòu)批處理而優(yōu)化,并延遲此執(zhí)行直到提交事務(wù)。這使得框架能夠在少量的執(zhí)行時(shí)間將物理連接指派給數(shù)據(jù)庫(kù)應(yīng)用以便執(zhí)行??稍谂c數(shù)據(jù)庫(kù)應(yīng)用關(guān)聯(lián)的一個(gè)或多個(gè)特性或參數(shù)中指定此批處理,并在批處理區(qū)域161的字段內(nèi)輸入此批處理。管理員針對(duì)批處理區(qū)域輸入的信息由配置管理員服務(wù)34作為應(yīng)用特定的特性信息的一部分而存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。配置管理器服務(wù)34可與管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))交互以接收信息而實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)應(yīng)用的其他方面的控制。例如,控制系統(tǒng)可使得管理員能夠?qū)?yōu)化后的對(duì)象-關(guān)系(0/R)映射特性集中地傳輸至應(yīng)用服務(wù)器(例如,避免在每一個(gè)體應(yīng)用服務(wù)器上配置這些設(shè)置),以作為應(yīng)用特定的特性信息的一部分。在此情況中,所述特性至少與程序堆棧81的映射邏輯14關(guān)聯(lián),并控制計(jì)算機(jī)編程語(yǔ)言?xún)?nèi)的對(duì)象至數(shù)據(jù)庫(kù)內(nèi)的關(guān)系表或其他結(jié)構(gòu)的映射。通過(guò)實(shí)例的方式,這些特性可控制來(lái)自數(shù)據(jù)庫(kù)表的對(duì)象加載(或映射)的精確性(例如,延遲性載入(較低的精確性)或積極性載入(較高的精確性))。然而,可經(jīng)由接口 40調(diào)整數(shù)據(jù)庫(kù)應(yīng)用的任何適當(dāng)應(yīng)用特定的特性信息,以控制對(duì)象至關(guān)系或其他類(lèi)型的數(shù)據(jù)庫(kù)的映射。此外,控制系統(tǒng)可控制哪些管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))被允許針對(duì)所產(chǎn)生的數(shù)據(jù)庫(kù)對(duì)象執(zhí)行和實(shí)施規(guī)則。可建立簡(jiǎn)檔以從數(shù)據(jù)庫(kù)連接提取管理員。簡(jiǎn)檔封裝數(shù)據(jù)庫(kù)連接(無(wú)需使用用戶(hù)標(biāo)識(shí)和密碼),并包括用于認(rèn)證的準(zhǔn)則(例如,用戶(hù)的類(lèi)型、源計(jì)算機(jī)系統(tǒng)、用戶(hù)的安全性或系統(tǒng)級(jí)別、用戶(hù)標(biāo)識(shí)等)。簡(jiǎn)檔的信息和相關(guān)的數(shù)據(jù)庫(kù)對(duì)象規(guī)則可由管理員經(jīng)由配置管理器接口 40和配置管理器服務(wù)34來(lái)輸入,及作為應(yīng)用特定的特性信息的一部分而存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。配置控件20取回簡(jiǎn)檔和相關(guān)的規(guī)則,以作為數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息的一部分,并利用簡(jiǎn)檔認(rèn)證管理員(例如,使用否決權(quán)以執(zhí)行對(duì)外呼叫等)。如果管理員經(jīng)過(guò)認(rèn)證(例如,作為數(shù)據(jù)庫(kù)、系統(tǒng)或其他管理員),配置控件20使得認(rèn)證后的管理員能夠建立和實(shí)施規(guī)則以控制對(duì)對(duì)應(yīng)數(shù)據(jù)庫(kù)50的對(duì)象的存取。以此方式,管理員可使用沒(méi)有許多特權(quán)的連接來(lái)存取基礎(chǔ)數(shù)據(jù)庫(kù)以讀取目錄對(duì)象,并利用簡(jiǎn)檔來(lái)建立和實(shí)施規(guī)則。管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))可經(jīng)由接口 40或其他輸入機(jī)制來(lái)指定或修改應(yīng)用特定的特性信息的任何數(shù)據(jù)庫(kù)應(yīng)用特性的值(例如,關(guān)聯(lián)于應(yīng)用服務(wù)器,任何程序堆棧層、任何連接、查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型等),以集中地從控制服務(wù)器30配置和控制數(shù)據(jù)庫(kù)應(yīng)用的任何部分。定義配置的應(yīng)用特定的特性信息還可應(yīng)用于同一應(yīng)用服務(wù)器的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用,或應(yīng)用于任何數(shù)目的不同應(yīng)用服務(wù)器的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用。可通過(guò)任何適當(dāng)準(zhǔn)則來(lái)分組用于配置的數(shù)據(jù)庫(kù)應(yīng)用,其中相同的配置標(biāo)識(shí)符可由每一組成員來(lái)利用,以使能取回組成員的相同配置。圖7中示出了應(yīng)用服務(wù)器10 (例如,經(jīng)由配置控件20)取回并應(yīng)用應(yīng)用特定的特性信息以控制數(shù)據(jù)庫(kù)應(yīng)用的方式。初始地,數(shù)據(jù)庫(kù)應(yīng)用特定的特性信息(例如,包括應(yīng)用服務(wù)器10、程序堆棧81的層82、數(shù)據(jù)庫(kù)連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的特性)可經(jīng)由配置管理器服務(wù)接口 40來(lái)定義、分組及向控制器32注冊(cè),如前文所述。在步驟140,如果針對(duì)應(yīng)用服務(wù)器10的數(shù)據(jù)庫(kù)應(yīng)用采用集中式控制,則配置控件20檢測(cè)控制服務(wù)器30的存在,并建立與控制服務(wù)器的適當(dāng)通信。此檢測(cè)可通過(guò)利用可由配置控件20存取的標(biāo)志、統(tǒng)一資源定位器(URL)或地址、或控制服務(wù)器的存在性的指示器來(lái)完成(例如,儲(chǔ)存于配置變量、預(yù)定位置、參數(shù)等)。配置控件利用控制服務(wù)器30的指定URL或地址,以建
立與控制器32的通信。備選地,配置控件可包括自動(dòng)檢測(cè)機(jī)制以確定控制服務(wù)器在網(wǎng)絡(luò)上的存在(和URL或地址)以建立通信。在步驟142,一旦建立適當(dāng)?shù)耐ㄐ牛渲每丶?0就根據(jù)配置標(biāo)識(shí)符或關(guān)鍵字113向控制器32查詢(xún)對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用80的期望的應(yīng)用特定的特性信息。配置控件20將配置標(biāo)識(shí)符113 (和/或使能確定配置標(biāo)識(shí)符的其他信息,如前文所述)傳遞至控制器32,以經(jīng)由配置管理器服務(wù)34從配置儲(chǔ)存庫(kù)取回定義期望配置的應(yīng)用特定的特性信息。如在步驟143所確定的,如果未取回應(yīng)用特定的特性信息,則在步驟149,配置控件20從控制器32接收指示缺少應(yīng)用特定的特性信息的異?;蛳?,并且所述數(shù)據(jù)庫(kù)應(yīng)用使用初始或預(yù)設(shè)值來(lái)繼續(xù)。配置控件20和/或控制器32可促進(jìn)向管理員顯示錯(cuò)誤或其他消息,以提供與取回應(yīng)用特定的特性信息和/或配置數(shù)據(jù)庫(kù)應(yīng)用有關(guān)的問(wèn)題的通知。當(dāng)取回應(yīng)用特定的特性信息時(shí),配置控件20從控制器32接收所取回的應(yīng)用特定的特性信息,并在步驟144應(yīng)用所接收的應(yīng)用特定的特性信息內(nèi)的特性值以配置數(shù)據(jù)庫(kù)應(yīng)用。具體地說(shuō),配置控件20使用接收的應(yīng)用特定的特性信息中的值來(lái)修改現(xiàn)有參數(shù)或特性值。這可通過(guò)更新或存儲(chǔ)所接收的值于對(duì)應(yīng)配置變量、存儲(chǔ)器、或包含現(xiàn)有特性或參數(shù)值(例如,應(yīng)用服務(wù)器和程序堆棧層期望找到用于查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的操作和/或?qū)嵤┑拇鎯?chǔ)參數(shù)的位置)的其他存儲(chǔ)位置(例如,文件、寄存器等)中來(lái)完成。一旦應(yīng)用所接收的特性值,則更新數(shù)據(jù)庫(kù)應(yīng)用配置,并且數(shù)據(jù)庫(kù)應(yīng)用根據(jù)這些接收的值來(lái)操作。在步驟146,配置控件20周期性地檢查以確定數(shù)據(jù)庫(kù)應(yīng)用特定的特性信息的任何更新的存在。例如,這可通過(guò)配置管理器服務(wù)34識(shí)別在與管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))交互期間經(jīng)由配置管理器接口 40輸入和/或更新后的應(yīng)用特定的特性信息來(lái)完成。配置管理器服務(wù)通知控制器32所更新的信息和每個(gè)更新的配置的相關(guān)配置標(biāo)識(shí)符113的存在。響應(yīng)于來(lái)自配置控件20的對(duì)更新的詢(xún)問(wèn),控制器32確定應(yīng)用特定的特性信息內(nèi)的更新的存在。如果已更新應(yīng)用特定的特性信息,控制器32根據(jù)配置標(biāo)識(shí)符113嘗試從配置儲(chǔ)存庫(kù)60取回所更新后的應(yīng)用特定的特性信息,其利用與前文所述基本相同的方式。如在步驟147所確定的,如果未更新應(yīng)用特定的特性信息,或不能根據(jù)配置標(biāo)識(shí)符113取回更新后的應(yīng)用特定的特性信息時(shí),則在步驟149,配置控件20從控制器32接收指示缺乏更新后的應(yīng)用特定的特性信息的異?;蛳ⅲ⑶覕?shù)據(jù)庫(kù)應(yīng)用使用先前的特性值來(lái)繼續(xù)。配置控件20和/或控制器32可促進(jìn)向管理員顯示錯(cuò)誤或其他消息,以提供缺乏更新后的應(yīng)用特定的特性信息、或存在與取回更新后的應(yīng)用特定的特性信息和/或配置數(shù)據(jù)庫(kù)應(yīng)用有關(guān)的問(wèn)題的通知。當(dāng)取回更新后的應(yīng)用特定的特性信息時(shí),控制器32傳輸更新后的應(yīng)用特定的特性信息至配置控件20。配置控件從控制器32接收更新后的應(yīng)用特定的特性信息,并在步驟148應(yīng)用更新后的應(yīng)用特定的特性信息以配置數(shù)據(jù)庫(kù)應(yīng)用,其利用如前文所述基本相同的方式。配置控件20和/或控制器32發(fā)送更新后的應(yīng)用特定的特性信息至配置儲(chǔ)存庫(kù)60以實(shí)現(xiàn)審計(jì)目的。配置控件還可在應(yīng)用服務(wù)器本地保存應(yīng)用特定的特性信息。圖8中示出了控制服務(wù)器30取回?cái)?shù)據(jù)庫(kù)應(yīng)用的對(duì)應(yīng)應(yīng)用特定的特性信息的方式。初始地,定義、分組和向控制器32注冊(cè)數(shù)據(jù)庫(kù)應(yīng)用特定的特性信息(例如 ,包括應(yīng)用服務(wù)器10、程序堆棧81的層82、數(shù)據(jù)庫(kù)連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的特性),并在應(yīng)用服務(wù)器10和控制服務(wù)器30之間建立適當(dāng)?shù)耐ㄐ?,如前文所述。具體地說(shuō),在步驟150,控制器32從應(yīng)用服務(wù)器10的配置控件20接收定義對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的期望配置的應(yīng)用特定的特性信息的請(qǐng)求。此請(qǐng)求可針對(duì)應(yīng)用特定的特性信息的取回,并包括配置標(biāo)識(shí)符113 (和/或使能確定配置標(biāo)識(shí)符的其他信息,如前文所述)或周期性的詢(xún)問(wèn)以取回更新后的應(yīng)用特定的特性信息。在步驟152,控制器與配置服務(wù)管理器34相互操作,配置服務(wù)管理器34與配置儲(chǔ)存庫(kù)60進(jìn)行通信,以取回應(yīng)用特定的特性信息??刂破?2提供配置標(biāo)識(shí)符113 (和/或使能確定配置標(biāo)識(shí)符其他信息,如前文所述)至配置管理器服務(wù)34,以使能取回定義期望配置的應(yīng)用特定的特性信息。配置標(biāo)識(shí)符(和/或使能確定配置標(biāo)識(shí)符的其他信息,如前文所述)可在所述請(qǐng)求中提供至控制器32,或控制器由于來(lái)自配置管理器服務(wù)的更新后的信息的通知而具有配置標(biāo)識(shí)符,如前文所述。如果如步驟153所確定的,未取回應(yīng)用特定的特性信息或不存在更新后的信息,則在步驟156,將指示缺乏應(yīng)用特定的特性信息的異常或消息通過(guò)控制器32傳輸至配置控件20,并且數(shù)據(jù)庫(kù)應(yīng)用利用默認(rèn)或先前的特性值來(lái)繼續(xù)。配置控件20和/或控制器32可促進(jìn)向管理員顯示錯(cuò)誤或其他消息,以提供缺乏更新后的應(yīng)用特定的特性信息、或存在與取回應(yīng)用特定的特性信息和/或配置數(shù)據(jù)庫(kù)應(yīng)用有關(guān)的問(wèn)題的通知。當(dāng)從配置儲(chǔ)存庫(kù)60取回應(yīng)用特定的特性信息時(shí),所取回的應(yīng)用特定的特性信息由配置服務(wù)管理員服務(wù)34來(lái)接收,并提供至控制器32以在步驟154傳輸至配置控件20,以利用與前文所描述的相同方式更新數(shù)據(jù)庫(kù)應(yīng)用配置。備選地,控制服務(wù)器30可自動(dòng)地提供更新后的應(yīng)用特定的特性信息至應(yīng)用服務(wù)器10,而非應(yīng)用服務(wù)器針對(duì)應(yīng)用特定的特性信息來(lái)輪詢(xún)控制服務(wù)器。圖9中示出控制服務(wù)器30自動(dòng)地提供更新后的應(yīng)用特定的特性信息至應(yīng)用服務(wù)器10的方式。初始地,定義、分組及向控制器32注冊(cè)應(yīng)用特定的特性信息的特性(例如,包括應(yīng)用服務(wù)器10、程序堆棧81的層82、數(shù)據(jù)庫(kù)連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的特性),并且在應(yīng)用服務(wù)器10和控制服務(wù)器30之間建立適當(dāng)?shù)耐ㄐ?,如前文所述。具體地說(shuō),控制器32確定更新后的應(yīng)用特定的特性信息的存在性。例如,這可通過(guò)配置管理器服務(wù)34識(shí)別在與管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))交互期間經(jīng)由配置管理器接口 40輸入和/或更新的應(yīng)用特定的特性信息來(lái)完成,并且向控制器32通知更新后的應(yīng)用特定的特性信息和每個(gè)更新的配置的相關(guān)配置標(biāo)識(shí)符113的存在,如前文所述。如果在步驟160確定存在更新,則在步驟162,控制器32經(jīng)由配置管理員服務(wù)34根據(jù)配置標(biāo)識(shí)符113而從配置儲(chǔ)存庫(kù)60取回更新后的應(yīng)用特定的特性信息,其利用與前文所描述基本相同的方式。如果如在步驟163所確定的,未取回更新后的應(yīng)用特定的特性信息,則控制器確定托管與配置標(biāo)識(shí)符113相關(guān)聯(lián)的數(shù)據(jù)庫(kù)應(yīng)用的適當(dāng)應(yīng)用服務(wù)器,及在步驟165中,發(fā)送指示存在取回更新后的應(yīng)用特定的特性信息的問(wèn)題的異?;蛳⒅链藨?yīng)用服務(wù)器的配置控件20。在此情況中,數(shù)據(jù)庫(kù)應(yīng)用利用先前的特性值繼續(xù)。配置控件20和/或控制器32可促進(jìn)向管理員顯示錯(cuò)誤或其他消息,以提供存在關(guān)于取回應(yīng)用特定的特性信息和/或配置數(shù)據(jù)庫(kù)應(yīng)用的問(wèn)題的通知。
如果取回更新后的應(yīng)用特定的特性信息,則控制器確定托管與配置標(biāo)識(shí)符113關(guān)聯(lián)的數(shù)據(jù)庫(kù)應(yīng)用的適當(dāng)應(yīng)用服務(wù)器,及在步驟164中,傳輸更新后的應(yīng)用特定的特性信息至此應(yīng)用服務(wù)器的配置控件20。配置控件從控制器32接收更新后的應(yīng)用特定的特性信息,及應(yīng)用更新后的應(yīng)用特定的特性信息以配置數(shù)據(jù)庫(kù)應(yīng)用,其利用與前文所描述的相同方式。重復(fù)過(guò)程直到終止條件的發(fā)生(例如,電源關(guān)閉),如在步驟166所確定的。本發(fā)明的實(shí)施例還使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù)等)能夠影響在應(yīng)用服務(wù)器處的查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型,如同前文所述。圖10中示出了可以控制數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言執(zhí)行模型的方式。初始地,配置控件20從其他程序堆棧82接收和促進(jìn)查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的執(zhí)行,如前文所述(例如,經(jīng)由IBMpureQuery框架)。具體地說(shuō),在步驟170,配置控件20監(jiān)視查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的執(zhí)行,及在步驟172捕獲語(yǔ)句。配置控件捕獲查詢(xún)語(yǔ)言語(yǔ)句和追蹤各種相關(guān)的信息(例如,數(shù)據(jù)庫(kù)應(yīng)用和提供語(yǔ)句、時(shí)間等的特定程序堆棧)。所捕獲的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句由配置控件20優(yōu)選地存儲(chǔ)在文件中(例如XML等)。將此文件發(fā)送至控制器32以由配置管理器服務(wù)34存儲(chǔ)在配置儲(chǔ)存庫(kù)60中。一旦捕獲了查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句,配置管理器服務(wù)34就可從配置儲(chǔ)存庫(kù)60取回語(yǔ)句,以經(jīng)由配置管理器接口 40呈現(xiàn)給終端用戶(hù)系統(tǒng)90上的管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))。在步驟174中,管理員可重新查看語(yǔ)句和各種性能或其他信息(例如,每個(gè)語(yǔ)句的執(zhí)行時(shí)間等)。性能信息基于所捕獲的信息和從執(zhí)行語(yǔ)句的一個(gè)或多個(gè)對(duì)應(yīng)數(shù)據(jù)庫(kù)50所收集的信息。圖11中示出提供關(guān)于查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行的各種性能信息的實(shí)例圖形用戶(hù)接口屏幕190。屏幕190包括關(guān)于查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的各種實(shí)例圖形表示和圖表,以及由一個(gè)或多個(gè)對(duì)應(yīng)數(shù)據(jù)庫(kù)50進(jìn)行的執(zhí)行。返回圖10,如果查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句不與性能閾值一致,在步驟176,管理員可優(yōu)化查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句。例如,配置管理器服務(wù)34可呈現(xiàn)接口屏幕155(圖6),使得管理員能夠輸入特定語(yǔ)句或語(yǔ)句序列的優(yōu)化后的查詢(xún)語(yǔ)言集,如前文所述。此外,在步驟178,管理員可限制執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句。例如,配置管理器服務(wù)34可呈現(xiàn)接口屏幕155 (圖6),使得管理員能夠創(chuàng)建查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的列表,所述語(yǔ)句被允許在給定數(shù)據(jù)庫(kù)上執(zhí)行,如前文所述。此外,本發(fā)明的實(shí)施例還可在步驟179使得管理員能夠控制傳輸至數(shù)據(jù)庫(kù)50的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句的批處理以便執(zhí)行。例如,配置管理器服務(wù)34可呈現(xiàn)接口屏幕155 (圖6),使得管理員能夠指定查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句要被一起批處理而無(wú)需改變應(yīng)用代碼,如前文所述。一旦已確定和輸入優(yōu)化、限制和/或批處理,配置管理器服務(wù)34就基于配置標(biāo)識(shí)符113將優(yōu)化后的查詢(xún)語(yǔ)言集、限制及批處理規(guī)范作為應(yīng)用特定的特性信息的一部分存儲(chǔ)在配置儲(chǔ)存庫(kù)60中以注冊(cè)信息,如前文所述。當(dāng)初始化配置控件20或已更新應(yīng)用特定的特性信息時(shí),配置控件接收定義對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用(例如,其包括優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)集、對(duì)應(yīng)參數(shù)以及用于限制和/或批處理的規(guī)范)的配置的應(yīng)用特定的特性信息。在步驟180,配置控件20配置數(shù)據(jù)庫(kù)應(yīng)用或執(zhí)行初始化和其他任務(wù)。在用于靜態(tài)執(zhí)行的配置的情況中(例如,數(shù)據(jù)庫(kù)應(yīng)用特性或參數(shù)指示靜態(tài)執(zhí)行),在步驟182,優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)可綁定到數(shù)據(jù)庫(kù)50。然而,當(dāng)配置用于動(dòng)態(tài)執(zhí)行(例如,數(shù)據(jù)庫(kù)應(yīng)用特性或參數(shù)指示動(dòng)態(tài)執(zhí)行)時(shí),在步驟182,配置控件20攔截由數(shù)據(jù)庫(kù)應(yīng)用執(zhí)行的查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句,并使用用于這些層的適當(dāng)優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)來(lái)替換所攔截的語(yǔ)句。這使能將優(yōu)化后的查詢(xún)語(yǔ)言(例如SQL等)傳輸至數(shù)據(jù)庫(kù)應(yīng)用,而無(wú)需手動(dòng)地修改跨多個(gè)服務(wù)器和地理位置的每個(gè)數(shù)據(jù)庫(kù)應(yīng)用或?qū)?yīng)特性。查詢(xún)語(yǔ)言語(yǔ)句的攔截和替換可基于應(yīng)用特定的特性信息而類(lèi)似 地用于靜態(tài)執(zhí)行。一旦安裝了查詢(xún)語(yǔ)言(例如SQL等)配置,就可根據(jù)限制和/或批處理規(guī)范將查詢(xún)語(yǔ)言語(yǔ)句傳輸至數(shù)據(jù)庫(kù)50并在步驟184處執(zhí)行。例如,可借助異構(gòu)批處理以及延遲執(zhí)行直到提交事務(wù)來(lái)優(yōu)化連接利用率,如前文所述。這使得框架能夠在少量的時(shí)間將物理連接指派給數(shù)據(jù)庫(kù)應(yīng)用以便執(zhí)行??稍谂c數(shù)據(jù)庫(kù)應(yīng)用關(guān)聯(lián)的應(yīng)用特定的特性信息的一個(gè)或多個(gè)特性或參數(shù)中指定此批處理,如前文所述。此外,執(zhí)行的延遲使得所有查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句能夠由配置控件20捕獲和分析以提供這些語(yǔ)句的優(yōu)化批處理。例如,可移除捕獲的語(yǔ)句集內(nèi)的多余查詢(xún)語(yǔ)言語(yǔ)句,而所述捕獲集中的類(lèi)似語(yǔ)句可被參數(shù)化以合并語(yǔ)句。此外,可由配置控件20分析所述捕獲集內(nèi)的語(yǔ)句的影響,以減少被提供以執(zhí)行的語(yǔ)句的數(shù)目,由此增強(qiáng)性能(例如,可移除所述捕獲集內(nèi)提供附加數(shù)據(jù)并隨后刪除此數(shù)據(jù)的語(yǔ)句而沒(méi)有負(fù)面影響)。圖12中示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的控制系統(tǒng)的備選拓?fù)洹3跏嫉兀刂葡到y(tǒng)200基本類(lèi)似于前文所述的控制系統(tǒng)100,其中控制器32和配置服管理器服務(wù)34嵌入應(yīng)用服務(wù)器程序堆棧81的配置控件20內(nèi),以使得應(yīng)用服務(wù)器10能夠直接存取配置儲(chǔ)存庫(kù)60,以取回定義對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的配置的應(yīng)用特定的特性信息。具體地說(shuō),控制系統(tǒng)200包括一個(gè)或多個(gè)應(yīng)用服務(wù)器10以及配置儲(chǔ)存庫(kù)60。應(yīng)用服務(wù)器和配置儲(chǔ)存庫(kù)可彼此遠(yuǎn)離并通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。網(wǎng)絡(luò)可由任何數(shù)目的任何適當(dāng)通信介質(zhì)來(lái)實(shí)施(例如,廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)絡(luò)等),如前文所述。備選地,配置儲(chǔ)存庫(kù)60可位于應(yīng)用服務(wù)器10的本地,并經(jīng)由通信介質(zhì)78進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如,局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施,如前文所述。在配置儲(chǔ)存庫(kù)60由網(wǎng)絡(luò)(例如,LAN和WAN)存取的情況中,配置儲(chǔ)存庫(kù)可包括數(shù)據(jù)庫(kù)服務(wù)器或采取數(shù)據(jù)庫(kù)服務(wù)器的形式。數(shù)據(jù)庫(kù)服務(wù)器可由任何傳統(tǒng)的、或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如包括處理器、存儲(chǔ)器和/或內(nèi)部或外部通信設(shè)備(例如,調(diào)制解調(diào)器、網(wǎng)卡等))、可選的輸入設(shè)備(例如鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)、及任何商用和/或訂制軟件(例如服務(wù)器/通信軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施。應(yīng)用服務(wù)器10基本類(lèi)似于在前文所描述的應(yīng)用服務(wù)器,其中每個(gè)應(yīng)用服務(wù)器耦合至對(duì)應(yīng)事務(wù)或其他數(shù)據(jù)庫(kù)50。數(shù)據(jù)庫(kù)50和配置儲(chǔ)存庫(kù)60基本類(lèi)似于前文所述的數(shù)據(jù)庫(kù)和配置儲(chǔ)存庫(kù)。每個(gè)應(yīng)用服務(wù)器和對(duì)應(yīng)數(shù)據(jù)庫(kù)可彼此遠(yuǎn)離并通過(guò)網(wǎng)絡(luò)70進(jìn)行通信。備選地,應(yīng)用服務(wù)器和對(duì)應(yīng)數(shù)據(jù)庫(kù)可彼此位于本地及經(jīng)由通信介質(zhì)76進(jìn)行通信。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如,局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施,如前文所述。在數(shù)據(jù)庫(kù)50由網(wǎng)絡(luò)(例如LAN和WAN)存取時(shí),數(shù)據(jù)庫(kù)可以包括數(shù)據(jù)庫(kù)服務(wù)器或采取數(shù)據(jù)庫(kù)服務(wù)器的形式。數(shù)據(jù)庫(kù)服務(wù)器可由任何傳統(tǒng)的、或優(yōu)選地配備有顯示器或監(jiān)視器、基本部分(例如包括處理器、存儲(chǔ)器、和/或內(nèi)部或外部通信設(shè)備(例如調(diào)制解調(diào)器、網(wǎng)卡等))、可選的輸入設(shè)備(例如鍵盤(pán)、鼠標(biāo)或其他輸入設(shè)備)、及任何商用和/或訂制軟件(例如服務(wù)器/通信軟件等)的其他計(jì)算機(jī)系統(tǒng)來(lái)實(shí)施。每個(gè)應(yīng)用服務(wù)器10包括一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用80(例如,包括或關(guān)聯(lián)于來(lái)自對(duì)應(yīng)數(shù)據(jù)庫(kù)50的軟件應(yīng)用處理數(shù)據(jù)以執(zhí)行期望動(dòng)作、實(shí)施數(shù)據(jù)庫(kù)存取以從對(duì)應(yīng)數(shù)據(jù)庫(kù)50中取回?cái)?shù)據(jù)以用于該處理的對(duì)應(yīng)基礎(chǔ)過(guò)程、到對(duì)應(yīng)數(shù)據(jù)庫(kù)50的連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型)。在程序堆棧81中提供來(lái)自數(shù)據(jù)庫(kù)50的軟件應(yīng)用處理數(shù)據(jù)和對(duì)應(yīng)基礎(chǔ)過(guò)程(例如,包括管理數(shù)據(jù)庫(kù)連接)。每個(gè)應(yīng)用服務(wù)器10包括一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用80,每 個(gè)數(shù)據(jù)庫(kù)應(yīng)用80包括具有多個(gè)層82的程序堆棧81,它們相互操作以提供對(duì)對(duì)應(yīng)數(shù)據(jù)庫(kù)50的存取并實(shí)施查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型,如前文所述。每個(gè)數(shù)據(jù)庫(kù)應(yīng)用與應(yīng)用特定的特性信息相關(guān)聯(lián),所述應(yīng)用特定的特性信息定義此數(shù)據(jù)庫(kù)應(yīng)用的一個(gè)或多個(gè)配置,并且包括控制存取對(duì)應(yīng)數(shù)據(jù)庫(kù)50的方式的各種特性或參數(shù)。數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息的各種特性或參數(shù)可涉及應(yīng)用服務(wù)器10和/或一個(gè)或多個(gè)程序堆棧層82。此外,每個(gè)數(shù)據(jù)庫(kù)應(yīng)用80 (例如,經(jīng)由程序堆棧81)實(shí)施具有相關(guān)應(yīng)用特定的特性信息的執(zhí)行模型,所述應(yīng)用特定的特性信息包括特性或參數(shù),它們控制執(zhí)行具有查詢(xún)語(yǔ)言(例如SQL等)語(yǔ)句形式的數(shù)據(jù)庫(kù)查詢(xún)的方式,如前文所述。配置儲(chǔ)存庫(kù)60存儲(chǔ)應(yīng)用特定的特性信息(例如,包括應(yīng)用服務(wù)器10、程序堆棧81的層82、數(shù)據(jù)庫(kù)連接和/或查詢(xún)語(yǔ)言(例如SQL等)執(zhí)行模型的特性),所述應(yīng)用特定的特性信息定義數(shù)據(jù)庫(kù)應(yīng)用的配置,以配置所述數(shù)據(jù)庫(kù)應(yīng)用,如前文所述。控制系統(tǒng)200基本上采用應(yīng)用服務(wù)器10內(nèi)的上述控制服務(wù)器30的功能性,以使得管理員(例如,數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或其他用戶(hù))能夠集中地控制數(shù)據(jù)庫(kù)應(yīng)用。具體地說(shuō),配置控件20包括控制器32和配置管理器服務(wù)34,它們均基本類(lèi)似于上述控制器和配置控件管理器服務(wù)。配置管理服務(wù)34與一個(gè)或多個(gè)終端用戶(hù)系統(tǒng)90的配置管理員接口 40交互,以使得管理員能夠查看、定義、輸入和/或編輯應(yīng)用特定的特性信息,以如前文所述基本相同的方式來(lái)集中地控制和配置數(shù)據(jù)庫(kù)應(yīng)用。所輸入的應(yīng)用特定的特性信息由配置管理器服務(wù)34根據(jù)配置標(biāo)識(shí)符113存儲(chǔ)在配置儲(chǔ)存庫(kù)60中,如前文所述。終端用戶(hù)系統(tǒng)90和應(yīng)用服務(wù)器10可彼此遠(yuǎn)離并經(jīng)由網(wǎng)絡(luò)70進(jìn)行通信。備選地,終端用戶(hù)系統(tǒng)90可位于應(yīng)用服務(wù)器10的本地并經(jīng)由通信介質(zhì)79進(jìn)行通信。網(wǎng)絡(luò)可由任何數(shù)目的任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施,如前文所述。控制器32與配置管理器服務(wù)34相互操作,以取回應(yīng)用特定的特性信息,所述應(yīng)用特定的特性信息根據(jù)配置標(biāo)識(shí)符113以與前文所描述基本相同的方式定義來(lái)自配置儲(chǔ)存庫(kù)60的對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用的期望配置。取回應(yīng)用特定的特性信息以響應(yīng)控制器32的初始化,或響應(yīng)對(duì)應(yīng)用特定的特性信息的更新,如前文所述??刂破?2可利用配置儲(chǔ)存庫(kù)60的指定URL或地址來(lái)建立通信,或可采用自動(dòng)檢測(cè)機(jī)制以與前文所述基本相同的方式來(lái)檢測(cè)配
置儲(chǔ)存庫(kù)。一旦取回了應(yīng)用特定的特性信息,控制器32就將所取回的應(yīng)用特定的特性信息提供給配置控件20。配置控件應(yīng)用所述應(yīng)用特定的特性信息,以與前文所述基本相同的方式配置對(duì)應(yīng)數(shù)據(jù)庫(kù)應(yīng)用。控制器和配置服務(wù)管理員可備選地嵌入應(yīng)用服務(wù)器10的程序堆棧81中的一個(gè)或多個(gè)層內(nèi),或在應(yīng)用服務(wù)器10的程序堆棧81內(nèi)形成一個(gè)或多個(gè)層,或駐留于應(yīng)用服務(wù)器外部,但可由應(yīng)用服務(wù)器的一個(gè)或多個(gè)程序堆棧存取以配置數(shù)據(jù)庫(kù)應(yīng)用。將理解,前文所描述和圖中例示的實(shí)施例僅代表實(shí)現(xiàn)用于集中地控制數(shù)據(jù)庫(kù)應(yīng)用的實(shí)施例的許多方式中的幾種方式。本發(fā)明的實(shí)施例的拓?fù)淇砂ㄈ魏螖?shù)目的計(jì)算機(jī)或其他處理系統(tǒng)(例如數(shù)據(jù)庫(kù)、應(yīng)用、控件或其他服務(wù)器系統(tǒng)、終端用戶(hù)系統(tǒng)等)及以任何期望方式排列的數(shù)據(jù)庫(kù)或其 他儲(chǔ)存庫(kù),其中本發(fā)明的實(shí)施例可應(yīng)用于任何期望類(lèi)型的計(jì)算環(huán)境(例如,云計(jì)算、客戶(hù)端-服務(wù)器端(例如用作客戶(hù)端的應(yīng)用服務(wù)器(或配置控件)和用作服務(wù)器端的控制服務(wù)器(或控制器)、網(wǎng)絡(luò)計(jì)算、大型計(jì)算機(jī)等))。由本發(fā)明的實(shí)施例采用的計(jì)算機(jī)或其他處理系統(tǒng)可由任何數(shù)目的任何個(gè)人或其他類(lèi)型的計(jì)算機(jī)或處理系統(tǒng)來(lái)實(shí)施(例如IBM-可兼容、Apple、Macintosh、膝上型計(jì)算機(jī)、palm、pilot等),并可包括任何商用操作系統(tǒng)(例如Windows、OS/2、Unix、Linux等),及任何商用或訂制軟件(例如,瀏覽器軟件、通信軟件、月艮務(wù)器軟件、控制軟件)(例如,控制器、配置管理器服務(wù)、配置管理器接口、程序堆棧層等)。這些系統(tǒng)可包括任何類(lèi)型的監(jiān)視器和輸入設(shè)備(例如鍵盤(pán)、鼠標(biāo)、語(yǔ)音識(shí)別等)以輸入和/或查看信息。應(yīng)理解,用于本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)的軟件(例如控制器、配置管理器服務(wù)、配置管理器接口、程序堆棧層)可以以任何期望的計(jì)算機(jī)語(yǔ)言來(lái)實(shí)施,并由在計(jì)算機(jī)領(lǐng)域的技術(shù)人員根據(jù)包含在說(shuō)明書(shū)中的描述和圖中示出的流程圖來(lái)開(kāi)發(fā)。例如,控制器和配置管理器服務(wù)可在Java中實(shí)施,而配置控件可在C++中實(shí)施。此外,執(zhí)行各種功能的軟件的在此的任何參照通常指執(zhí)行在軟件控制下的這些功能的計(jì)算機(jī)系統(tǒng)或處理器。本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)備選地可由任何類(lèi)型的硬件和/或其他處理電路實(shí)施。計(jì)算機(jī)系統(tǒng)的各種功能可以任何方式分布在任何數(shù)目的軟件和/或硬件模塊或單元、處理或計(jì)算機(jī)系統(tǒng)和/或電路之間,其中計(jì)算機(jī)或處理系統(tǒng)可彼此本地或遠(yuǎn)程地設(shè)置,并經(jīng)由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)進(jìn)行通信(例如LAN、WAN、企業(yè)內(nèi)部網(wǎng)絡(luò)、因特網(wǎng)、硬件線路、調(diào)制解調(diào)器連接、無(wú)線等)。例如,本發(fā)明的實(shí)施例的功能可以任何方式分布在各種終端用戶(hù)、控制服務(wù)器、應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器系統(tǒng)、和/或任何其他中間處理設(shè)備之間。前文所描述及流程圖中示出的軟件和/或算法可利用實(shí)現(xiàn)在此所描述的功能的任何方式來(lái)修改。此外,流程圖或說(shuō)明書(shū)中的功能可利用實(shí)現(xiàn)期望操作的任何次序來(lái)執(zhí)行。本發(fā)明的實(shí)施例的軟件(例如控制器、配置管理器服務(wù)、配置管理器接口、程序堆棧層等)可在可記錄介質(zhì)(例如磁性或光學(xué)介質(zhì)、磁性-光學(xué)介質(zhì)、軟盤(pán)、CD-R0M、DVD、存儲(chǔ)器件等)上提供,以在獨(dú)立系統(tǒng)或由網(wǎng)絡(luò)或其他通信介質(zhì)連接的系統(tǒng)上使用。通信網(wǎng)絡(luò)可由任何數(shù)目的任何類(lèi)型的通信網(wǎng)絡(luò)(例如LAN、WAN、因特網(wǎng)、企業(yè)內(nèi)部網(wǎng)絡(luò)、VPN等)來(lái)實(shí)施。本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)(例如數(shù)據(jù)庫(kù)、應(yīng)用、控件、或其他服務(wù)器系統(tǒng)、終端用戶(hù)系統(tǒng)等)可包括任何傳統(tǒng)或其他通信設(shè)備以經(jīng)由任何傳統(tǒng)或其他通信協(xié)議通過(guò)網(wǎng)絡(luò)進(jìn)行通信。計(jì)算機(jī)系統(tǒng)(例如數(shù)據(jù)庫(kù)、應(yīng)用、控件、或其他服務(wù)器系統(tǒng)、終端用戶(hù)系統(tǒng)等)可利用任何類(lèi)型的連接(例如有線、無(wú)線等)來(lái)存取網(wǎng)絡(luò)。通信介質(zhì)可由任何適當(dāng)?shù)耐ㄐ沤橘|(zhì)(例如局域網(wǎng)(LAN)、硬件線路、無(wú)線鏈接、企業(yè)內(nèi)部網(wǎng)絡(luò)等)來(lái)實(shí)施。數(shù)據(jù)庫(kù)和儲(chǔ)存庫(kù)可由任何數(shù)目的任何傳統(tǒng)或其他數(shù)據(jù)庫(kù)、數(shù)據(jù)儲(chǔ)存或存儲(chǔ)結(jié)構(gòu)(例如文件、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)或其他儲(chǔ)存庫(kù)等)來(lái)實(shí)施。數(shù)據(jù)庫(kù)可彼此遠(yuǎn)離或位于本地,和/或遠(yuǎn)離服務(wù)器系統(tǒng)(例如應(yīng)用服務(wù)器、控制服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器等)、或位于服務(wù)器系統(tǒng)的本地。應(yīng)用特定的特性信息可包括任何期望的應(yīng)用特定的或其他信息,并且應(yīng)用特定的特性信息的所有或任何部分可存儲(chǔ)在任何數(shù)目的數(shù)據(jù)庫(kù)、數(shù)據(jù)儲(chǔ)存庫(kù)、或彼此位于本地或彼此遠(yuǎn)離的存儲(chǔ)單元。例如,應(yīng)用特定的特性信息的所有或一部分可存儲(chǔ)于一個(gè)或多個(gè)數(shù)據(jù)庫(kù)50中。數(shù)據(jù)庫(kù)應(yīng)用可包括使能處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)的任何數(shù)目的任何組件(例如程序堆棧、應(yīng)用服務(wù)器軟件、程序堆棧的一個(gè)或多個(gè)層的任何部分、及應(yīng)用服務(wù)器軟件的任何部 分等)。程序堆??砂ㄒ匀魏畏绞脚帕泻吞峁┤魏纹谕δ艿娜魏螖?shù)目的層(例如事務(wù)功能、映射功能、連接和/或存取功能、通信功能等)。數(shù)據(jù)庫(kù)應(yīng)用可提供商業(yè)或任何其他類(lèi)型的實(shí)施,以處理儲(chǔ)存于數(shù)據(jù)庫(kù)中的數(shù)據(jù)。數(shù)據(jù)庫(kù)應(yīng)用(或其任何部分)可與任何數(shù)目的標(biāo)識(shí)符相關(guān)聯(lián)。數(shù)據(jù)庫(kù)應(yīng)用和配置標(biāo)識(shí)符可包括任何數(shù)目的任何適當(dāng)?shù)淖址蚍?hào)(例如,字母數(shù)字、標(biāo)點(diǎn)或其他符號(hào)等)或任何其他適當(dāng)信息(屬性、一個(gè)或多個(gè)附加標(biāo)識(shí)符等)。數(shù)據(jù)庫(kù)應(yīng)用和/或配置標(biāo)識(shí)符可用于存儲(chǔ)和/或取回?cái)?shù)據(jù)庫(kù)應(yīng)用的適當(dāng)信息及其部分(例如特性、運(yùn)行時(shí)信息等)。例如,單獨(dú)數(shù)據(jù)庫(kù)應(yīng)用和/或配置標(biāo)識(shí)符可用于數(shù)據(jù)庫(kù)應(yīng)用的每一部分(例如程序堆棧層、應(yīng)用服務(wù)器等),以取回和應(yīng)用包括這些部分的特性的應(yīng)用特定的特性信息。在此情況中,可以配置數(shù)據(jù)庫(kù)應(yīng)用的一個(gè)或多個(gè)特定部分。此外,數(shù)據(jù)庫(kù)應(yīng)用可與任何數(shù)目的配置相關(guān)聯(lián),其中取回每個(gè)配置的配置標(biāo)識(shí)符可包括數(shù)據(jù)庫(kù)應(yīng)用標(biāo)識(shí)符和任何附加信息(例如屬性、特定配置的標(biāo)識(shí)符等)。數(shù)據(jù)庫(kù)應(yīng)用和/或配置標(biāo)識(shí)符可以任何適當(dāng)?shù)姆绞接糜谌』鼗虼_定期望的應(yīng)用特定的特性信息(例如查找表、關(guān)鍵字或數(shù)據(jù)庫(kù)表的其他字段等)的配置儲(chǔ)存庫(kù)內(nèi)的位置(例如文件名、地址、指針等)。應(yīng)用特定的特性信息可包括任何適當(dāng)?shù)臄?shù)據(jù)庫(kù)應(yīng)用或其他實(shí)體的應(yīng)用特定或其他信息(例如屬性、特性、特征、操作參數(shù)等),并可關(guān)聯(lián)于數(shù)據(jù)庫(kù)應(yīng)用的任何部分(例如程序堆棧的一個(gè)或多個(gè)層、應(yīng)用服務(wù)器等)。應(yīng)用特定的特性信息可以任何方式存儲(chǔ)在配置儲(chǔ)存庫(kù)或其他數(shù)據(jù)庫(kù)或存儲(chǔ)單元中(例如根據(jù)數(shù)據(jù)庫(kù)應(yīng)用和/或配置標(biāo)識(shí)符或其他索引、根據(jù)特性特征或數(shù)據(jù)庫(kù)應(yīng)用的相關(guān)部分等)。數(shù)據(jù)庫(kù)應(yīng)用和/或應(yīng)用特定的特性信息的特性可根據(jù)任何適當(dāng)?shù)臏?zhǔn)則(例如數(shù)據(jù)源、連接等)來(lái)分組。應(yīng)用特定的特性信息可本地存儲(chǔ)在應(yīng)用服務(wù)器上和/或儲(chǔ)存在遠(yuǎn)程或本地儲(chǔ)存庫(kù)內(nèi)。任何數(shù)目的特性和應(yīng)用特定的特性信息可被存儲(chǔ)和/或取回以配置數(shù)據(jù)庫(kù)應(yīng)用??梢匀魏芜m當(dāng)?shù)姆绞?例如,標(biāo)志或其他指示器、控制提供者的統(tǒng)一資源定位器(URL)或地址、自動(dòng)檢測(cè)機(jī)制等)檢測(cè)集中式或其他控制的存在。可以任何方式(例如,將取回的特性值存儲(chǔ)在對(duì)應(yīng)配置變量中、存儲(chǔ)器或其他儲(chǔ)存位置(例如文件、寄存器等)等)來(lái)應(yīng)用數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息??梢砸匀魏纹谕麜r(shí)間間隔(例如分鐘、秒等)輪詢(xún)(例如傳輸對(duì)更新信息的請(qǐng)求)更新信息的取回,并且可為周期性的或處于各種情況。更新的信息備選地可被自動(dòng)取回并以任何期望時(shí)間間隔(例如在更新后的數(shù)分鐘、數(shù)秒鐘、隨即在更新后的時(shí)刻)被提供給數(shù)據(jù)庫(kù)應(yīng)用。異?;蛳⒖砂ㄈ魏纹谕畔?例如錯(cuò)誤碼、說(shuō)明、指示器等),并可被提供給任何感興趣的一方(例如任何管理員或其他用戶(hù)等),以響應(yīng)任何情況(例如關(guān)于取回?cái)?shù)據(jù)、配置數(shù)據(jù)庫(kù)或其他應(yīng)用的錯(cuò)誤或其他情況)。本發(fā)明的實(shí)施例可采用任何數(shù)目或類(lèi)型的用戶(hù)接口(例如圖形用戶(hù)接口(GUI)、命令行、提示等),其中接口可包括以任何方式排列的信息。所述接口可包括任何數(shù)目的任何類(lèi)型的設(shè)置于任何位置的輸入或致動(dòng)機(jī)制(例如按鈕、圖標(biāo)、字段、框、鏈接等)以經(jīng)由任何適當(dāng)?shù)妮斎朐O(shè)備(例如鼠標(biāo)、鍵盤(pán)等)輸入/顯示信息及啟始期望動(dòng)作??刂葡到y(tǒng)可由任何適當(dāng)?shù)挠脩?hù)來(lái)操作以配置數(shù)據(jù)庫(kù)應(yīng)用(例如數(shù)據(jù)庫(kù)管理員、系統(tǒng)管理員或終端用戶(hù)等)。接口屏幕可包括任何適當(dāng)?shù)募せ钇?例如鏈接、標(biāo)簽等)以便以任何方式在屏幕之間導(dǎo)航。查詢(xún)語(yǔ)言?xún)?yōu)化可以以任何方式來(lái)執(zhí)行(例如手動(dòng)、查詢(xún)語(yǔ)言?xún)?yōu)化器等),而查詢(xún)語(yǔ)言語(yǔ)句可以任何方式從執(zhí)行中加以限制(例如提供被允許執(zhí)行的語(yǔ)句或語(yǔ)句屬性、提供不允許執(zhí)行的語(yǔ)句或語(yǔ)句屬性等)。查詢(xún)語(yǔ)言語(yǔ)句批處理可以以任何期望方式來(lái)執(zhí)行(例如手動(dòng)地指定要批處理的語(yǔ)句等)??梢匀魏畏绞絹?lái)捕獲和分析所述語(yǔ)句以確定批處理順 序。批處理執(zhí)行可延遲任何期望時(shí)間間隔,或備選地,批處理執(zhí)行可于指定的時(shí)間或編程間隔(例如事務(wù)邊界等)來(lái)執(zhí)行。查詢(xún)語(yǔ)言執(zhí)行模型可用于任何期望查詢(xún)或其他語(yǔ)言(例如SQL 等)。數(shù)據(jù)庫(kù)應(yīng)用控制可從單個(gè)中央平臺(tái)(例如中央控制器等)執(zhí)行以對(duì)企業(yè)系統(tǒng)內(nèi)的所有數(shù)據(jù)庫(kù)應(yīng)用提供集中控制。備選地,數(shù)據(jù)庫(kù)應(yīng)用的控制可從任何數(shù)目的平臺(tái)執(zhí)行,其中每個(gè)平臺(tái)可控制企業(yè)內(nèi)的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)應(yīng)用的任何適當(dāng)?shù)姆矫婊虿糠帧1景l(fā)明的實(shí)施例并不限于如前文所討論的使用或應(yīng)用特定的特性信息,而是可用于集中地查看、定義和/或修改任何數(shù)據(jù)庫(kù)應(yīng)用的任何期望的應(yīng)用特定的特性信息或相關(guān)項(xiàng)目以配置這些項(xiàng)目。例如,控制系統(tǒng)可使得用戶(hù)能夠集中地設(shè)置數(shù)據(jù)庫(kù)應(yīng)用的初始數(shù)據(jù)庫(kù)連接配置,及集中地控制從目前配置的數(shù)據(jù)庫(kù)連接至不同的數(shù)據(jù)庫(kù)連接的數(shù)據(jù)庫(kù)應(yīng)用的重定向。連接的數(shù)目可為數(shù)據(jù)庫(kù)的特性,并指示允許連至數(shù)據(jù)庫(kù)的開(kāi)啟連接的數(shù)目,其中數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作可根據(jù)連至數(shù)據(jù)庫(kù)的連接的數(shù)目來(lái)加以控制。通過(guò)實(shí)例的方式,數(shù)據(jù)庫(kù)應(yīng)用可根據(jù)連至數(shù)據(jù)庫(kù)的連接是活動(dòng)還是耗盡的數(shù)目而采取不同階段的動(dòng)作。備選地,連接的數(shù)目可為數(shù)據(jù)庫(kù)應(yīng)用的特性并指示允許在連接池中保持的開(kāi)啟連接的數(shù)目。此外,控制系統(tǒng)可使得用戶(hù)能夠集中地查看此拓?fù)?,包括配置哪些?shù)據(jù)庫(kù)應(yīng)用及連接至這些數(shù)據(jù)庫(kù)應(yīng)用的數(shù)據(jù)庫(kù)??刂葡到y(tǒng)可追蹤配置變化并將其存儲(chǔ)在配置儲(chǔ)存庫(kù)中,并使得用戶(hù)能夠集中地查看和審核這些變化的軌跡??刂葡到y(tǒng)可使得用戶(hù)能夠集中地定義數(shù)據(jù)庫(kù)應(yīng)用和數(shù)據(jù)庫(kù)的任意邏輯、分層分組,并按照定義的邏輯、分層分組和策略集中地查看數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)應(yīng)用以及它們的配置。此外,控制系統(tǒng)可使得用戶(hù)能夠集中地查看和控制應(yīng)用服務(wù)器數(shù)據(jù)源,而無(wú)需應(yīng)用服務(wù)器重新配置(其可以是復(fù)雜和易于出錯(cuò)的)或服務(wù)器重新啟動(dòng),并集中地改變?nèi)我獾臄?shù)據(jù)庫(kù)應(yīng)用配置特性??刂葡到y(tǒng)還可使得用戶(hù)能夠集中地管理數(shù)據(jù)庫(kù)應(yīng)用靜態(tài)查詢(xún)語(yǔ)言(例如SQL等)的使用,及改變查詢(xún)語(yǔ)言編程模型。此外,控制系統(tǒng)可使得用戶(hù)能夠集中地查看所有數(shù)據(jù)庫(kù)應(yīng)用設(shè)置,包括驅(qū)動(dòng)器級(jí)別、環(huán)境信息、應(yīng)用特性和網(wǎng)站服務(wù)器信息。
本發(fā)明的實(shí)施例的技術(shù)并不限于數(shù)據(jù)庫(kù)應(yīng)用的控制,而是可應(yīng)用于控制和/或配置任何適當(dāng)?shù)膶?shí)施(例如網(wǎng)絡(luò)、計(jì)算機(jī)(例如服務(wù)器、客戶(hù)端等)、計(jì)算機(jī)或其他環(huán)境、工具、仿真、處理或其他設(shè)備等)。標(biāo)識(shí)符可以以任何方式將數(shù)據(jù)庫(kù)應(yīng)用與應(yīng)用特定的特性信息(例如索引或關(guān)鍵字等)和/或應(yīng)用服務(wù)器(例如,經(jīng)由查找表或其他方式以與應(yīng)用服務(wù)器的URL、地址或其他標(biāo)識(shí)符鏈接)相關(guān)聯(lián)。本文中所用的術(shù)語(yǔ),僅僅是為了描述特定的實(shí)施例,而不意圖限定本發(fā)明。本文中所用的單數(shù)形式的“一”和“該”,旨在也包括復(fù)數(shù)形式,除非上下文中明確地另行指出。還要知道,“包含”、“包含”等在本說(shuō)明書(shū)中使用時(shí),說(shuō)明存在所指出的特征、整體、步驟、操作、單元和/或組件,但是并不排除存在或增加一個(gè)或多個(gè)其它特征、整體、步驟、操作、單元和/或組件,以及/或者它們的組合。以下的權(quán)利要求中的對(duì)應(yīng)結(jié)構(gòu)、材料、操作以及所有功能性限定的裝置或步驟的等同替換,旨在包括任何用于與在權(quán)利要求中具體指出的其它單元相組合 地執(zhí)行該功能的結(jié)構(gòu)、材料或操作。所給出的對(duì)本發(fā)明的描述其目的在于示意和描述,并非是窮盡性的,也并非是要把本發(fā)明限定到所表述的形式。對(duì)于所屬技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不偏離本發(fā)明范圍和精神的情況下,顯然可以作出許多修改和變型。對(duì)實(shí)施例的選擇和說(shuō)明,是為了最好地解釋本發(fā)明的原理和實(shí)際應(yīng)用,使所屬技術(shù)領(lǐng)域的普通技術(shù)人員能夠明了,本發(fā)明可以有適合所要的特定用途的具有各種改變的各種實(shí)施方式。所屬技術(shù)領(lǐng)域的技術(shù)人員知道,本發(fā)明的各方面可以體現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明的各方面可以具體實(shí)現(xiàn)為以下形式,即,可以是完全的硬件、完全的軟件(包括固件、駐留軟件、微代碼等)、或者本文一般稱(chēng)為“電路”、“模塊”或“系統(tǒng)”的軟件部分與硬件部分的組合。此外,本發(fā)明的各方面還可以采取體現(xiàn)在任何有形的表達(dá)介質(zhì)中的計(jì)算機(jī)程序產(chǎn)品的形式,該介質(zhì)中包含計(jì)算機(jī)可用的程序碼??梢允褂靡粋€(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任何組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號(hào)介質(zhì)或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是-但不限于-電的、磁的、光的、電磁的、紅外線的、或半導(dǎo)體的系統(tǒng)、裝置、器件或傳播介質(zhì)、或前述各項(xiàng)的任何適當(dāng)?shù)慕M合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括以下有一個(gè)或多個(gè)導(dǎo)線的電連接、便攜式計(jì)算機(jī)磁盤(pán)、硬盤(pán)、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ)器(EPR0M或閃存)、光纖、便攜式緊湊磁盤(pán)只讀存儲(chǔ)器(CD-ROM)、光存儲(chǔ)器件、磁存儲(chǔ)器件、或前述各項(xiàng)的任何適當(dāng)?shù)慕M合。在本文語(yǔ)境中,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是任何含有或存儲(chǔ)供指令執(zhí)行系統(tǒng)、裝置或器件使用的或與指令執(zhí)行系統(tǒng)、裝置或器件相聯(lián)系的程序的有形介質(zhì)。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以包括例如在基帶中或作為載波的一部分傳播的帶有計(jì)算機(jī)可讀程序代碼的數(shù)據(jù)信號(hào)。這樣一種傳播信號(hào)可以采取任何適當(dāng)?shù)男问?,包?但不限于-電磁的、光的或其任何適當(dāng)?shù)慕M合。計(jì)算機(jī)可讀信號(hào)介質(zhì)可以是不同于計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的、可以傳達(dá)、傳播或傳輸供指令執(zhí)行系統(tǒng)、裝置或器件使用的或與指令執(zhí)行系統(tǒng)、裝置或器件相聯(lián)系的程序的任何一種計(jì)算機(jī)可讀介質(zhì)。包含在計(jì)算機(jī)可讀介質(zhì)中的程序代碼可以采用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括-但不限于-無(wú)線、有線、光纜、射頻等等、或上述各項(xiàng)的任何適當(dāng)?shù)慕M合。用于執(zhí)行本發(fā)明的操作的計(jì)算機(jī)程序碼,可以以一種或多種程序設(shè)計(jì)語(yǔ)言的任何組合來(lái)編寫(xiě),所述程序設(shè)計(jì)語(yǔ)言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言-諸如Java、Smalltalk、C++之類(lèi),還包括常規(guī)的過(guò)程式程序設(shè)計(jì)語(yǔ)言-諸如“C”程序設(shè)計(jì)語(yǔ)言或類(lèi)似的程序設(shè)計(jì)語(yǔ)言。程序碼可以完全地在用戶(hù)的計(jì)算上執(zhí)行、部分地在用戶(hù)的計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶(hù)的計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后一種情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任何種類(lèi)的網(wǎng)絡(luò)-包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)-連接到用戶(hù)的計(jì)算機(jī),或者,可以(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過(guò)因特網(wǎng))連接到外部計(jì)算機(jī)。以下參照按照本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述本發(fā)明的各方面。要明白的是,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以提供給通用計(jì)算機(jī)、專(zhuān)用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得通過(guò)計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置執(zhí)行的這些指令,產(chǎn)生實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的裝置。
也可以將這些計(jì)算機(jī)程序指令存儲(chǔ)在能指令計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置或其他設(shè)備以特定方式工作的計(jì)算機(jī)可讀介質(zhì)中,這樣,存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中的指令產(chǎn)生一個(gè)包括實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的指令裝置的制品。也可以將計(jì)算機(jī)程序指令加載到計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置或其他設(shè)備上,使得在計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,從而在計(jì)算機(jī)或其它可編程裝置上執(zhí)行的指令就提供實(shí)現(xiàn)流程圖和/或框圖中的方框中規(guī)定的功能/操作的過(guò)程。附圖中的流程圖和框圖,圖示了按照本發(fā)明各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段、或代碼的一部分,所述模塊、程序段、或代碼的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)接連地表示的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專(zhuān)用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專(zhuān)用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
權(quán)利要求
1.一種控制數(shù)據(jù)庫(kù)應(yīng)用的方法,包括以下步驟 從數(shù)據(jù)儲(chǔ)存庫(kù)中取回?cái)?shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,其中所述數(shù)據(jù)庫(kù)應(yīng)用提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存取 '及 將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。
2.如權(quán)利要求I所述的方法,其中所述應(yīng)用特定的特性信息包括ー個(gè)或多個(gè)特性,所述特性與所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言執(zhí)行模型相關(guān)聯(lián),以控制查詢(xún)語(yǔ)言語(yǔ)句的執(zhí)行。
3.如權(quán)利要求2所述的方法,其中所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及應(yīng)用所述應(yīng)用特定的特性信息的步驟包括以下步驟響應(yīng)于所述應(yīng)用特定的特性信息指示所述查詢(xún)語(yǔ)言語(yǔ)句的靜態(tài)執(zhí)行,將所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句綁定至所述數(shù)據(jù)庫(kù)系統(tǒng)。
4.如權(quán)利要求2或3所述的方法,其中所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及應(yīng)用所述應(yīng)用特定的特性信息的步驟包括以下步驟響應(yīng)于所述應(yīng)用特定的特性信息指示替換所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言語(yǔ)句,攔截所述查詢(xún)語(yǔ)言語(yǔ)句并使用所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句來(lái)替換所述查詢(xún)語(yǔ)言語(yǔ)句。
5.如權(quán)利要求2至4中的任ー權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括被許可執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少ー個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。
6.如權(quán)利要求2至5中的任ー權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括被禁止執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少ー個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。
7.如權(quán)利要求2至6中的任ー權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括待批量執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的查詢(xún)語(yǔ)言語(yǔ)句的指示。
8.如任一先前權(quán)利要求所述的方法,其中所述數(shù)據(jù)庫(kù)應(yīng)用包括用于存取所述數(shù)據(jù)庫(kù)系統(tǒng)的具有多個(gè)層的程序堆棧,以及其中所述應(yīng)用特定的特性信息包括與所述程序堆棧的至少ー個(gè)層關(guān)聯(lián)以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的ー個(gè)或多個(gè)特性。
9.如任一先前權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括連接的數(shù)目,以根據(jù)到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目來(lái)控制所述數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。
10.如任一先前權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括連接的數(shù)目,以控制由所述數(shù)據(jù)庫(kù)應(yīng)用維護(hù)的到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目。
11.如任一先前權(quán)利要求所述的方法,其中取回所述應(yīng)用特定的特性信息的步驟包括以下步驟 確定所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息的存在;以及 從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述更新后的應(yīng)用特定的特性信息。
12.如任一先前權(quán)利要求所述的方法,其中所述數(shù)據(jù)儲(chǔ)存庫(kù)存儲(chǔ)多個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,并且其中取回所述應(yīng)用特定的特性信息的步驟包括以下步驟 根據(jù)相應(yīng)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回每個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息。
13.如權(quán)利要求12所述的方法,其中所述數(shù)據(jù)庫(kù)應(yīng)用中的至少兩個(gè)數(shù)據(jù)庫(kù)應(yīng)用位于不同計(jì)算機(jī)系統(tǒng)上。
14.如任一先前權(quán)利要求所述的方法,其中所述應(yīng)用特定的特性信息包括認(rèn)證對(duì)應(yīng)用戶(hù)以針對(duì)數(shù)據(jù)庫(kù)對(duì)象實(shí)施規(guī)則的簡(jiǎn)檔。
15.如任一先前權(quán)利要求所述的方法,其中所述數(shù)據(jù)庫(kù)應(yīng)用與均存儲(chǔ)在所述數(shù)據(jù)儲(chǔ)存庫(kù)中的多個(gè)配置相關(guān)聯(lián),以及包括所述應(yīng)用特定的特性信息以針對(duì)對(duì)應(yīng)期望操作而配置所述數(shù)據(jù)庫(kù)應(yīng)用。
16.如任一先前權(quán)利要求所述的方法,其中取回所述應(yīng)用特定的特性信息的步驟包括以下步驟 攔截所述數(shù)據(jù)庫(kù)應(yīng)用的已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句并提供與這些語(yǔ)句的執(zhí)行有關(guān)的性能信息;以及 根據(jù)所述性能信息與閾值的關(guān)系而將所述已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句與用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句相關(guān)聯(lián),其中所述應(yīng)用特定的特性信息包括所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句。
17.一種用于控制數(shù)據(jù)庫(kù)應(yīng)用的系統(tǒng),包括 計(jì)算機(jī)系統(tǒng),其包括數(shù)據(jù)庫(kù)應(yīng)用,以提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存取,其中所述計(jì)算機(jī)系統(tǒng) 還包括至少ー個(gè)處理器,所述處理器被配置為 請(qǐng)求從數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息;及 將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。
18.如權(quán)利要求17所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括ー個(gè)或多個(gè)特性,所述特性與所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言執(zhí)行模型相關(guān)聯(lián),以控制查詢(xún)語(yǔ)言語(yǔ)句的執(zhí)行。
19.如權(quán)利要求18所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及響應(yīng)于所述應(yīng)用特定的特性信息指示所述查詢(xún)語(yǔ)言語(yǔ)句的靜態(tài)執(zhí)行而將所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句綁定至所述數(shù)據(jù)庫(kù)系統(tǒng)。
20.如權(quán)利要求18或19所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句,以及所述至少一個(gè)處理器還被配置為響應(yīng)于所述應(yīng)用特定的特性信息指示替換所述數(shù)據(jù)庫(kù)應(yīng)用的查詢(xún)語(yǔ)言語(yǔ)句,攔截所述查詢(xún)語(yǔ)言語(yǔ)句并使用所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句來(lái)替換所述查詢(xún)語(yǔ)言語(yǔ)句。
21.如權(quán)利要求18至20中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括被許可執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少ー個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。
22.如權(quán)利要求18至21中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括被禁止執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的至少ー個(gè)查詢(xún)語(yǔ)言語(yǔ)句的指示。
23.如權(quán)利要求18至22中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括待批量執(zhí)行以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的查詢(xún)語(yǔ)言語(yǔ)句的指示。
24.如權(quán)利要求17至23中的任ー權(quán)利要求所述的系統(tǒng),其中所述數(shù)據(jù)庫(kù)應(yīng)用包括用于存取所述數(shù)據(jù)庫(kù)系統(tǒng)的具有多個(gè)層的程序堆棧,以及其中所述應(yīng)用特定的特性信息包括與所述程序堆棧的至少ー個(gè)層關(guān)聯(lián)以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作的ー個(gè)或多個(gè)特性。
25.如權(quán)利要求17至24中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括連接的數(shù)目,以根據(jù)到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目來(lái)控制所述數(shù)據(jù)庫(kù)應(yīng)用的動(dòng)作。
26.如權(quán)利要求17至25中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括連接的數(shù)目,以控制由所述數(shù)據(jù)庫(kù)應(yīng)用維護(hù)的到所述數(shù)據(jù)庫(kù)系統(tǒng)的連接的數(shù)目。
27.如權(quán)利要求17至26中的任ー權(quán)利要求所述的系統(tǒng),其中所述至少一個(gè)處理器還被配置為定期請(qǐng)求從所述數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息。
28.如權(quán)利要求17至27中的任ー權(quán)利要求所述的系統(tǒng),其中所述數(shù)據(jù)儲(chǔ)存庫(kù)存儲(chǔ)多個(gè)數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,其中所述系統(tǒng)還包括多個(gè)計(jì)算機(jī)系統(tǒng),每個(gè)計(jì)算機(jī)系統(tǒng)均包括數(shù)據(jù)庫(kù)應(yīng)用和至少ー個(gè)處理器,所述處理器被配置為 根據(jù)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回對(duì)應(yīng)數(shù) 據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息。
29.如權(quán)利要求17至28中的任ー權(quán)利要求所述的系統(tǒng),還包括 控制系統(tǒng),其與所述數(shù)據(jù)儲(chǔ)存庫(kù)通信并包括至少ー個(gè)處理器,所述處理器被配置為 接收來(lái)自所述計(jì)算機(jī)系統(tǒng)的請(qǐng)求并且根據(jù)標(biāo)識(shí)符從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述數(shù)據(jù)庫(kù)應(yīng)用的所述應(yīng)用特定的特性信息;以及 將所取回的應(yīng)用特定的特性信息提供給所述計(jì)算機(jī)系統(tǒng)。
30.如權(quán)利要求17至29中的任ー權(quán)利要求所述的系統(tǒng),還包括 控制系統(tǒng),其與所述數(shù)據(jù)儲(chǔ)存庫(kù)通信并包括至少ー個(gè)處理器,所述處理器被配置為 確定所述數(shù)據(jù)庫(kù)應(yīng)用的更新后的應(yīng)用特定的特性信息的存在;以及 從所述數(shù)據(jù)儲(chǔ)存庫(kù)取回所述數(shù)據(jù)庫(kù)應(yīng)用的所述更新后的應(yīng)用特定的特性信息并將所述更新后的應(yīng)用特定的特性信息提供給所述計(jì)算機(jī)系統(tǒng)。
31.如權(quán)利要求17至30中的任ー權(quán)利要求所述的系統(tǒng),其中所述應(yīng)用特定的特性信息包括認(rèn)證對(duì)應(yīng)用戶(hù)以針對(duì)數(shù)據(jù)庫(kù)對(duì)象實(shí)施規(guī)則的簡(jiǎn)檔。
32.如權(quán)利要求17至31中的任ー權(quán)利要求所述的系統(tǒng),其中所述數(shù)據(jù)庫(kù)應(yīng)用與均存儲(chǔ)在所述數(shù)據(jù)儲(chǔ)存庫(kù)中的多個(gè)配置相關(guān)聯(lián),以及包括所述應(yīng)用特定的特性信息以針對(duì)對(duì)應(yīng)期望操作而配置所述數(shù)據(jù)庫(kù)應(yīng)用。
33.如權(quán)利要求17至32中的任ー權(quán)利要求所述的系統(tǒng),其中所述至少一個(gè)處理器還被配 置為 攔截所述數(shù)據(jù)庫(kù)應(yīng)用的已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句并提供與這些語(yǔ)句的執(zhí)行有關(guān)的性能信息;以及 根據(jù)所述性能信息與閾值的關(guān)系而將所述已執(zhí)行查詢(xún)語(yǔ)言語(yǔ)句與用于執(zhí)行的優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句相關(guān)聯(lián),其中所述應(yīng)用特定的特性信息包括所述優(yōu)化后的查詢(xún)語(yǔ)言語(yǔ)句。
34.ー種包括存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序,當(dāng)所述代碼被載入計(jì)算機(jī)系統(tǒng)并在其上執(zhí)行時(shí),將導(dǎo)致所述計(jì)算機(jī)系統(tǒng)執(zhí)行如權(quán)利要求I至16中的任ー權(quán)利要求所述的方法的所有步驟。
全文摘要
根據(jù)本發(fā)明的一個(gè)實(shí)施例,一種系統(tǒng)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)應(yīng)用的控制。所述系統(tǒng)包括計(jì)算機(jī)系統(tǒng),所述計(jì)算機(jī)系統(tǒng)包括數(shù)據(jù)庫(kù)應(yīng)用,以提供對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的存取;及至少一個(gè)處理器。所述計(jì)算機(jī)系統(tǒng)請(qǐng)求從數(shù)據(jù)儲(chǔ)存庫(kù)中取回所述數(shù)據(jù)庫(kù)應(yīng)用的應(yīng)用特定的特性信息,及將所取回的應(yīng)用特定的特性信息應(yīng)用于所述數(shù)據(jù)庫(kù)應(yīng)用,以控制所述數(shù)據(jù)庫(kù)應(yīng)用的操作。本發(fā)明的實(shí)施例還包括用于使用與前文描述的基本相同方式來(lái)控制數(shù)據(jù)庫(kù)應(yīng)用的方法和計(jì)算機(jī)程序產(chǎn)品。
文檔編號(hào)G06F17/30GK102859521SQ201180018490
公開(kāi)日2013年1月2日 申請(qǐng)日期2011年4月13日 優(yōu)先權(quán)日2010年4月30日
發(fā)明者A·達(dá)弗拉, S·A·布羅德斯基, P·A·奧斯特勒, D·W-J·常, T·K·梁, V·R·博米雷迪帕利, R·W·霍爾曼 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司