專利名稱::查詢關(guān)系數(shù)據(jù)庫(kù)的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種用于評(píng)價(jià)有關(guān)關(guān)系數(shù)據(jù)庫(kù)的查詢的方法以及有關(guān)的裝置和程序。
背景技術(shù):
:生物信息學(xué)的主要對(duì)象是提供能迅速、有效和完整檢索到生物信息的搜索工具。目前有存儲(chǔ)生物信息的龐大數(shù)據(jù)庫(kù)??墒浅艘酝?,還存在許多較小的數(shù)據(jù)庫(kù)以及并不象數(shù)據(jù)庫(kù)那樣構(gòu)建的電子數(shù)據(jù)庫(kù),也可以說(shuō)成是平面文件,如科學(xué)雜志中的出版物。因此生物信息學(xué)中的搜索工具必須經(jīng)常綜合來(lái)自各種資料源的數(shù)據(jù)。由于用戶希望立刻在屏幕上得到結(jié)果,在這點(diǎn)上時(shí)間顯得猶為重要。已經(jīng)證實(shí)SRS查詢語(yǔ)言和數(shù)據(jù)包是構(gòu)建這種搜索工具的有效手段。SRS可以綜合來(lái)自各種資料源的數(shù)據(jù)。在WO00/41094中指出了SRS的原理?;旧希琒RS以兩步過程操作。第一步是識(shí)別數(shù)據(jù)源中的條目,第二步通過分析程序提取。盡管這個(gè)概念很適用于平面文件,但是關(guān)系數(shù)據(jù)庫(kù)的應(yīng)用還是帶來(lái)了問題,有關(guān)標(biāo)識(shí)符的信息如列表密匙的提取可能在大數(shù)據(jù)庫(kù)中要花費(fèi)相對(duì)長(zhǎng)的時(shí)間。這是因?yàn)檫@些請(qǐng)求信息通常必須從多個(gè)不同的列表中采集,而這些列表可能并非直接相互連接。目前的關(guān)系列表管理系統(tǒng)以建立查詢所涉及的所有列表的連接表的方式操作。由于該連接表的尺寸基本上是單個(gè)列表行尺寸的產(chǎn)物,因此這很快導(dǎo)致形成大的結(jié)果集,并且相應(yīng)地引起評(píng)價(jià)這些結(jié)果集的處理時(shí)間過長(zhǎng)。這樣,從查詢中引用的列表檢索信息可以是對(duì)大的數(shù)據(jù)庫(kù)的比較慢的處理。如果包含多個(gè)列表的查詢是例如SQL標(biāo)準(zhǔn)語(yǔ)言下的輸入,則RDBMS(關(guān)系數(shù)據(jù)管理系統(tǒng))將形成包含的所有列表的連接列表。由于,這在實(shí)質(zhì)上是所有列表的笛卡兒乘積,所以連接的列表的尺寸隨查詢中每另一個(gè)列表呈指數(shù)增長(zhǎng)。這導(dǎo)致了隨包含的列表數(shù)量快速下降的計(jì)算機(jī)速度。
發(fā)明內(nèi)容本發(fā)明的一個(gè)目的是提供一種用于在關(guān)系數(shù)據(jù)庫(kù)中進(jìn)行查詢的方法、裝置以及程序,其中查詢可以更容易地進(jìn)行,更易于理解,并且查詢過程可以更快速,尤其是提供一種能兼容從其它數(shù)據(jù)源如平面文件中提取信息的流程的方法。根據(jù)本發(fā)明,這個(gè)目標(biāo)是通過評(píng)價(jià)涉及一個(gè)或多個(gè)關(guān)系數(shù)據(jù)庫(kù)的查詢的方法來(lái)實(shí)現(xiàn)的,每個(gè)關(guān)系數(shù)據(jù)庫(kù)包括一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),所述查詢與關(guān)系數(shù)據(jù)庫(kù)中至少兩個(gè)列表相關(guān),所述方法包括確定一個(gè)列表集合,包括在查詢中涉及的列表,其中,所述集合中的每個(gè)列表與至少一個(gè)其它列表相連,這樣,在數(shù)據(jù)庫(kù)的圖表表示中,其中,列表以節(jié)點(diǎn)表示,列表間的鏈路用節(jié)點(diǎn)間的線表示,它們形成了連接對(duì)應(yīng)查詢中涉及的列表的節(jié)點(diǎn)的鏈接圖表。在所述集合中實(shí)現(xiàn)一個(gè)與初級(jí)查詢相當(dāng)?shù)牟樵?,其中在所述集合中?zhí)行所述查詢的所述步驟包括執(zhí)行連續(xù)的部分查詢,其中在先查詢的結(jié)果作為下次查詢的輸入,優(yōu)選地,沿著所述圖表的下次查詢,將所述部分查詢的結(jié)果結(jié)合來(lái)獲得初級(jí)查詢的結(jié)果。為了進(jìn)一步討論,以數(shù)據(jù)庫(kù)的表示作為節(jié)點(diǎn)圖是有幫助的。節(jié)點(diǎn)圖被理解為數(shù)據(jù)庫(kù)的圖表表示,其中,列表以節(jié)點(diǎn)表示,列表間的鏈路用節(jié)點(diǎn)間的連線表示。特別地,列表間的鏈路可以是通過外鍵(foreignkey)的鏈路,但不受此限制。使用節(jié)點(diǎn)圖的概念,在數(shù)據(jù)庫(kù)的兩個(gè)列表間的任何關(guān)系可以可視化為兩個(gè)節(jié)點(diǎn)間的直接或間接(其中,在此的情況是兩個(gè)列表問的直接鏈接)的并通過一個(gè)和多個(gè)中間節(jié)點(diǎn)的通路。使用這個(gè)概念,可以控制在一個(gè)查詢中包含的節(jié)點(diǎn)數(shù)目并以包含的中間列表的明確數(shù)量來(lái)設(shè)計(jì)查詢。本發(fā)明提供了一種實(shí)現(xiàn)查詢的方法,查詢被選的列表,在以節(jié)點(diǎn)表示列表并以節(jié)點(diǎn)之間連線表示列表間鏈路的數(shù)據(jù)庫(kù)的圖表表示中,形成了連接到與初級(jí)查詢相關(guān)的列表的鏈接圖。本發(fā)明的一個(gè)重要方面是一個(gè)大的查詢可以分割成許多更容易評(píng)價(jià)的中間查詢,因?yàn)樯婕暗倪B接表更小。實(shí)質(zhì)上,在所述圖表中兩個(gè)列表間的鏈路用接續(xù)(junction)代替。兩個(gè)列表間的接續(xù)表示這兩個(gè)列表不涉及同一個(gè)查詢,但對(duì)一個(gè)列表在前一查詢中找到的對(duì)于鏈路的鏈接關(guān)鍵字值或另一個(gè)輸入用作輸入,例如,作為包含第二個(gè)列表的查詢中的鏈接關(guān)鍵字的輸入。根據(jù)本發(fā)明,部分查詢是這樣構(gòu)造的,使得只有直接連接到所述查詢中另外一個(gè)列表中的列表包含在部分查詢中,并且所述圖表中每個(gè)列表包含在至少一個(gè)查詢中。因此,有一個(gè)從集線器列表引導(dǎo)到查詢中涉及的列表的完整查詢鏈。當(dāng)列表間的關(guān)系是外鍵關(guān)系時(shí),本發(fā)明可以提供在先查詢的結(jié)果,其包括了在后查詢中包括的列表的外鍵值,并且其中,所述外鍵的所述值用作在后查詢的輸入。本發(fā)明可以提供的在所述集合上執(zhí)行查詢的所述步驟包括在所述列表集合中確定兩個(gè)或多個(gè)部分查詢,它們結(jié)合等于初級(jí)查詢,其中,至少包括所述列表集合的第一子集的第一部分查詢和包括至少與第一子集部分不同的列表的第二子集的第二部分查詢。其中,所述第一子集中至少一個(gè)列表不包含在所述第二子集中,該至少一個(gè)列表具有與在所述第二子集中且不在所述第一子集中的列表的鏈路,所述鏈路對(duì)應(yīng)所述圖表中連線,移除連線將導(dǎo)致圖表斷開,其中,所述第一查詢導(dǎo)致了一個(gè)結(jié)果,該結(jié)果包括所述兩列表間的鏈接關(guān)鍵字的值,并且其中,所述第二查詢具有作為輸入的在第一查詢中確定的鏈接關(guān)鍵字的值,執(zhí)行所述第一查詢,執(zhí)行所述第二查詢,應(yīng)用所述第一查詢的結(jié)果,結(jié)合所有部分查詢的結(jié)果得出初級(jí)查詢的結(jié)果。本發(fā)明可以提供相互不同的所述第一和第二子集。本發(fā)明可以提供在運(yùn)行時(shí)間中動(dòng)態(tài)產(chǎn)生的所述第一和第二部分查詢。本發(fā)明也可以提供不包含在一個(gè)單一數(shù)據(jù)庫(kù)中的包含在所述集合中的所述列表。對(duì)于每次部分查詢,結(jié)果都儲(chǔ)存起來(lái)以被隨后檢索,用于使各種部分查詢的結(jié)果結(jié)合為初級(jí)查詢的結(jié)果或部分結(jié)果。為了清楚起見,來(lái)自根據(jù)本發(fā)明開始的方法的查詢可以在此并隨后稱為“初級(jí)查詢”。根據(jù)一個(gè)優(yōu)選實(shí)施例,查詢是不重疊的意思是分開形成在先查詢的輸入,只有不在其它部分查詢中查詢的列表才被查詢。把一個(gè)大的查詢分割成多個(gè)順序出現(xiàn)的更小的查詢,其具有以下優(yōu)點(diǎn),即,更小的查詢返回更小的結(jié)果集合。因?yàn)檠貓D表中的連續(xù)列表被直接連接,在連續(xù)列表之間也有直接連接,意味著連接起來(lái)的單一部分查詢的列表通常不是特別大。有多少連續(xù)列表通過部分查詢包含取決于列表間的關(guān)系。通常,將在結(jié)果集合容易處理和消除冗余的方式下確定各種部分查詢。本發(fā)明可以在每個(gè)部分查詢后在結(jié)果列表中提供一個(gè)冗余校驗(yàn)和/或一致性校驗(yàn)。根據(jù)本發(fā)明的實(shí)施例,基于部分查詢的結(jié)果集合產(chǎn)生了沒有冗余和/或不一致的對(duì)象。儲(chǔ)存的結(jié)果在進(jìn)一步部分查詢的結(jié)果的基礎(chǔ)上過濾或清除。比如,如果第一部分查詢返回的在后出現(xiàn)的關(guān)鍵字的值與在初級(jí)查詢中涉及的列表不相關(guān),則對(duì)象中的數(shù)據(jù)與所述結(jié)果相關(guān),并且包含了可以從結(jié)果集合移除的所述關(guān)鍵字。本發(fā)明可以提供的有每次部分查詢涉及一個(gè)列表或互相連接的多個(gè)列表,并且,其中每次部分查詢具有在前建立的列表的關(guān)鍵字的值作為輸入,尤其是鏈接關(guān)鍵字。所述鏈接關(guān)鍵字將所述列表或一個(gè)或多個(gè)所述多個(gè)列表與另外一個(gè)不包含在所述部分查詢中的列表相連。所述鏈接關(guān)鍵字的值可以作為在先部分查詢的結(jié)果尋找。用作輸入的關(guān)鍵字也可以是在先步驟中確定的網(wǎng)關(guān)列表(gatewaytable)的關(guān)鍵字值。第一部分查詢?cè)诰W(wǎng)關(guān)列表中的不同是查詢部分,而它的關(guān)鍵字?jǐn)?shù)值用作輸入。術(shù)語(yǔ)網(wǎng)關(guān)列表將在下面說(shuō)明。本發(fā)明可以提供的有所述圖表包含至少一個(gè)分支節(jié)點(diǎn),該分支節(jié)點(diǎn)與至少兩個(gè)其他節(jié)點(diǎn)相連,并且,其中初級(jí)查詢中涉及的列表與所述分支節(jié)點(diǎn)得出的分離的分支相關(guān),其中,執(zhí)行包括對(duì)應(yīng)所述分支節(jié)點(diǎn)(分支列表)的列表的部分查詢,并且,其中對(duì)一個(gè)或多個(gè)包含在每個(gè)分支中的列表執(zhí)行至少一個(gè)部分查詢,每個(gè)分支具有包含分支列表作為輸入的部分查詢。每個(gè)分支的各自的串行部分查詢可以具有另外的串行部分查詢,其最終包括與初級(jí)查詢相關(guān)的列表。每個(gè)分支的查詢鏈可以被串行或相互并行評(píng)價(jià)。如果一個(gè)分支包括與必要查詢條件,比如,在SQL下WHERE子句中確定的相關(guān)的列表,則可以優(yōu)選地首先評(píng)估這個(gè)分支,并且由此檢索實(shí)際上與滿足所述條件的條目相關(guān)的分支節(jié)點(diǎn)的那些關(guān)鍵字。一般來(lái)說(shuō),這些關(guān)鍵字要比那些在分支節(jié)點(diǎn)被“通過”,即,包括在初級(jí)查詢中,用于第一次的關(guān)鍵字少。因此,包括節(jié)點(diǎn)分支的第一部分查詢結(jié)果將減少到只包含分支節(jié)點(diǎn)的這些關(guān)鍵字。這個(gè)減少了的關(guān)鍵字值集合,將然后用作對(duì)與其他分支相關(guān)的一個(gè)或多個(gè)部分查詢的輸入。如果兩個(gè)或多個(gè)分支與必要查詢條件相關(guān),也可以通過在事先評(píng)價(jià)的所述分支節(jié)點(diǎn)的關(guān)鍵字的基礎(chǔ)上分別評(píng)估每個(gè)分支而進(jìn)行。每個(gè)分支的評(píng)價(jià)將分別作為結(jié)果返回,分支節(jié)點(diǎn)的那些關(guān)鍵字與滿足必要條件的一個(gè)條目相關(guān)。在相關(guān)結(jié)果的順序處理中,只有那些包含了與符合任一條件的條目相關(guān)的分支節(jié)點(diǎn)的關(guān)鍵字的條目將被保留。本發(fā)明可以提供一種評(píng)價(jià)涉及包括至少一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)的關(guān)系數(shù)據(jù)庫(kù)查詢的方法,所述查詢與所述關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表有關(guān),所述方法包括將所述關(guān)系數(shù)據(jù)庫(kù)的一個(gè)列表確定為網(wǎng)關(guān)列表來(lái)評(píng)價(jià)所述查詢,通過所述的RDBMS來(lái)檢索涉及查詢的列表中一個(gè)或多個(gè)條目的所述網(wǎng)關(guān)列表的一個(gè)或多個(gè)唯一的標(biāo)識(shí)符,使用所述RDBMS,從一個(gè)和多個(gè)與所述網(wǎng)關(guān)列表的所述查詢的唯一的標(biāo)識(shí)符相關(guān)的被檢索的一個(gè)或多個(gè)列表檢索信息,并給所述查詢提供結(jié)果。該結(jié)果可以是傳統(tǒng)意義上結(jié)果列表中的包括了與所述檢索信息相關(guān)的網(wǎng)關(guān)列表中查詢到的初級(jí)關(guān)鍵字的一個(gè)結(jié)果集合,或者是包括了可以從這種傳統(tǒng)結(jié)果列表中導(dǎo)出的包含了查詢結(jié)果的對(duì)象。根據(jù)本發(fā)明,選擇“網(wǎng)關(guān)列表”構(gòu)成該查詢?cè)u(píng)價(jià)的起點(diǎn)。在某種意義上,將它作為該查詢?cè)u(píng)價(jià)的入口點(diǎn)或“網(wǎng)關(guān)”。根據(jù)本發(fā)明,在提出所述查詢之前或者在其評(píng)價(jià)過程中,指定列表作為網(wǎng)關(guān)列表,意味著依照這個(gè)列表執(zhí)行檢索一個(gè)或多個(gè)唯一標(biāo)識(shí)符的步驟,當(dāng)然假定這個(gè)列表與查詢中所引用的列表有關(guān)。指定列表作為網(wǎng)關(guān)列表可以預(yù)先執(zhí)行,例如在提交查詢之前指定其作為系統(tǒng)或數(shù)據(jù)庫(kù)設(shè)定的一部分或者通過用戶設(shè)置的方式。然而,本發(fā)明也可以提供在該查詢?cè)u(píng)價(jià)的過程中,根據(jù)合適的標(biāo)準(zhǔn)確定列表作為網(wǎng)關(guān)列表,上述步驟是在關(guān)于指定這個(gè)列表之后執(zhí)行的。在優(yōu)選實(shí)施例中,以上提及的唯一標(biāo)識(shí)符是網(wǎng)關(guān)列表的主碼或唯一索引。然而,本發(fā)明還可以提供所述唯一標(biāo)識(shí)符是不同列的索引的綜合以及在某些情況下列表的行的所有索引的綜合,所述的唯一標(biāo)識(shí)符是通過定義的在關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)中的唯一的標(biāo)識(shí)符。本發(fā)明可以提供,當(dāng)檢索所述網(wǎng)關(guān)列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符時(shí),在第一步驟中檢索了預(yù)定的索引。如果這個(gè)索引或這些索引沒有以唯一方式指定一行列表,唯一標(biāo)識(shí)符就由這些索引根據(jù)適當(dāng)?shù)牟襟E形成。一個(gè)步驟可以是將索引加入到在所述初始步驟中檢索過的索引中,直到所述索引的綜合是用于與列表中將要查詢的條目有關(guān)的行的唯一標(biāo)識(shí)符。在這種情況下,這可以一直持續(xù)到行的所有標(biāo)識(shí)符都包含在該綜合中。這樣形成了唯一標(biāo)識(shí)符,證實(shí)該有關(guān)的行仍與將要查詢的列表中的所述條目相關(guān)。如果不是這樣,該相應(yīng)的標(biāo)識(shí)符被刪除??蛇x擇的,例如可以提供如果在所述初始步驟中已檢索過的索引實(shí)際上指定了網(wǎng)關(guān)列表的多個(gè)行,只繼續(xù)進(jìn)行該第一行,由此接受可能的信息損失。本發(fā)明可以提供所述關(guān)系數(shù)據(jù)庫(kù)包括一個(gè)或多個(gè)預(yù)定的集線器列表,所述查詢與所述關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表有關(guān),其中所述方法包括通過所述RDBMS的方式檢索與將要查詢的列表中的一個(gè)或多個(gè)條目有關(guān)的集線器列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符、使用所述RDBMS、從將要查詢的列表中檢索與所述集線器列表的所述被檢索的唯一標(biāo)識(shí)符有關(guān)的信息并向該查詢提供結(jié)果,例如以結(jié)果集的形式(對(duì)象或結(jié)果列表),其包括與所述被檢索的信息有關(guān)的該集線器的被檢索的主碼。本發(fā)明可以提供基于一個(gè)或多個(gè)數(shù)據(jù)庫(kù)定義了一個(gè)或多個(gè)程序庫(kù)。在此的用意是,將程序庫(kù)定義成列表的匯集,這些列表彼此連接并且它們不需要在同一數(shù)據(jù)庫(kù)中,其中恰好有一個(gè)列表被定義成集線器列表。程序庫(kù)中的所有列表直接或間接地連接到集線器。因此,通過集線器中的條目以及與該集線器的(直接或間接)關(guān)系能訪問程序數(shù)據(jù)庫(kù)中的任何條目。由此,可以認(rèn)為集線器列表代表該程序庫(kù)。也就是說(shuō),本發(fā)明意義上的程序庫(kù)具有用于查詢?cè)u(píng)價(jià)的一個(gè)唯一入口點(diǎn)或網(wǎng)關(guān),實(shí)質(zhì)上即所述單個(gè)集線器。如果程序庫(kù)專門基于一個(gè)數(shù)據(jù)庫(kù)定義的,其可以被看成受限的數(shù)據(jù)庫(kù)。另一方面,如果第二數(shù)據(jù)庫(kù)列表包括在程序庫(kù)中,該程序庫(kù)在某種意義上是數(shù)據(jù)庫(kù)的擴(kuò)展。不同的程序庫(kù)可以享有同一列表。根據(jù)本發(fā)明使用程序庫(kù)的概念,可以以比底層數(shù)據(jù)庫(kù)更高的水平定義概念,其可以適合應(yīng)用的需要或用戶的希望,而不會(huì)影響數(shù)據(jù)庫(kù)的底層結(jié)構(gòu)。使用程序庫(kù)的概念,如果該程序庫(kù)涉及多個(gè)數(shù)據(jù)庫(kù),顯而易見就可以進(jìn)行多個(gè)數(shù)據(jù)庫(kù)中的查詢,而不用在每個(gè)數(shù)據(jù)庫(kù)中具有集線器。在這種情況下,在一個(gè)數(shù)據(jù)庫(kù)中僅有一個(gè)集線器,即程序庫(kù)的集線器(根據(jù)定義其包括在一個(gè)所述數(shù)據(jù)庫(kù)中)。因此,無(wú)論何時(shí)參考數(shù)據(jù)庫(kù)的集線器或網(wǎng)關(guān)列表,應(yīng)當(dāng)理解的是這個(gè)集線器或網(wǎng)關(guān)列表可以是程序庫(kù)的集線器或網(wǎng)關(guān)列表,其中程序庫(kù)定義在所述數(shù)據(jù)庫(kù)上或包括所述數(shù)據(jù)庫(kù)的多數(shù)據(jù)庫(kù)上。由于程序庫(kù)實(shí)質(zhì)上是添加在底層數(shù)據(jù)庫(kù)上的數(shù)據(jù)庫(kù)結(jié)構(gòu),因此應(yīng)當(dāng)理解無(wú)論何時(shí)參考數(shù)據(jù)庫(kù)中的查詢或數(shù)據(jù)庫(kù)中的查詢?cè)u(píng)價(jià),其閱讀須加以必要的變更,除非給出了相反的指示。集線器列表(也稱為“集線器”)實(shí)質(zhì)上是用于在所述數(shù)據(jù)庫(kù)或程序庫(kù)中評(píng)價(jià)查詢的預(yù)定的網(wǎng)關(guān)列表。通常,查詢是用于可搜索的實(shí)體中的相關(guān)條目的整組,即與列表中的唯一識(shí)別的條目相關(guān)的在任何列表中的信息,或一部分這種組。如果該可搜索實(shí)體是關(guān)系數(shù)據(jù)庫(kù),所述整組的相關(guān)條目包括與所述數(shù)據(jù)庫(kù)中所述條目直接或間接連接的所有條目。通過在數(shù)據(jù)庫(kù)上或交叉數(shù)據(jù)庫(kù)定義更高水平的實(shí)體如程序庫(kù)(在上述說(shuō)明中已經(jīng)理解),一整組相關(guān)條目是所述程序庫(kù)中的一組所有條目,其直接或間接地與包含在所述程序庫(kù)中的列表中的唯一被識(shí)別的條目相關(guān)。在許多情況下既不需要也沒有必要提供與列表中的條目相關(guān)的所有信息。在這種情況下,將會(huì)限制到對(duì)列表的某列或某列表的查詢。在SQL語(yǔ)言中,可以使用標(biāo)準(zhǔn)語(yǔ)法進(jìn)行這種選擇。在優(yōu)選實(shí)施例中,列表和/或列表列的選擇將由用戶或管理員來(lái)預(yù)先確定,作為在鍵入指定查詢前用戶界面的部分設(shè)置。如果專門基于一個(gè)單獨(dú)的數(shù)據(jù)庫(kù)確定程序庫(kù),該程序庫(kù)中的一整組相關(guān)條目將是整個(gè)數(shù)據(jù)庫(kù)的一整組相關(guān)條目的部分。這意味著通過在數(shù)據(jù)庫(kù)上定義程序庫(kù),已經(jīng)形成了對(duì)將要查詢的列表及列表列的限制,使得當(dāng)提交參考這個(gè)程序庫(kù)的查詢時(shí),不要查詢?cè)摂?shù)據(jù)庫(kù)的其它列表??墒?,必須注意,程序庫(kù)中的一整組相關(guān)條目可能不完全包含在數(shù)據(jù)庫(kù)的一整組相關(guān)條目中,這是因?yàn)樵摮绦驇?kù)可以包括兩個(gè)或更多不同數(shù)據(jù)庫(kù)的列表。在多數(shù)情況下,用戶鍵入的查詢輸入將由包含在查詢結(jié)果中的查詢條件指定數(shù)據(jù)組成的。為了所討論的目的,將查詢條件考慮為在該查詢中某些元素存在于某些指定的數(shù)據(jù)字段中的條件。對(duì)于關(guān)系數(shù)據(jù)庫(kù),這將意味著某些列表中的某些條目具有指定的值。對(duì)于平面文件,這將意味著某一順序的數(shù)據(jù),例如以字母順序,出現(xiàn)在某一數(shù)據(jù)字段中。盡管這是用戶所理解的,該查詢條件并沒形成可由系統(tǒng)處理的全部查詢。為了返回結(jié)果,系統(tǒng)需要附加信息,該附加信息是關(guān)于哪條涉及所述查詢條件的信息應(yīng)該被返回,例如其它表中的有關(guān)信息。附加信息包含在設(shè)定中,該設(shè)定可以部分或整體由用戶確定?;谶@些查詢條件和預(yù)定的關(guān)于將要查詢的表和列的設(shè)定,系統(tǒng)生成一個(gè)或多個(gè)提交給關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)的查詢命令。查詢條件通常將條件加于將要選定的列的行。在這樣情況下,依照本發(fā)明的方法將首先尋找滿足以查詢條件表示的條件的條目,然后返回一個(gè)或多個(gè)集線器索引,或在優(yōu)先實(shí)施例中集線器表的唯一標(biāo)識(shí)符。本發(fā)明也可以提供在查詢中將要檢索的列中的所有條目,在這種情況下該查詢將檢索集線器表的關(guān)于某一列的所有的唯一標(biāo)識(shí)符。本發(fā)明可以提供所述查詢,用于一個(gè)或多個(gè)數(shù)據(jù)庫(kù)或程序庫(kù)的相關(guān)條目的完整組或用于所述的關(guān)系數(shù)據(jù)庫(kù)的這樣完整組的預(yù)定部分,并且所述查詢包括涉及所述數(shù)據(jù)庫(kù)或程序庫(kù)的一個(gè)或多個(gè)查詢條件,其中所述方法包括—識(shí)別涉及查詢條件中指定條目的網(wǎng)關(guān)表,—識(shí)別涉及符合查詢條件的所述的條目的所述網(wǎng)關(guān)表的一個(gè)或多個(gè)唯一的標(biāo)識(shí)符,—檢索相關(guān)條目的完整集合或部分集合,其中該部分集合涉及所述的網(wǎng)關(guān)表的唯一的標(biāo)識(shí)符。在多個(gè)實(shí)例中,查詢將涉及不同的實(shí)體,例如涉及兩個(gè)數(shù)據(jù)庫(kù)或兩個(gè)程序庫(kù)、數(shù)據(jù)庫(kù)或程序庫(kù)和平面文件或多個(gè)數(shù)據(jù)庫(kù)、程序庫(kù)和/或平面文件。同樣地,也可以是查詢涉及一個(gè)數(shù)據(jù)庫(kù)中的表,表涉及相同數(shù)據(jù)庫(kù)的不同集線器。在所有這樣的實(shí)例中,依照其中的優(yōu)選實(shí)施例,本發(fā)明提供的那些涉及集線器或者在不同于程序庫(kù)或關(guān)系數(shù)據(jù)庫(kù)的實(shí)體的情況下涉及所述的第二實(shí)體的一個(gè)或多個(gè)子實(shí)體的查詢的部分將會(huì)被分別處理,并且通過利用集線器唯一的標(biāo)識(shí)符之間的關(guān)系,例如集線器的主碼和其它實(shí)體的唯一的標(biāo)識(shí)符,以及在這種情況下多個(gè)這樣的標(biāo)識(shí)符之間的關(guān)系將部分搜索結(jié)果結(jié)合在一起。簡(jiǎn)單的情況下,確定哪個(gè)集線器的唯一標(biāo)識(shí)符涉及另一集線器的其它標(biāo)識(shí)符或者涉及哪個(gè)標(biāo)識(shí)符,并且將相關(guān)的兩部分的查詢的結(jié)果結(jié)合在一起。本發(fā)明可以提供的所述查詢包括至少一個(gè)位于所述的數(shù)據(jù)庫(kù)外部或位于包括在所述查詢中的程序庫(kù)外的第二可搜索實(shí)體,所述第二實(shí)體包括子實(shí)體,每個(gè)子實(shí)體具有至少一個(gè)標(biāo)識(shí)符,用于唯一識(shí)別所述的子實(shí)體,并且其中所述方法包括檢索所述第二可搜索實(shí)體的子實(shí)體的一個(gè)或多個(gè)標(biāo)識(shí)符,所述的第二可搜索實(shí)體與所述的查詢相關(guān),特別是與所述查詢的查詢條件相關(guān),檢索所述關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù)的集線器的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,例如主碼,所述關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù)與所述子實(shí)體的所述被檢索的標(biāo)識(shí)符相關(guān),檢索相關(guān)條目的集合,特別是相關(guān)條目的完整集合,其涉及所述集線器的所述的被檢索的唯一的標(biāo)識(shí)符,從所述的子實(shí)體檢索由所述第二實(shí)體中被檢索的標(biāo)識(shí)符識(shí)別的信息,將來(lái)自于所述的第二可搜索實(shí)體和所述的數(shù)據(jù)庫(kù)或程序庫(kù)的檢索信息合并為結(jié)果集。另外或可選擇地,本發(fā)明可以提供的所述查詢包括至少一個(gè)位于所述的數(shù)據(jù)庫(kù)外部或位于包括在所述查詢中的程序庫(kù)外的第二可搜索實(shí)體,并且包括子實(shí)體,每個(gè)子實(shí)體具有至少一個(gè)唯一指定所述子實(shí)體的標(biāo)識(shí)符,并且其中所述方法包括檢索一個(gè)或多個(gè)與條目相關(guān)的所述的數(shù)據(jù)庫(kù)或程序庫(kù)的集線器的唯一標(biāo)識(shí)符,所述的條目與所述的查詢相關(guān),特別是與所述查詢的查詢條件相關(guān),檢索所述第二可搜索實(shí)體的子實(shí)體的標(biāo)識(shí)符,所述的第二可搜索實(shí)體與所述的集線器的所述的檢索唯一標(biāo)識(shí)符相關(guān),檢索相關(guān)條目的集合或其與所述的集線器的所述的檢索唯一標(biāo)識(shí)符相關(guān)的部分,從所述的子實(shí)體檢索由在所述的第二可搜索實(shí)體中被檢索的標(biāo)識(shí)符識(shí)別的信息,將來(lái)自于所述的第二實(shí)體和所述的數(shù)據(jù)庫(kù)或程序庫(kù)的檢索信息合并為結(jié)果。本申請(qǐng)中的可搜索實(shí)體的意義可以是數(shù)據(jù)庫(kù)、程序庫(kù),其中的標(biāo)識(shí)符可以是主碼或集線器表的其它唯一標(biāo)識(shí)符。本發(fā)明可以提供的所述的第二可搜索實(shí)體是第二關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù),所述的標(biāo)識(shí)符是主碼或所述的關(guān)系數(shù)據(jù)庫(kù)或第二程序庫(kù)中的集線器表的另一唯一標(biāo)識(shí)符,所述的子實(shí)體是表、連接表或其部分的結(jié)合。本發(fā)明可以提供的所述的第二可搜索實(shí)體是平面文件的匯集,在該匯集中子實(shí)體作為平面文件。檢索涉及第二實(shí)體的檢索標(biāo)識(shí)符和/或集線器的檢索唯一標(biāo)識(shí)符的信息的步驟可以在檢索第二實(shí)體的標(biāo)識(shí)符和唯一標(biāo)識(shí)符或集線器的標(biāo)識(shí)符之間的關(guān)系步驟之前或之后進(jìn)行。然而,在本發(fā)明的優(yōu)選實(shí)施例中,首先對(duì)涉及查詢條件的一個(gè)實(shí)體的標(biāo)識(shí)符進(jìn)行評(píng)價(jià),然后檢索其它實(shí)體的相關(guān)標(biāo)識(shí)符,并將其它實(shí)體的這些標(biāo)識(shí)符用作檢索其它可搜索實(shí)體中的相關(guān)信息的起點(diǎn)。如果查詢條件既涉及數(shù)據(jù)庫(kù)或程序庫(kù)又涉及第二可搜索實(shí)體,優(yōu)選首先對(duì)第二實(shí)體的標(biāo)識(shí)符和涉及查詢條件的集線器的唯一標(biāo)識(shí)符進(jìn)行檢索,然后將所述的第二實(shí)體的標(biāo)識(shí)符和所述的集線器的標(biāo)識(shí)符建立聯(lián)合,所述的集線器的標(biāo)識(shí)符涉及所有的查詢條件,也就是,兩種條件既涉及關(guān)于數(shù)據(jù)庫(kù)或程序庫(kù)的條件又涉及第二可搜索實(shí)體,然后只檢索那些與所有查詢條件一致的附加信息。本發(fā)明可以提供的所述的檢索所述的第二可搜索實(shí)體的標(biāo)識(shí)符和所述的數(shù)據(jù)庫(kù)或程序庫(kù)的唯一標(biāo)識(shí)符之間關(guān)系的步驟包括解除集線器的唯一標(biāo)識(shí)符和所述的第二可搜索實(shí)體的標(biāo)識(shí)符的結(jié)合的步驟,其中第二可搜索實(shí)體的標(biāo)識(shí)符與查詢條件不一致,以及只檢索涉及標(biāo)識(shí)符的附加信息的步驟,該標(biāo)識(shí)符包括在與選定的參數(shù)一致的標(biāo)識(shí)符的結(jié)合中。本發(fā)明可以提供該查詢涉及列表,該列表與至少兩個(gè)集線器表有關(guān),其中所述的方法包括—檢索集線器表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,其在涉及各自的集線器的表中涉及滿足查詢條件的條目,—檢索其它各自的集線器的唯一標(biāo)識(shí)符,其涉及所述的關(guān)于滿足所述的查詢條件的條目的所述檢索唯一標(biāo)識(shí)符,—檢索相關(guān)條目的集合或依照該查詢其與所述的集線器的所述的檢索唯一標(biāo)識(shí)符相關(guān)的部分,—將涉及所述集線器的檢索信息合并為結(jié)果。檢索其它各自的集線器的唯一標(biāo)識(shí)符可以包括在第一步檢索涉及查詢條件的檢索唯一標(biāo)識(shí)符中找到的唯一標(biāo)識(shí)符。在這樣情況下,無(wú)論唯一標(biāo)識(shí)符的結(jié)合是否滿足查詢條件,都會(huì)執(zhí)行一致性檢查。本發(fā)明可以提供所述的檢索集線器列表的唯一標(biāo)識(shí)符之間關(guān)系的所述步驟包括解除集線器的與查詢條件不一致的唯一標(biāo)識(shí)符的結(jié)合的步驟,以及只檢索涉及至少一個(gè)集線器的至少一個(gè)唯一標(biāo)識(shí)符的這種附加信息的步驟,該標(biāo)識(shí)符包括在與搜索的參數(shù)一致的唯一標(biāo)識(shí)符的結(jié)合中。上述的兩個(gè)集線器中,至少一個(gè)可以是程序庫(kù)的集線器或兩個(gè)集線器都可以是程序庫(kù)的集線器。也可以設(shè)置為所述的兩個(gè)集線器是在相同的關(guān)系數(shù)據(jù)庫(kù)里的集線器。這些可以,但不一定是限定在這個(gè)數(shù)據(jù)庫(kù)中的兩個(gè)程序庫(kù)的集線器。一個(gè)或兩個(gè)也可以是不涉及程序庫(kù)的集線器。本發(fā)明也可以提供在執(zhí)行所述的涉及條目的集合或其中的部分的每個(gè)集線器的部分查詢之后,各自的結(jié)果連接,并隨后檢查與查詢條件的一致性,例如檢查冗余。本發(fā)明也可以提供為每個(gè)部分結(jié)果創(chuàng)造對(duì)象,并且將這些結(jié)果進(jìn)一步處理來(lái)產(chǎn)生查詢結(jié)果。本發(fā)明可以提供的檢索可搜索實(shí)體的標(biāo)識(shí)符的步驟是基于所述的實(shí)體的標(biāo)識(shí)符之間預(yù)先設(shè)定的關(guān)系而執(zhí)行的,其中所述的標(biāo)識(shí)符與可搜索實(shí)體的另一個(gè)標(biāo)識(shí)符有關(guān)。本發(fā)明也可以提供的檢索可搜索實(shí)體的標(biāo)識(shí)符的步驟是在執(zhí)行查詢期間而動(dòng)態(tài)執(zhí)行的,其中所述的標(biāo)識(shí)符與可搜索實(shí)體的另一個(gè)標(biāo)識(shí)符有關(guān)。本發(fā)明也可以提供所述的步驟是部分基于所述的實(shí)體的標(biāo)識(shí)符之間預(yù)先設(shè)定的關(guān)系和部分動(dòng)態(tài)執(zhí)行的。特別地,數(shù)據(jù)庫(kù)的集線器和另一可搜索實(shí)體的標(biāo)識(shí)符之間的關(guān)系可以基于靜態(tài)鏈接或“匆忙”創(chuàng)建的動(dòng)態(tài)鏈接而建立。這樣,分支列表與集線器列表相似,因?yàn)槎鄠€(gè)查詢是來(lái)源于其中的。事實(shí)上,在大多數(shù)情況下,集線器列表也是分支列表,典型的實(shí)例就是數(shù)據(jù)庫(kù),其中圖表表示的數(shù)據(jù)庫(kù)是星形的,集線器在星形的中心。因此,評(píng)價(jià)來(lái)源于分支節(jié)點(diǎn)的分支的方法可以與評(píng)價(jià)來(lái)源于同一集線器的相異圖表的方法相似。然而,應(yīng)當(dāng)記住集線器列表和分支列表的確定是不同的。在確定集線器列表和分支列表之間的差別是集線器列表是用于評(píng)價(jià)基本查詢的預(yù)先確定的入口點(diǎn),它不一定標(biāo)注一個(gè)分支,而節(jié)點(diǎn)列表也可以是在評(píng)價(jià)初始查詢中確定的列表。依照本發(fā)明的方法包括步驟—識(shí)別涉及初始查詢中引用的列表的單個(gè)或多個(gè)集線器,—在所述數(shù)據(jù)庫(kù)的圖表表示中,確定至少用于一個(gè)、優(yōu)選確定用于所有集線器的、將所述集線器連接到所有列表的最佳圖表,其中所述的列表與所述的集線器相關(guān),并且其在初始查詢中被引用,—執(zhí)行關(guān)于所述最佳圖表的查詢??梢蕴峁┰u(píng)價(jià)關(guān)于所述的圖表的所述查詢,包括關(guān)于所述的最佳圖表相互串行的列表的串行部分查詢被執(zhí)行。上面引用的最佳圖表是由最優(yōu)化算法確定的圖表。用于找到連接給定點(diǎn)的最佳圖表的最優(yōu)化算法,諸如Dijkstra算法在本領(lǐng)域是熟知的。該圖表優(yōu)先地對(duì)速度進(jìn)行優(yōu)化,以此速度可以解決部分查詢的順序。進(jìn)行的一個(gè)方法是給圖表中的節(jié)點(diǎn)之間的每個(gè)鏈接分配權(quán)重并改變初始圖表直到累加權(quán)重被優(yōu)化。該權(quán)重可以作為度規(guī)來(lái)實(shí)現(xiàn),并且因此依照該度規(guī)來(lái)尋找“最短的”路徑。利用節(jié)點(diǎn)圖來(lái)定制查詢進(jìn)程的概念以及將大查詢分裂為若干較小的串行查詢的概念,特別是接續(xù)的概念,并不局限于對(duì)包括預(yù)先確定的集線器列表和涉及所述集線器的列表的查詢的評(píng)價(jià)。事實(shí)上,該概念可以不依賴集線器的概念來(lái)應(yīng)用,例如因?yàn)閷?duì)于包括關(guān)系數(shù)據(jù)庫(kù)的查詢來(lái)講,可以確定網(wǎng)關(guān)列表,如上所述該網(wǎng)關(guān)列表形成了評(píng)價(jià)該查詢的起點(diǎn),并且由此建立和評(píng)價(jià)到包括在該查詢中的列表的路徑和圖表。該網(wǎng)關(guān)列表并不一定是靜態(tài)的或預(yù)先確定的,例如集線器,但其也可以就具體的查詢來(lái)選擇,甚至在以連接該網(wǎng)關(guān)列表和該查詢中引用的列表的圖表關(guān)于評(píng)價(jià)進(jìn)程速度被優(yōu)化的方式(例如上述的算法)評(píng)價(jià)的進(jìn)程中。例如,該概念的進(jìn)一步的應(yīng)用可以是兩個(gè)數(shù)據(jù)庫(kù)鏈接之間的評(píng)價(jià)。依照本發(fā)明的實(shí)施例,兩個(gè)數(shù)據(jù)庫(kù)之間的關(guān)系始終是通過這兩個(gè)數(shù)據(jù)庫(kù)的集線器建立的。為了建立這樣的關(guān)系,這兩個(gè)數(shù)據(jù)庫(kù)的兩個(gè)列表(以后稱為“鏈接列表”)之間存在的鏈接可以用于在該兩個(gè)數(shù)據(jù)庫(kù)的兩個(gè)集線器之間提供動(dòng)態(tài)鏈接。從第一數(shù)據(jù)庫(kù)集線器列表和該集線器的某個(gè)唯一標(biāo)識(shí)符開始,找到第一數(shù)據(jù)庫(kù)中的鏈接列表,并且所述的集線器列表到鏈接列表之間的關(guān)系建立,例如利用該數(shù)據(jù)庫(kù)的節(jié)點(diǎn)圖。所述的鏈接列表中的涉及集線器列表的所述的唯一標(biāo)識(shí)符的條目和第二數(shù)據(jù)庫(kù)中的鏈接列表中的相關(guān)條目被確定。隨后,第二數(shù)據(jù)庫(kù)的集線器的涉及所述的第二鏈接列表的條目的唯一標(biāo)識(shí)符被確定。盡管該步驟可以預(yù)先執(zhí)行,例如對(duì)于所包括的集線器的主碼,其中這樣找到的集線器的主碼之間的關(guān)系可以靜態(tài)地預(yù)先存儲(chǔ),目前在評(píng)價(jià)查詢中優(yōu)選地動(dòng)態(tài)執(zhí)行這些步驟。節(jié)點(diǎn)圖中的圖表概念和接續(xù)概念可以應(yīng)用到動(dòng)態(tài)執(zhí)行這樣的鏈接中。如以前所闡述的,可以建立通過鏈接列表連接兩個(gè)集線器的圖表(其中不同數(shù)據(jù)庫(kù)的兩個(gè)鏈接列表之間的鏈接象數(shù)據(jù)庫(kù)中的正常鏈接來(lái)處理)并且執(zhí)行并評(píng)價(jià)多個(gè)串行查詢,其以主碼的確定值或第一集線器的另一個(gè)唯一標(biāo)識(shí)符開始,最終通向第二集線器。為了完整性,應(yīng)該提及的是也可以使用混合型的鏈接,其中部分步驟預(yù)先執(zhí)行并且部分動(dòng)態(tài)執(zhí)行。本發(fā)明可以提供的檢索所述的網(wǎng)關(guān)列表的唯一標(biāo)識(shí)符的所述步驟包括—確定初始查詢中引用的列表,—在所述數(shù)據(jù)庫(kù)的圖解表示中,確定連接所述列表的網(wǎng)關(guān)列表,其中列表被描繪成節(jié)點(diǎn),列表之間的鏈路描繪成節(jié)點(diǎn)之間的連線,—查詢所述的數(shù)據(jù)庫(kù)中的網(wǎng)關(guān)列表的涉及所述列表的一個(gè)或多個(gè)索引,特別是主碼。本發(fā)明可以提供的所述的列表的一個(gè)或多個(gè)特定的條目由查詢條件包含,并且查詢所述的數(shù)據(jù)庫(kù)中的網(wǎng)關(guān)列表的涉及所述條目的一個(gè)或多個(gè)索引。本發(fā)明可以提供在所述的圖解表示中,建立從所述列表到所述網(wǎng)關(guān)列表的路徑,以及對(duì)所述索引的查詢的執(zhí)行是通過查詢與所述的圖表中的節(jié)點(diǎn)相對(duì)應(yīng)的所有列表,來(lái)尋找所述的圖表中列表之間的鏈接關(guān)鍵字的值,這是從查詢中所引用的列表和例如其某些條目開始。本發(fā)明可以提供依照預(yù)先確定的度規(guī),所述的路徑是作為所述的列表和所述的網(wǎng)關(guān)列表之間最短的路徑選定的。本發(fā)明可以提供所述的路徑是一部分或是等于用于確定部分查詢的圖表,所述的部分查詢用于從涉及所述的網(wǎng)關(guān)列表的列表中檢索附加信息。本發(fā)明可以提供如果涉及網(wǎng)關(guān)列表的同一行的且由所述的查詢數(shù)據(jù)庫(kù)步驟確定的索引或一組索引沒有唯一識(shí)別所述的網(wǎng)關(guān)列表的行,網(wǎng)關(guān)列表的一行或多行與所述的索引相關(guān)唯一標(biāo)識(shí)符被確定。本發(fā)明可以提供用于評(píng)價(jià)初始查詢的部分查詢至少部分并且優(yōu)選地是完全在所述的評(píng)價(jià)進(jìn)程中動(dòng)態(tài)生成。本發(fā)明可以提供所述的結(jié)果集由面向?qū)ο蟮谋硎痉椒▉?lái)表示。本發(fā)明可以提供所述的初始化查詢的結(jié)果表達(dá)為通過對(duì)象關(guān)系映射得來(lái)的對(duì)象。在該優(yōu)選實(shí)施例中,在評(píng)價(jià)初始化查詢的進(jìn)程中每個(gè)部分查詢執(zhí)行后,通過對(duì)象關(guān)系映射生成對(duì)象,并且表示所述的初始化查詢結(jié)果的對(duì)象來(lái)源于與部分查詢有關(guān)的這些對(duì)象。在一個(gè)實(shí)施例中,由部分查詢結(jié)果生成的這個(gè)或多個(gè)對(duì)象表述在XML中。本發(fā)明可以提供對(duì)所述的查詢的評(píng)價(jià)是在對(duì)象管理器的控制下執(zhí)行的,所述的對(duì)象管理器包括一組由計(jì)算機(jī)系統(tǒng)執(zhí)行的命令。本發(fā)明可以提供所述的對(duì)象管理器處理對(duì)象,其中該對(duì)象代表將被查詢的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)的概要或部分概要。本發(fā)明可以提供所述的對(duì)象管理器確定動(dòng)態(tài)生成并初始化的類。本發(fā)明也可以提供用于控制對(duì)包含有關(guān)系數(shù)據(jù)庫(kù)的查詢進(jìn)行評(píng)價(jià)的數(shù)據(jù)處理系統(tǒng),其中所述的關(guān)系數(shù)據(jù)庫(kù)包括關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),所述的查詢涉及所述的關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表,該數(shù)據(jù)處理系統(tǒng)包括—用于確定列表用作評(píng)價(jià)所述查詢的網(wǎng)關(guān)列表的裝置,—用于在將被查詢的列表和網(wǎng)關(guān)列表之間建立關(guān)系的裝置,—用于使RDBMS檢索所述的網(wǎng)關(guān)列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符的裝置,其中所述的唯一標(biāo)識(shí)符涉及將被查詢的列表中的一個(gè)或多個(gè)條目,—用于使RDBMS從將被查詢的列表中檢索涉及所述條目的所述唯一標(biāo)識(shí)符的信息的裝置,—用于向所述的查詢提供或使得被提供結(jié)果的裝置,其可以是結(jié)果集或結(jié)果對(duì)象,它包括涉及所述的檢索信息的網(wǎng)關(guān)列表的檢索到的主碼。所述的數(shù)據(jù)處理系統(tǒng)包括用于將所述的關(guān)系數(shù)據(jù)庫(kù)中的某列表設(shè)定為預(yù)先確定的網(wǎng)關(guān)列表的裝置,網(wǎng)關(guān)列表用于將被評(píng)價(jià)的查詢,依照本發(fā)明的數(shù)據(jù)處理系統(tǒng),在進(jìn)一步的實(shí)施例中,可以包括用于通過數(shù)據(jù)處理系統(tǒng)控制如前所述的方法的執(zhí)行的裝置。本發(fā)明也提供了計(jì)算機(jī)程序和包括這樣程序的計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì),其中使得當(dāng)計(jì)算機(jī)程序在計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)上執(zhí)行時(shí),計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)來(lái)執(zhí)行以前所述的方法的步驟。根據(jù)本發(fā)明的一個(gè)重要方面,依照本發(fā)明的方法使用標(biāo)準(zhǔn)的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),并且確定該關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)之外的所有查詢操作。這帶來(lái)了大范圍的靈活性,并且事實(shí)上生成了可不依賴基礎(chǔ)系統(tǒng)而獨(dú)立應(yīng)用的平臺(tái)。令人驚訝地,如果涉及到具有多個(gè)1∶N關(guān)系的列表,據(jù)發(fā)現(xiàn)依照本發(fā)明的方法,特別是評(píng)價(jià)依照?qǐng)D表和接續(xù)概念的查詢,可以使速度顯著上升,可以提升50%甚至更高,使得組合劇增開始出現(xiàn)。其它發(fā)明的進(jìn)一步的特征和優(yōu)點(diǎn)將從以下對(duì)本發(fā)明實(shí)施例聯(lián)系相應(yīng)附圖所進(jìn)行的描述中變得顯而易見。圖1表示具體實(shí)例的解釋中所參考的單個(gè)數(shù)據(jù)庫(kù)的節(jié)點(diǎn)圖。圖2A至2E表示根據(jù)圖1的數(shù)據(jù)庫(kù)的列表。圖3表示第二實(shí)例的節(jié)點(diǎn)圖表。具體實(shí)施例方式根據(jù)本發(fā)明的一個(gè)實(shí)施例,首先對(duì)將用于實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)庫(kù)進(jìn)行分析。實(shí)質(zhì)上即匯集關(guān)于該數(shù)據(jù)庫(kù)列表、列、類型、大小、其索引以及碼的信息。用于匯集這些信息的分析工具在現(xiàn)有技術(shù)中就可以得到??梢允褂美鏙DBC(JAVA數(shù)據(jù)庫(kù)連接)或任何其它的RDBMSAPI來(lái)匯集這些信息。從這些信息中,使用列表之間的碼關(guān)系以最小生成樹的形式構(gòu)建數(shù)據(jù)庫(kù)的節(jié)點(diǎn)圖表。實(shí)質(zhì)上,對(duì)于任何列表,都期待有將這個(gè)列表和其它列表相連接的關(guān)鍵字(鏈接關(guān)鍵字),并且如果存在這樣的鏈接關(guān)鍵字,引入代表這兩個(gè)列表的兩個(gè)節(jié)點(diǎn)之間的邊來(lái)表示兩個(gè)列表。必須理解,沒有畫實(shí)際的曲線圖,而是構(gòu)建了映射這個(gè)曲線圖的目標(biāo)結(jié)構(gòu)。為了便于解釋,在此引用該曲線圖或該曲線圖的元素,可以理解這些引用意味著與各個(gè)元素、關(guān)系或?qū)ο鄳?yīng)的數(shù)據(jù)結(jié)構(gòu)的操作有關(guān)。通常,給節(jié)點(diǎn)和邊分配某些屬性。例如,可以給以后要用來(lái)確定最優(yōu)曲線圖的每個(gè)邊分配權(quán)重,可以分配表示邊代表1∶1、1∶N、N∶N或N∶1關(guān)系的屬性,或者可以分配代表索引的存在的屬性,特別是兩個(gè)列表之間的關(guān)系,僅提出幾個(gè)實(shí)例。已分配給節(jié)點(diǎn)(列表)的屬性例如可以是列的名稱、它們的大小、所其它相關(guān)信息。在這一點(diǎn)上,還可以手工添加或改變列表之間的關(guān)系,其中在列表之間需要有聯(lián)系。例如,如果存在列出科學(xué)出版物的作者的列表和有關(guān)聯(lián)系方式如E-mail地址的列表,該列表與作者列表無(wú)關(guān)或不直接有關(guān),可以手工插入在其中一個(gè)列表中的作者姓名和另一個(gè)列表中的他或她的E-mail地址之間的關(guān)系。這個(gè)關(guān)系可以作為該數(shù)據(jù)庫(kù)的改進(jìn)而實(shí)現(xiàn)。然而,還可以在數(shù)據(jù)庫(kù)外作為兩個(gè)列表之間的外部鏈接來(lái)實(shí)現(xiàn)。這個(gè)步驟的結(jié)果是代表列表模式的對(duì)象。這個(gè)模式對(duì)象被存儲(chǔ)是為了進(jìn)一步使用。在此所描述的實(shí)施例使用SRS環(huán)境,在這個(gè)環(huán)境下,這個(gè)模式對(duì)象將被存儲(chǔ)為SRS對(duì)象管理器對(duì)象,例如通過SRSJava應(yīng)用程序界面(API)。該對(duì)象管理器是一種控制SRS下查詢?cè)u(píng)價(jià)的工具。SRS查詢語(yǔ)言的具體情況可以在例如http://srs.ebi.ac.uk中找到。作為進(jìn)一步的步驟,確定集線器列表,其作為在查詢的評(píng)價(jià)中的向列表的入口點(diǎn)或網(wǎng)關(guān)。對(duì)集線器的要求是它包括唯一的標(biāo)識(shí)符,即列表中的每個(gè)數(shù)據(jù)集可以通過標(biāo)識(shí)符來(lái)唯一識(shí)別。優(yōu)選地,唯一的索引或主碼用作唯一標(biāo)識(shí)符,但是例如還可以使用索引的唯一組合。事實(shí)上存在兩個(gè)使列表定義為集線器的理由。其中一個(gè)理由是源自用戶范圍并尋求提供查詢中對(duì)用戶有指導(dǎo)意義的焦點(diǎn)。另一個(gè)理由是更技術(shù)性的,并且尋求以可以更有效執(zhí)行查詢的方式來(lái)定義該列表。因而,集線器列表可以是表示感興趣中心點(diǎn)的信息的列表。從技術(shù)角度看,集線器列表應(yīng)該是可能被查詢的列表,并且其優(yōu)選地直接與其它列表相鏈接,其它列表可能被查詢或涉及某種程度上其查詢包括集線器的這種列表,并且這些列表可以由RDBMS最快地評(píng)價(jià)。例如,考慮建立統(tǒng)計(jì)表,其列表在關(guān)系數(shù)據(jù)庫(kù)中非常頻繁地被查詢,并且列表的綜合經(jīng)常被查詢到并相應(yīng)地選擇集線器列表。這兩個(gè)理由可以經(jīng)常相互調(diào)和,因?yàn)榻?jīng)常被查詢到的列表通常也是用戶主要關(guān)心的列表。關(guān)心的焦點(diǎn)可以根據(jù)用戶而轉(zhuǎn)移。然而一個(gè)用戶可能主要關(guān)心科學(xué)申請(qǐng)的作者,另一個(gè)用戶可能主要對(duì)科學(xué)申請(qǐng)中的某個(gè)關(guān)鍵詞感興趣,并且不關(guān)心或者只是稍微關(guān)心作者。因此,本發(fā)明可以使得用戶或數(shù)據(jù)庫(kù)管理員能夠定義一個(gè)集線器或多個(gè)集線器作為用戶設(shè)定的部分,或者甚至當(dāng)鍵入查詢時(shí)。應(yīng)當(dāng)注意不止一個(gè)集線器可以限定在單個(gè)數(shù)據(jù)庫(kù)中。這可能在大數(shù)據(jù)庫(kù)中有用,因?yàn)樗试S形成更小的子結(jié)構(gòu),例如程序庫(kù),特別是在大的數(shù)據(jù)集的大模式情況下,其可以用來(lái)提高性能。另一個(gè)可以使得在數(shù)據(jù)庫(kù)中確定多個(gè)集線器的原因是可以以這種方式在數(shù)據(jù)庫(kù)中確定列表簇,據(jù)知該列表是聯(lián)合查詢的,或者就不同的簇而言,其不是經(jīng)常相互聯(lián)合查詢的。這以后將限制在許多情況下將被查詢的集線器和列表之間的可能路徑的數(shù)量,并由此對(duì)應(yīng)用速度作出貢獻(xiàn)。集線器的定義在SRS下還具有進(jìn)一步的目的。通過選擇集線器列表和唯一標(biāo)識(shí)符(例如主碼)作為進(jìn)入數(shù)據(jù)庫(kù)的入口點(diǎn)的標(biāo)識(shí)符,得到可以被視作是圍繞“集線器列”集中的數(shù)據(jù)結(jié)構(gòu),意味著通過定義明確的標(biāo)識(shí)符訪問數(shù)據(jù)。這與平面文件具有相似性,并由此允許將已經(jīng)研發(fā)用于平面文件的SRS程序用于關(guān)系數(shù)據(jù)庫(kù)。當(dāng)用戶輸入查詢時(shí),他通常僅指定他感興趣的關(guān)鍵詞,并且得到與所述關(guān)鍵詞有關(guān)的所有信息。這些信息可能是完整的數(shù)據(jù)庫(kù)條目。本發(fā)明的實(shí)施例可以提供,用戶可以在繪成曲線圖的用戶界面上指定他感興趣的數(shù)據(jù)庫(kù)的列表或列。例如這可以通過提供用戶用于表示感興趣的信息的選擇框而實(shí)現(xiàn)。關(guān)于這些需要的信息的范圍的另外的信息可以在系統(tǒng)設(shè)置中實(shí)現(xiàn),該系統(tǒng)設(shè)置可以或不可以由用戶改變。當(dāng)用戶在查詢中鍵入信息時(shí),根據(jù)該實(shí)例的該系統(tǒng)以兩步過程工作,與用于檢索信息的SRS下的標(biāo)準(zhǔn)程序類似。在第一步中,識(shí)別一個(gè)集線器(或多個(gè)集線器)的唯一標(biāo)識(shí)符,這些標(biāo)識(shí)符與關(guān)于查詢條件的列表有關(guān),例如含有用戶需要的關(guān)鍵詞的列表。在第二步中,檢索與查詢條件有關(guān)的所有信息,直到這些信息在系統(tǒng)設(shè)置中或由用戶輸入而指定。更確切的,在第一步中用分析程序執(zhí)行查詢分析,例如用ICARUS分析程序。該分析得出的結(jié)果可以是二進(jìn)制樹形網(wǎng)絡(luò),其代表該查詢的分級(jí)分析,并以較更高級(jí)指定該數(shù)據(jù)庫(kù),以較低級(jí)指定標(biāo)識(shí)符字段“作者”、和甚至以更低級(jí)指定需要的關(guān)鍵詞如“Smith”。該系統(tǒng)現(xiàn)在將這個(gè)查詢映射到在該系統(tǒng)中存儲(chǔ)的數(shù)據(jù)庫(kù)的節(jié)點(diǎn)曲線圖中。為了與上述實(shí)例保持一致,該系統(tǒng)證實(shí)是否在指定的數(shù)據(jù)庫(kù)中存在唯一識(shí)別作者和列的列表,其中應(yīng)當(dāng)出現(xiàn)作者的姓名。如果發(fā)現(xiàn)這種列表,該系統(tǒng)證實(shí)集線器與所述節(jié)點(diǎn)曲線圖中的這個(gè)列表是否有關(guān),并證實(shí)究竟是哪個(gè)集線器與這個(gè)列表有關(guān)。然后它生成對(duì)集線器列表的唯一標(biāo)識(shí)符如主碼的查詢,該標(biāo)識(shí)符與所述列表中的符合查詢條件的條目有關(guān)。由于已預(yù)先確立該集線器與該輸入查詢中的列表通過至少一個(gè)路徑相關(guān),因此應(yīng)當(dāng)存在集線器的與該條目相關(guān)的至少一個(gè)唯一標(biāo)識(shí)符。在特定實(shí)施例中,該系統(tǒng)在所述節(jié)點(diǎn)曲線圖中確立了從將要被查詢的列表到集線器列表的路徑,并且在該集線器的唯一標(biāo)識(shí)符的查詢中,還查詢了該路徑中與該查詢條件所指定的條目相關(guān)的中間列表(節(jié)點(diǎn))的碼。這樣,確立了與條目相關(guān)的整組關(guān)系,該條目符合查詢條件、且包括集線器的唯一標(biāo)識(shí)符。假定在該查詢中僅存在一個(gè)集線器和一個(gè)數(shù)據(jù)庫(kù),那么現(xiàn)在該系統(tǒng)在所述節(jié)點(diǎn)曲線圖中確立了曲線圖或樹,所述節(jié)點(diǎn)曲線圖具有作為其起點(diǎn)的集線器列表,在該查詢中參考的所有列表作為節(jié)點(diǎn)出現(xiàn)。該曲線圖優(yōu)選為沒有任何環(huán)路的曲線圖,即從集線器列表到在該查詢中所參考的任何列表僅有一個(gè)路徑。該曲線圖可以具有幾個(gè)源自集線器的支路,每個(gè)支路可以進(jìn)一步包含支路。理論上,該曲線圖在查詢中所參考的列表之間的部分應(yīng)該是最小化的??墒?,這并不是在能繪成曲線圖意義上的理解,而是在曲線圖上所定義的并用于最優(yōu)算法的度規(guī)意義上的理解。例如,對(duì)應(yīng)于包括多個(gè)中間列表的曲線圖的查詢?cè)u(píng)價(jià)可以比對(duì)應(yīng)于一個(gè)單獨(dú)的中間列表的曲線圖的查詢?cè)u(píng)價(jià)更快速,其中包括多個(gè)中間列表的曲線圖在其列表之間具有1∶1的關(guān)系,只具有一個(gè)單獨(dú)的中間列表的曲線圖的中間列表與沿著該曲線圖的它的相鄰的列表具有1∶N的關(guān)系,因此在有關(guān)度規(guī)的意義上該查詢?cè)u(píng)價(jià)被“縮短”了。已確立最優(yōu)曲線圖后,由于對(duì)在初始查詢中所參考的列表中的條目進(jìn)行查詢,其中這些條目與第一步識(shí)別的唯一標(biāo)識(shí)符的值有關(guān),因此該圖表被評(píng)價(jià)。更特別的,該系統(tǒng)形成了對(duì)該查詢的包括類別和部分SQL查詢的目標(biāo)計(jì)劃,其中動(dòng)態(tài)形成部分SQL查詢。用于形成并說(shuō)明類別和部分查詢所必須的信息被保持在所謂“轉(zhuǎn)盤”的數(shù)據(jù)結(jié)構(gòu)中,其中該數(shù)據(jù)結(jié)構(gòu)含有執(zhí)行具有不同初始輸入的查詢所需要的所有信息,該不同初始輸入也就是用于集線器標(biāo)識(shí)符的不同值。該目標(biāo)計(jì)劃根據(jù)關(guān)于這個(gè)查詢的曲線圖的圖解和信息而形成,并且可以包括最優(yōu)化步驟。一旦已經(jīng)形成這個(gè)目標(biāo)計(jì)劃,也就給出了初始信息,即集線器的唯一標(biāo)識(shí)符的值以及隨后運(yùn)行的值。在該查詢?cè)u(píng)價(jià)中,該系統(tǒng)將查詢?cè)摿斜硭袟l目的值,這些列表由與集線器的主碼相關(guān)的支路上的節(jié)點(diǎn)來(lái)表示。正如預(yù)先指出的那樣,對(duì)于沿支路的多個(gè)列表,如果以通常方式形成,這可能引起具有許多虛假條目的大的結(jié)果集。根據(jù)本發(fā)明,將沿支路包括部分曲線圖列表的查詢分成了多個(gè)沿曲線圖的列表的連續(xù)的查詢,其中在部分查詢中涉及的列表的各自的數(shù)量小于涉及整個(gè)支路的查詢中的列表的數(shù)量。這些多個(gè)查詢彼此連續(xù),其中在先查詢的結(jié)果被存儲(chǔ),并且至少部分地被用作至少一個(gè)隨后接著的查詢的輸入。因?yàn)槠渲械谝徊樵兊慕Y(jié)果或部分結(jié)果被用作隨后接著的查詢的輸入,連接兩個(gè)沿曲線圖的順接的查詢的技術(shù)在此被稱為接續(xù)。接續(xù)意味著對(duì)應(yīng)于曲線圖的節(jié)點(diǎn)的兩個(gè)列表并沒有包括在同一查詢中,其中這些節(jié)點(diǎn)直接相互連接。對(duì)于與沿曲線圖直接連接的節(jié)點(diǎn)相對(duì)應(yīng)的每對(duì)列表,存在以確立這兩個(gè)列表之間的關(guān)系的、通常是鏈接關(guān)鍵字的一種鏈接。使用接續(xù),輸入該連接,在對(duì)包括這兩個(gè)列表中的其中一個(gè)列表的前一個(gè)查詢的評(píng)價(jià)中確立的連接碼的值,通常被用作包括另一個(gè)列表的隨后的查詢的輸入。這意味著沒有包括這兩個(gè)列表的連接,并且由此每個(gè)部分查詢的結(jié)果集將變得更小。在每個(gè)部分查詢后,確定前一步中確定的碼是否完全與沿曲線圖的隨后的列表有關(guān)。如果沒有關(guān)系,各自的碼值將從部分查詢的結(jié)果中刪除。另外,為了存儲(chǔ)前的每個(gè)部分查詢的結(jié)果,執(zhí)行過濾以及檢查冗余和/或相容性。在一個(gè)實(shí)施例中,冗余檢查可以從與列表相關(guān)的列開始,沿著現(xiàn)在被查詢的離集線器最遠(yuǎn)的曲線圖部分。如果相同的碼的組合證實(shí)是在這個(gè)等級(jí),并且沿該部分曲線圖沒有N∶1或N∶N的關(guān)系,就意味著存在冗余并且除去了各自的條目。當(dāng)然可以應(yīng)用冗余檢查的另一種技術(shù)。由于在每一步中僅形成和過濾小結(jié)果集,因此如果立刻查詢初始查詢中參考的所有列表,將產(chǎn)生以下結(jié)果,這種過濾、冗余檢查等可以比大結(jié)果集的冗余檢查和過濾更快更有效地進(jìn)行。每個(gè)部分查詢的結(jié)果具有已除去的冗余和不相容性,其存儲(chǔ)為對(duì)象,并且存儲(chǔ)檢索所述對(duì)象所需要的信息。在曲線圖的支路的評(píng)價(jià)中,如果識(shí)別了進(jìn)一步的支路,就可以獨(dú)立地執(zhí)行沿著每個(gè)支路隨后接著的查詢,這些隨后接著的查詢或者相互平行或者相互連續(xù)??墒牵绻S后接著的支路相對(duì)較短,在給定的情況下,也可以在一個(gè)單獨(dú)的部分查詢中選擇包括沿著這些隨后接著的支路的列表以及與支路節(jié)點(diǎn)對(duì)應(yīng)的列表。以這種方式對(duì)支路作出整體評(píng)價(jià)后,綜合該部分查詢的結(jié)果并再一次檢查冗余和相容性。對(duì)源自集線器的每個(gè)支路評(píng)價(jià)后,得到每個(gè)支路的結(jié)果集,每個(gè)支路的結(jié)果集都是由集線器唯一標(biāo)識(shí)符的值來(lái)識(shí)別。然后將不同支路的結(jié)果匯總在一起,并再一次檢查冗余和相容性,以得到最后的結(jié)果。這個(gè)結(jié)果被表示成目標(biāo)結(jié)構(gòu),如SRS的結(jié)構(gòu)中提供的目標(biāo)結(jié)構(gòu)。對(duì)這個(gè)目標(biāo)結(jié)構(gòu)或代表隨后的部分查詢結(jié)果的這些目標(biāo)作出定義,可以利用動(dòng)態(tài)類,即當(dāng)繼續(xù)時(shí)對(duì)其作出定義然后對(duì)其進(jìn)行說(shuō)明以形成目標(biāo)的類。動(dòng)態(tài)類本身并不是新的,并且在Smalltalk語(yǔ)言中已知,但是這些動(dòng)態(tài)類并不能在現(xiàn)有的只有一個(gè)靜態(tài)或編譯時(shí)間的類的語(yǔ)言如C++或Java中得到。SRS支持動(dòng)態(tài)類,盡管早先的應(yīng)用并不使用它。根據(jù)本發(fā)明的重要方面,在初始查詢的評(píng)價(jià)期間所形成的所有查詢都是當(dāng)運(yùn)行時(shí)動(dòng)態(tài)形成的。在其它實(shí)施例中,可以事先確定并優(yōu)化沿著在集線器和列表之間的某些部分曲線圖的部分查詢,這些部分查詢是經(jīng)常被要求的。還可以期望事先確定引至表的“簇”的某些部分路線,其中動(dòng)態(tài)確定(匆忙地)至要求列表的路線的最后的部分。進(jìn)一步的優(yōu)化技術(shù)可以忽視數(shù)據(jù)庫(kù)曲線圖中的某些連接。上述兩步過程可以被看成是在第一步中解決查詢條件,在第二步中檢索與其結(jié)果相關(guān)的信息。在本發(fā)明一個(gè)實(shí)施例中,包括符合查詢條件要求的條目的列表并不必然是在所述第二步中進(jìn)行的部分查詢的部分,例如如果從列表中提取的信息被限定成與查詢條件相關(guān)的條目值。還可以提出,已經(jīng)提取并儲(chǔ)存在第一步中的所有信息,這些信息與由在同一列表中的查詢條件所指定的條目有關(guān),使得后來(lái)不需要“再訪問”該相關(guān)列表。上述兩步過程不是必須的??梢栽O(shè)想一個(gè)實(shí)施例,其中當(dāng)該系統(tǒng)檢索該集線器的唯一標(biāo)識(shí)符時(shí),檢索另外的信息,從在查詢條件中參考的列表開始。例如可以提出,在查詢集線器的主碼時(shí),該系統(tǒng)還查詢某一路徑中的中間列表的碼,該路徑從由查詢條件指定的條目開始到相關(guān)集線器結(jié)束,并且在隨后的查詢中,該系統(tǒng)檢索與這些碼有關(guān)的信息。對(duì)于僅包括一個(gè)集線器或一個(gè)數(shù)據(jù)庫(kù)或程序庫(kù)的實(shí)例在之前已經(jīng)進(jìn)行了描述。例如在一個(gè)單獨(dú)的數(shù)據(jù)庫(kù)中的多個(gè)數(shù)據(jù)庫(kù)、多個(gè)程序庫(kù)或多個(gè)集線器的實(shí)例中所包括多個(gè)集線器,具有這樣的多個(gè)集線器的實(shí)例被以將初始查詢分成幾個(gè)部分查詢的方式處理,其對(duì)應(yīng)于曲線圖的部分具有作為末端的集線器,其剩余部分僅包含一個(gè)集線器。在兩個(gè)集線器的實(shí)例中,在第一步中,如上所述檢索與具有符合查詢條件的條目的列表相關(guān)的集線器列表的唯一標(biāo)識(shí)符的值,與所述列表的所述關(guān)系并不包括另一集線器。隨后在第二步中,確定包括部分曲線圖(與部分查詢相對(duì)應(yīng))和一個(gè)或多個(gè)部分曲線圖(與一個(gè)或更多個(gè)部分查詢相對(duì)應(yīng))的最優(yōu)化曲線圖,其中獨(dú)有部分曲線圖(與部分查詢相對(duì)應(yīng))與一個(gè)單獨(dú)的集線器相關(guān),并且不包括任何其它集線器,一個(gè)或多個(gè)部分曲線圖(與一個(gè)或更多個(gè)部分查詢相對(duì)應(yīng))與集線器相互連接。然后將評(píng)價(jià)每個(gè)集線器惟獨(dú)與這個(gè)集線器相關(guān)的部分曲線圖并存儲(chǔ)各自的結(jié)果。然后將評(píng)價(jià)該查詢或?qū)?yīng)于該部分曲線圖或這些集線器之間的曲線圖的查詢。然后綜合這些部分曲線圖的結(jié)果以生成整個(gè)查詢的結(jié)果??蛇x擇的,可以應(yīng)用接續(xù)的概念來(lái)評(píng)價(jià)兩個(gè)集線器之間的鏈接,并且在部分曲線圖中連接兩個(gè)接續(xù)的每個(gè)集線器之后以及根據(jù)給定的事實(shí)在這些曲線圖的進(jìn)一步的位置上引入接續(xù)。評(píng)價(jià)這些連接集線器的部分曲線圖,啟動(dòng)一個(gè)集線器的唯一標(biāo)識(shí)符的值并評(píng)價(jià)對(duì)其它集線器的唯一標(biāo)識(shí)符的相關(guān)值的查詢,這些可以以相同方式進(jìn)行,尤其是使用接續(xù),正如之前對(duì)包括集線器和相關(guān)列表的查詢的實(shí)例中所描述的那樣。結(jié)果,將得到其它集線器的唯一標(biāo)識(shí)符的一組值,然后檢查這組值與查詢條件的相容性。如果查詢條件僅和與一個(gè)集線器相關(guān)的列表有關(guān),那么這種做法就特別具有優(yōu)勢(shì)。在這種情況下,將在第一步中僅檢索這個(gè)集線器的主碼,另一個(gè)集線器象曲線圖中分支點(diǎn)那樣處理,引入接續(xù)代替曲線圖上的連接第二集線器的最后的鏈接。依據(jù)集線器的本質(zhì)特性以及依據(jù)該集線器是否是在系統(tǒng)設(shè)置中預(yù)先定義的或由用戶選擇的,可以期望在一個(gè)單獨(dú)數(shù)據(jù)庫(kù)中存儲(chǔ)多個(gè)集線器的主碼之間的預(yù)定的關(guān)系。這從概念上意味著在節(jié)點(diǎn)曲線圖中引入兩個(gè)集線器之間的直接鏈接,該直接連接將代替上述動(dòng)態(tài)連接使用。另一個(gè)期望的可能性是在該過程的第一步中檢索包括所有查詢條件的一個(gè)查詢中的所有集線器的主碼,由此得到主碼的相應(yīng)綜合。這可以是一種明智的方式,尤其是在集線器之間存在直接連接特別是1∶1的連接的情況下。包括多于一個(gè)數(shù)據(jù)庫(kù)的實(shí)例可以以與包括多個(gè)集線器的實(shí)例相同的方式處理。為了簡(jiǎn)化起見,假設(shè)每個(gè)數(shù)據(jù)庫(kù)僅包括一個(gè)集線器,并且數(shù)據(jù)庫(kù)通過連接列表相互連接,每個(gè)數(shù)據(jù)庫(kù)有一個(gè)連接列表,那么能將兩個(gè)數(shù)據(jù)庫(kù)之間通過連接列表的連接看成是節(jié)點(diǎn)曲線圖中的正常邊。以這種方式代表兩個(gè)數(shù)據(jù)庫(kù),從概念上并盡可能考慮到本發(fā)明評(píng)價(jià)查詢的方法,與在單獨(dú)數(shù)據(jù)庫(kù)中的兩個(gè)集線器的實(shí)例存在微小差別。即,如之前所述的,在查詢條件的基礎(chǔ)上檢索集線器的相關(guān)的唯一標(biāo)識(shí)符,將通過包括兩個(gè)數(shù)據(jù)庫(kù)的集線器和在查詢中所參考的任何其它列表的兩個(gè)數(shù)據(jù)庫(kù)來(lái)確定曲線圖。該曲線圖將包括只和一個(gè)數(shù)據(jù)庫(kù)中的集線器相關(guān)的部分曲線圖、只和另一數(shù)據(jù)庫(kù)的集線器相關(guān)的第二曲線圖、以及使第一數(shù)據(jù)庫(kù)的集線器和第二數(shù)據(jù)庫(kù)的集線器相連接并通過所述兩個(gè)鏈接列表延伸的部分曲線圖。應(yīng)當(dāng)注意該這些鏈接列表并不必須是集線器列表。此外,該查詢?cè)u(píng)價(jià)與之前所述的查詢?cè)u(píng)價(jià)類似。將評(píng)價(jià)與第一和第二集線器相關(guān)的部分查詢,輸入在三個(gè)部分曲線圖之間的接續(xù),并以上述方式評(píng)價(jià)在兩個(gè)集線器之間的路線。應(yīng)當(dāng)注意,在評(píng)價(jià)兩個(gè)集線器之間的曲線圖時(shí),如果在兩個(gè)集線器之間不存在直接鏈接,將會(huì)再一次使用接續(xù)的概念。在兩個(gè)集線器的實(shí)例中,通過從一個(gè)集線器到另一個(gè)集線器的節(jié)點(diǎn)曲線圖來(lái)確定最優(yōu)路徑,并且在某些節(jié)點(diǎn)之間輸入接續(xù),由此定義單獨(dú)評(píng)價(jià)的部分查詢,該部分查詢的結(jié)果最終彼此綜合以得到連接兩個(gè)集線器的部分曲線圖的部分結(jié)果,然后該部分結(jié)果與剩下的與各自的集線器有關(guān)的兩個(gè)部分曲線圖匯合在一起。如果該查詢僅與一個(gè)數(shù)據(jù)庫(kù)有關(guān),并且得到與符合所述查詢條件的條目相關(guān)的信息僅需要第二數(shù)據(jù)庫(kù),象之前對(duì)于在一個(gè)單獨(dú)的數(shù)據(jù)庫(kù)中的兩個(gè)集線器的實(shí)例所描述的那樣,可以進(jìn)行檢索與查詢條件的條目相關(guān)的第一數(shù)據(jù)庫(kù)的集線器的主碼,然后評(píng)價(jià)與另一個(gè)數(shù)據(jù)庫(kù)中的集線器的動(dòng)態(tài)鏈接,根據(jù)通過這個(gè)鏈接的評(píng)價(jià)所檢索的第二數(shù)據(jù)庫(kù)的集線器的主碼值,評(píng)價(jià)源自所述第二數(shù)據(jù)庫(kù)的集線器的部分曲線圖。將查詢分成幾個(gè)部分查詢并且每個(gè)部分查詢包括集線器的上述概念還可以應(yīng)用在評(píng)價(jià)查詢中,其中查詢包括關(guān)系數(shù)據(jù)庫(kù)和另外的可搜索實(shí)體,可搜索實(shí)體包括用來(lái)識(shí)別子實(shí)體并從所述子實(shí)體中提取數(shù)據(jù)的標(biāo)識(shí)符,尤其是指平面文件。如果關(guān)系數(shù)據(jù)庫(kù)和平面文件包括在同一個(gè)查詢中,可以將初始查詢分成三個(gè)部分,即一個(gè)部分包括集線器和在關(guān)系數(shù)據(jù)庫(kù)中與其相關(guān)的列表,一個(gè)部分包括從平面文件中提取信息,一個(gè)部分關(guān)于該平面文件和該關(guān)系數(shù)據(jù)庫(kù)之間的鏈接。這樣,可以在節(jié)點(diǎn)曲線圖中在本發(fā)明的概念內(nèi)處理平面文件,節(jié)點(diǎn)曲線圖象沒有與其相關(guān)的進(jìn)一步的列表的集線器。為了進(jìn)一步解釋本發(fā)明的原理,參考圖1所示的結(jié)構(gòu)給出略微簡(jiǎn)單的實(shí)例。圖1表示關(guān)系數(shù)據(jù)庫(kù),其包括列表RESEARCHERS(調(diào)查者)、DEPARTMENTS(部門)、ARTICLE(文章)、AUTHORS(作者)以及TITLE/ABSTRACT(題目/摘要)??梢杂羞M(jìn)一步的列表,其通過圖1中虛線來(lái)表示。列表調(diào)查者具有列RNAME(調(diào)查者姓名)和RI(調(diào)查者標(biāo)識(shí)符),后者定義了這個(gè)列表的主碼。RI形成與列表DEPARTMENTS的連接(link)碼,RNAME形成與列表AUTHORS的列RNAME的連接(link),其還包括列ANAME(作者姓名)和ARTID。ARTID依次形成與列表ARTICLE的連接。列表ARTICLE包括列ARTID、JOURNALYEAR(期刊年份)和PAGE(頁(yè))。ARTID還形成從列表ARTICLE至列表TITLE/ABSTRACT的連接,其中列表TITLE/ABSTRACT具有列TITLE和ABSTRACT。在這個(gè)實(shí)例中,將列表RESEARCHERS預(yù)定為集線器列表,例如這是因?yàn)閿?shù)據(jù)庫(kù)的用戶是希望由雇員進(jìn)行監(jiān)控該調(diào)查的R&D(研究開發(fā))機(jī)構(gòu)。讓我們現(xiàn)在假定提交了一份查詢,該查詢是關(guān)于在摘要中出現(xiàn)“insulin”的所有文章,同時(shí)要求檢索關(guān)于該文章、該題目和該姓名以及各自的作者的部門的書目數(shù)據(jù)。該系統(tǒng)將首先在列表ABSTRACT/TITLE的列ABSTRACT中尋找包括單詞“insulin”的實(shí)體。接著,該系統(tǒng)將檢查在列表ABSTRACT/TITLE和集線器列表RESEARCHERS之間是否存在關(guān)系。當(dāng)二者之間有關(guān)系時(shí),通過列表鏈ABSTRACT/TITLE-ARTICLE-ANAME-RESEARCHERS,該系統(tǒng)繼續(xù)檢索與包含有單詞“insulin”的列表ABSTRACT/TITLE中的列ABSTRACT中的條目有關(guān)的碼RI。經(jīng)證實(shí)有兩個(gè)RI值符合這個(gè)條件,即值1和值2(對(duì)應(yīng)于調(diào)查者Smith和Jones)。該系統(tǒng)現(xiàn)在從要求信息的那些列表開始檢查。這些是列表RESEARCHERS(調(diào)查者)、DEPARTMENTS(部門)、ARTICLE(文章)以及ABSTRACT/TITLE(摘要/題目)。由此,該系統(tǒng)現(xiàn)在將確定將這些列表和集線器列表RESEARCHERS相連的曲線圖,正如圖1中的實(shí)線所表示的。在第一步中,該系統(tǒng)接著將評(píng)價(jià)列表AUTHOR中具有姓名Smith和Jones(對(duì)應(yīng)于RI1和2;為了簡(jiǎn)單起見,假定這些名字是調(diào)查者的唯一標(biāo)識(shí)符)的所有條目,并且檢索ARTID的相關(guān)值。這個(gè)結(jié)果作為第一部分結(jié)果集被存儲(chǔ)。應(yīng)當(dāng)注意,并沒有在這一步中查詢隨后的列表ARTICLE和ABSTRACT/TITLE,意味著形成了列表AUTHORS和ARTICLE之間的接續(xù)。在第一步中檢索的碼ARTID現(xiàn)在用作隨后的檢索書目數(shù)據(jù)、題目和摘要的查詢的輸入。觀察這個(gè)查詢的結(jié)果,應(yīng)當(dāng)注意,該結(jié)果含有文章3和4,這是因?yàn)镾mith和Jones作為這些文章的作者被列出??墒沁@些文章并不符合查詢條件。因此該系統(tǒng)檢查這個(gè)用于相容性的第二部分查詢的部分結(jié)果,并除去結(jié)果集的那些不與查詢條件(摘要含有單詞“insulin”)相容的部分。這剩下了如以下所示的具有文章ID1和2的結(jié)果集。將要注意的是文章ID1出現(xiàn)了兩次,這是因?yàn)镾mith和Jones是文章1的共同作者?,F(xiàn)在已經(jīng)對(duì)該曲線圖的第一支路進(jìn)行了評(píng)價(jià),其結(jié)果在上述結(jié)果集表示出來(lái),該系統(tǒng)現(xiàn)在轉(zhuǎn)向評(píng)價(jià)包括集線器RESEARCHERS和列表DEPARTMENTS。當(dāng)在這個(gè)支路內(nèi)僅包括兩個(gè)列表時(shí),該系統(tǒng)不需要進(jìn)一步的接續(xù),檢索RI1和2對(duì)應(yīng)于Smith和Jones以及Smith在部門A工作、Jones在部門B工作的信息。這個(gè)結(jié)果現(xiàn)在和在先的結(jié)果集綜合在一起,使得整個(gè)結(jié)果集如下所示。該查詢現(xiàn)在實(shí)質(zhì)上已經(jīng)完成。為了簡(jiǎn)單起見,這個(gè)結(jié)果被表示成結(jié)果表。根據(jù)優(yōu)選實(shí)施例,使三個(gè)部分查詢的結(jié)果轉(zhuǎn)化成目標(biāo),接著目標(biāo)被綜合以生成整個(gè)查詢的結(jié)果。讓我們假定,在數(shù)據(jù)庫(kù)的不同設(shè)置中,列表RESEARCHERS和ARTICLE已經(jīng)被選作集線器。在這種情況下,為了評(píng)價(jià)該相同查詢,該系統(tǒng)將在第一步中確立ARTID1和2與查詢條件(摘要含有單詞“insulin”)相符合。然后該系統(tǒng)在第一步中評(píng)價(jià)包括列表ARTICLE和ABSTRACT/TITLE的部分曲線圖,并檢索對(duì)應(yīng)于文章1和2的書目數(shù)據(jù)、題目和摘要。在第二步中,該系統(tǒng)將從ARTID的值1和2開始,通過列表鏈ARTICLE-AUTHORS-RESEARCHERS來(lái)確定列表RESEARCHERS的有關(guān)的RI。這可以在一個(gè)單獨(dú)的查詢中進(jìn)行。還可以期望在AUTHORS和RESEARCHERS之間引入接續(xù),即首先評(píng)價(jià)用于AUTHORS的碼的部分查詢,然后其被用作RI值的進(jìn)一步查詢的輸入。在包括集線器列表RESEARCHERS和列表DEPARTMENTS的第三部分查詢中,對(duì)集線器列表RESEARCHERS和列表DEPARTMENTS進(jìn)行檢索。這些部分查詢的結(jié)果集被綜合,其與上述初始查詢的結(jié)果集相同。如果將列表鏈ARTICLE-AUTHORS-RESEARCHERS看成在兩個(gè)集線器之間的鏈接,我們知道,如果該列表RESEARCHERS和ARTICLE屬于不同的數(shù)據(jù)庫(kù)或不同的程序庫(kù),并且通過列表AUTHORS和RESEARCHERS之間的鏈接而連接,那么可以應(yīng)用相同的程序。應(yīng)該理解,在這些數(shù)據(jù)庫(kù)之間的鏈接不需要屬于數(shù)據(jù)庫(kù)或程序庫(kù)其中一個(gè)的集線器列表。在一個(gè)數(shù)據(jù)庫(kù)中有兩個(gè)集線器的上述實(shí)例的改進(jìn)中,還可以在第一步中確定符合查詢條件的兩個(gè)集線器的主碼的值。這將返回RI1和2以及ARTID1和2,然后這些將用來(lái)評(píng)價(jià)包括各自的集線器列表以及其依據(jù)的列表的曲線圖的兩個(gè)支路。作為進(jìn)一步的選擇,可以在ARTICLE和RESEARCHERS之間的選擇實(shí)現(xiàn)直接的靜態(tài)鏈接。在進(jìn)一步的實(shí)例中,將參照表3所示的數(shù)據(jù)庫(kù)來(lái)表示包括接續(xù)的優(yōu)點(diǎn)。這個(gè)數(shù)據(jù)庫(kù)包括以下示出的三個(gè)列表,列表“文章列表”被定義成集線器列表,ArticleID被限定成所述集線器列表的唯一標(biāo)識(shí)符。文章列表參考列表作者列表考慮到對(duì)于有關(guān)文章序號(hào)88的所有信息的搜索,闡述了兩種情況,即一種情況是在集線器列表(文章)和每個(gè)相關(guān)列表(參考和作者)之間沒有任何接續(xù),一種情況是二者之間有接續(xù)。情況1沒有接續(xù)構(gòu)建并提交單一的查詢。該結(jié)果集將具有3乘以2等于6行。返回的單一結(jié)果集該冗余數(shù)據(jù)將在過濾處理和從唯一數(shù)據(jù)構(gòu)建的對(duì)象期間被忽略。在該種情況下,例如數(shù)據(jù)“88”和“題目88”盡管出現(xiàn)了6次,但其將只被讀取一次。同樣適用于RefP1、RefP2、RefP3以及Smith和Jones冗余。由于過濾和對(duì)象生成算法,每個(gè)唯一字段只被讀取一次。將搜索結(jié)果表示成對(duì)象或?qū)ο蟮慕Y(jié)構(gòu),可以避免結(jié)果中的冗余。這樣,當(dāng)然優(yōu)選在第一位置處避免冗余。這可以通過接續(xù)的概念進(jìn)行。情況2兩個(gè)鏈路都是接續(xù)以串行或并行的方式構(gòu)建并提交兩個(gè)查詢。如下所示的兩個(gè)結(jié)果集被返回。結(jié)果集1結(jié)果集2忽略冗余數(shù)據(jù)(這種情況中僅“88”和“題目88”)。從這兩個(gè)結(jié)果集構(gòu)建對(duì)象。該對(duì)象等同于情況1中構(gòu)建的對(duì)象。應(yīng)當(dāng)注意通過該單一查詢,結(jié)果集更大并且包括更多的冗余信息。返回的行數(shù)將隨著列表數(shù)的增加(不同于1-1的關(guān)系)而顯著地增加。在大多數(shù)真實(shí)世界數(shù)據(jù)庫(kù)中復(fù)雜關(guān)系是通常的情況。應(yīng)當(dāng)理解上述的實(shí)例僅僅是為了描述,并且本發(fā)明決不局限于這些實(shí)例。本發(fā)明的說(shuō)明書、權(quán)利要求以及附圖中公開的特征兩者單一地、也可以任意組合地,可以是實(shí)現(xiàn)不同實(shí)施例中發(fā)明的素材。權(quán)利要求1.一種評(píng)價(jià)包括一個(gè)或更多關(guān)系數(shù)據(jù)庫(kù)的查詢的方法,每個(gè)包括一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBM),所述查詢與所述關(guān)系數(shù)據(jù)庫(kù)的至少兩個(gè)列表相關(guān),所述方法包括確定包括在查詢中涉及的列表的列表集合,其中,所述集合中的每個(gè)列表與至少一個(gè)其它列表相連,這樣,在數(shù)據(jù)庫(kù)的圖表表示中,其中,列表用節(jié)點(diǎn)表示,且列表間的鏈路用節(jié)點(diǎn)間的連線表示,它們形成了連接與查詢中涉及的列表所對(duì)應(yīng)的節(jié)點(diǎn)的鏈接圖表,在與初級(jí)查詢相當(dāng)?shù)乃黾仙蠄?zhí)行一個(gè)查詢,其中,在所述集合上執(zhí)行所述查詢的步驟包括執(zhí)行串行的部分查詢,其中,在先查詢的結(jié)果用作在后查詢的輸入,將所述部分查詢的結(jié)果結(jié)合來(lái)獲得初級(jí)查詢的結(jié)果。2.根據(jù)權(quán)利要求1中的方法,其中在所述集合中執(zhí)行查詢的所述步驟包括在所述列表的集合中確定兩個(gè)或更多的部分查詢,這些查詢結(jié)合等于初級(jí)查詢,其中,至少有包括所述列表的集合的第一子集的第一部分查詢和包括至少部分與所述第一子集不同的列表的第二子集的第二部分查詢,其中,不包含在所述第二子集中的在所述第一子集中的至少一個(gè)列表具有到所述第二子集中且不包含在所述第一子集中的一個(gè)列表的鏈路,所述鏈路對(duì)應(yīng)所述圖表中的一條線,它的移除將造成圖表斷開,其中,所述第一查詢得到包括所述兩個(gè)列表間鏈接關(guān)鍵字的值的結(jié)果,并且,其中,所述第二查詢具有作為輸入的第一查詢中確定的鏈接關(guān)鍵字的值,執(zhí)行所述第一查詢,使用所述第一查詢結(jié)果執(zhí)行所述第二查詢,將所有部分查詢的結(jié)果結(jié)合得到初級(jí)查詢的結(jié)果。3.根據(jù)權(quán)利要求2的方法,其中,所述第一和第二子集互相不同。4.根據(jù)權(quán)利要求1到3中任何一個(gè)的方法,其中,所述第一和第二部分查詢?cè)谶\(yùn)行時(shí)間中動(dòng)態(tài)生成。5.根據(jù)權(quán)利要求1到4中任何一個(gè)的方法,其中,在先查詢的所述結(jié)果包括在在后查詢中包含的列表的外鍵值,并且,其中,所述外鍵的所述值作為所述在后查詢的輸入。6.根據(jù)權(quán)利要求1到5中任何一個(gè)的方法,其中所述部分查詢的結(jié)果存儲(chǔ)為一個(gè)對(duì)象或多個(gè)對(duì)象。7.根據(jù)權(quán)利要求1到6中任何一個(gè)的方法,其中在每個(gè)部分查詢之后,在各個(gè)結(jié)果中實(shí)施一個(gè)冗余校驗(yàn)和/或一致性校驗(yàn)并且儲(chǔ)存所述移除了冗余和/或不一致的所述部分查詢的結(jié)果。8.根據(jù)權(quán)利要求6和7的方法,其中所述冗余和/或一致性校驗(yàn)在生成包括所述部分查詢的結(jié)果的所述對(duì)象時(shí)執(zhí)行,或在所述對(duì)象生成后直接在所述對(duì)象上執(zhí)行。9.根據(jù)權(quán)利要求1到8中任何一個(gè)的方法,其中每個(gè)部分查詢涉及一個(gè)列表或互相連接的多個(gè)列表,并且其中不是第一查詢的每個(gè)部分查詢具有作為輸入的一個(gè)在前建立的鏈接關(guān)鍵字的值,所述鏈接關(guān)鍵字將所述列表或一個(gè)或多個(gè)所述多個(gè)列表連接到不包括在所述部分查詢中的其它列表。10.根據(jù)權(quán)利要求1到9中任何一個(gè)的方法,其中,所述圖表包括至少一個(gè)與至少兩個(gè)其它節(jié)點(diǎn)相連的分支節(jié)點(diǎn),并且,其中,初級(jí)查詢中涉及的列表與從所述分支節(jié)點(diǎn)得出的分離的分支相關(guān),其中,執(zhí)行的一個(gè)部分查詢包括對(duì)應(yīng)所述分支節(jié)點(diǎn)(分支列表)的列表,并且,其中對(duì)包含在每個(gè)分支中的一個(gè)或更多列表執(zhí)行至少一個(gè)部分查詢,每個(gè)分支具有包含作為輸入的分支列表的部分查詢的結(jié)果。11.根據(jù)權(quán)利要求1到10中任何一個(gè)的方法,其中包含在所述集合中的所述列表不包含在一個(gè)單獨(dú)的數(shù)據(jù)庫(kù)中。12.評(píng)價(jià)包含至少一個(gè)關(guān)系數(shù)據(jù)庫(kù)的查詢的方法,所述關(guān)系數(shù)據(jù)庫(kù)包括一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),所述查詢與所述關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表相關(guān),所述方法包括確定所述關(guān)系數(shù)據(jù)庫(kù)的一個(gè)列表作為評(píng)價(jià)所述查詢的網(wǎng)關(guān)列表,檢索與被查詢的列表中一個(gè)或多個(gè)條目相關(guān)的所述網(wǎng)關(guān)列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,從與所述網(wǎng)關(guān)列表的所述檢索的唯一標(biāo)識(shí)符相關(guān)的被查詢的一個(gè)或多個(gè)列表中檢索信息,提供所述查詢的結(jié)果,其中,檢索所述網(wǎng)關(guān)列表的一個(gè)或更多主碼的所述步驟或從與所述網(wǎng)關(guān)列表的所述被檢索的主碼相關(guān)的被查詢的列表中檢索信息的步驟中的至少一個(gè)包括根據(jù)權(quán)利要求1到8中一個(gè)的查詢?cè)u(píng)價(jià)。13.根據(jù)權(quán)利要求9中的方法,其中,第一所述部分查詢包括網(wǎng)關(guān)列表,且不同于第一查詢的查詢與在初級(jí)查詢中涉及的列表相關(guān)。14.根據(jù)權(quán)利要求12或13中的方法,其中,所述關(guān)系數(shù)據(jù)庫(kù)包括一個(gè)或更多預(yù)定的集線器列表并且所述查詢與所述關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表相關(guān),并且其中所述方法包括檢索與將被查詢的列表中一個(gè)或多個(gè)條目相關(guān)的集線器列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,從與所述集線器列表的所述檢索到的唯一標(biāo)識(shí)符相關(guān)的被查詢的列表中檢索信息,提供所述查詢的結(jié)果。15.根據(jù)權(quán)利要求12到14中的任何一個(gè)的方法,其中,至少一個(gè)程序庫(kù)在一個(gè)或多個(gè)所述數(shù)據(jù)庫(kù)中定義,所述程序庫(kù)由互相連接的列表構(gòu)成并且正好具有一個(gè)作為集線器列表定義的列表。16.根據(jù)權(quán)利要求12到15中的任何一個(gè)的方法,其中,所述查詢用于所述關(guān)系數(shù)據(jù)庫(kù)或一個(gè)程序庫(kù)的相關(guān)條目的完整集合,或者用于條目的部分這樣的完整集合,并且包括一個(gè)或多個(gè)與所述數(shù)據(jù)庫(kù)相關(guān)的查詢條件,其中所述方法包括識(shí)別一個(gè)與查詢條件中確定的條目相關(guān)的網(wǎng)關(guān)列表,識(shí)別一個(gè)或多個(gè)與查詢條件相符的所述條目相關(guān)的所述網(wǎng)關(guān)列表的唯一標(biāo)識(shí)符,檢索一個(gè)與所述網(wǎng)關(guān)列表的所述主碼相關(guān)的相關(guān)條目的完整集合或其部分。17.根據(jù)權(quán)利要求14到16中任何一個(gè)的方法,其中所述查詢包括在所述查詢中包含的所述數(shù)據(jù)庫(kù)以外或所述程序庫(kù)以外的至少第二可搜索實(shí)體,所述第二實(shí)體包括每個(gè)具有至少一個(gè)標(biāo)識(shí)符的子實(shí)體,其中,標(biāo)識(shí)符唯一地標(biāo)識(shí)所述子實(shí)體,并且,其中所述方法包括檢索與所述查詢相關(guān)的所述第二可搜索實(shí)體的子實(shí)體的一個(gè)或多個(gè)標(biāo)識(shí)符,檢索與所述子實(shí)體的檢索到的標(biāo)識(shí)符相關(guān)的所述關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù)的集線器列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,檢索與所述集線器的所述檢索的唯一標(biāo)識(shí)符相關(guān)的相關(guān)條目或其預(yù)定部分的集合,檢索來(lái)自所述第二子實(shí)體中的檢索到的標(biāo)識(shí)符所識(shí)別的子實(shí)體的信息,將從所述第二可搜索實(shí)體和所述數(shù)據(jù)庫(kù)或程序庫(kù)檢索的信息結(jié)合為結(jié)果。18.根據(jù)權(quán)利要求14到17中任何一個(gè)的方法,其中,所述查詢包括在所述查詢中包括的所述數(shù)據(jù)庫(kù)之外或程序庫(kù)之外的至少一個(gè)第二可搜索實(shí)體,并且包括子實(shí)體,每個(gè)子實(shí)體具有至少一個(gè)唯一地標(biāo)識(shí)所述子實(shí)體的標(biāo)識(shí)符,并且,其中所述方法包括檢索與所述查詢相關(guān)的實(shí)體所涉及的所述數(shù)據(jù)庫(kù)或程序庫(kù)的集線器列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,檢索與所述集線器列表的所述檢索到的唯一標(biāo)識(shí)符相關(guān)的所述第二可搜索實(shí)體的子實(shí)體的標(biāo)識(shí)符,檢索與所述集線器的所述檢索的唯一標(biāo)識(shí)符相關(guān)的相關(guān)實(shí)體或其預(yù)定部分的集合,檢索來(lái)自所述第二可搜索實(shí)體中檢索的標(biāo)識(shí)符所識(shí)別的所述子實(shí)體的信息,將從所述第二實(shí)體和所述數(shù)據(jù)庫(kù)或程序庫(kù)中檢索到的信息結(jié)合為結(jié)果。19.根據(jù)權(quán)利要求17或18中的方法,其中所述第二可搜索實(shí)體是第二關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù),并且所述標(biāo)識(shí)符是所述第二關(guān)系數(shù)據(jù)庫(kù)或程序庫(kù)中集線器列表的唯一標(biāo)識(shí)符。20.根據(jù)權(quán)利要求17或18中的方法,其中,所述的第二可搜索實(shí)體是平面文件的匯集,在該匯集中子實(shí)體作為平面文件。21.根據(jù)權(quán)利要求17到20中任何一個(gè)的方法,其中,檢索所述第二可搜索實(shí)體的標(biāo)識(shí)符和所述的數(shù)據(jù)庫(kù)或程序庫(kù)的集線器的唯一標(biāo)識(shí)符之間關(guān)系的所述步驟包括解除集線器的標(biāo)識(shí)符和所述的第二可搜索實(shí)體的標(biāo)識(shí)符的結(jié)合的步驟,其中第二可搜索實(shí)體的標(biāo)識(shí)符與查詢條件不一致,以及只檢索涉及標(biāo)識(shí)符的附加信息的步驟,該標(biāo)識(shí)符包括在與選定的參數(shù)一致的標(biāo)識(shí)符的結(jié)合中。22.根據(jù)權(quán)利要求12到21中任何一個(gè)的方法,其中,所述查詢涉及與至少兩個(gè)集線器列表有關(guān)的列表,其中所述方法包括—檢索集線器列表的一個(gè)或多個(gè)唯一標(biāo)識(shí)符,所述標(biāo)識(shí)符在涉及各自的集線器列表中涉及滿足查詢條件的條目,—檢索各自的其它一個(gè)或多個(gè)集線器的唯一標(biāo)識(shí)符,其涉及與滿足所述查詢條件的條目相關(guān)的所述檢索的唯一標(biāo)識(shí)符,—檢索相關(guān)條目的集合或其預(yù)定部分,它們依照該查詢與所述集線器的所述檢索唯一標(biāo)識(shí)符相關(guān),—將涉及所述集線器的檢索信息合并為結(jié)果。23.根據(jù)權(quán)利要求22的方法,其中所檢索所述集線器列表唯一標(biāo)識(shí)符之間關(guān)系的步驟包括解除與查詢條件不符的集線器列表唯一標(biāo)識(shí)符的結(jié)合的步驟,和只檢索那些附加的與至少一個(gè)集線器列表的唯一標(biāo)識(shí)符相關(guān)的信息,所述標(biāo)識(shí)符包含在與搜索參數(shù)一致的唯一標(biāo)識(shí)符的結(jié)合中。24.根據(jù)權(quán)利要求22或23中的一個(gè)權(quán)利要求的方法,其中至少一個(gè)所述集線器是程序庫(kù)的集線器,并且該查詢涉及所述的程序庫(kù)。25.根據(jù)權(quán)利要求24的方法,其中該查詢涉及兩個(gè)程序庫(kù),并且所述的集線器是兩個(gè)程序庫(kù)的集線器。26.根據(jù)權(quán)利要求22至25中的一個(gè)權(quán)利要求的方法,其中所述的兩個(gè)集線器是在相同關(guān)系數(shù)據(jù)庫(kù)中的集線器。27.根據(jù)權(quán)利要求12至26中的一個(gè)權(quán)利要求的方法,其中檢索集線器列表的唯一標(biāo)識(shí)符和/或可搜索實(shí)體的唯一標(biāo)識(shí)符的步驟是基于所述實(shí)體的關(guān)鍵字和/或標(biāo)識(shí)符之間預(yù)先設(shè)定的關(guān)系而執(zhí)行的,其中集線器列表的唯一標(biāo)識(shí)符和所述可搜索實(shí)體的標(biāo)識(shí)符與集線器列表的另一唯一標(biāo)識(shí)符和/或可搜索實(shí)體的標(biāo)識(shí)符有關(guān)。28.根據(jù)權(quán)利要求12至26中的一個(gè)權(quán)利要求的方法,其中檢索集線器列表的唯一標(biāo)識(shí)符和/或可搜索實(shí)體的唯一標(biāo)識(shí)符的步驟是在執(zhí)行查詢期間而動(dòng)態(tài)執(zhí)行的,其中集線器列表的唯一標(biāo)識(shí)符和所述的可搜索實(shí)體的標(biāo)識(shí)符與集線器列表的另一唯一標(biāo)識(shí)符和/或可搜索實(shí)體的標(biāo)識(shí)符有關(guān)。29.根據(jù)權(quán)利要求12至28中的一個(gè)權(quán)利要求的方法,其中在執(zhí)行所述的檢索涉及所述的網(wǎng)關(guān)列表的唯一標(biāo)識(shí)符的信息的步驟中,查詢選定的列表,該列表形成將網(wǎng)關(guān)列表連接到初始查詢中所引用的列表的鏈接圖表,其中在圖表表示的數(shù)據(jù)庫(kù)中,將列表描述為節(jié)點(diǎn),列表之間的鏈路描述為節(jié)點(diǎn)之間的連線。30.根據(jù)權(quán)利要求29的方法,其中所述查詢所述圖表的列表的步驟包括執(zhí)行串行的部分查詢,其中前一個(gè)查詢結(jié)果被用作后一個(gè)查詢的輸入,第一部分的所述部分查詢包括網(wǎng)關(guān)列表,并且不同于首次查詢的查詢涉及初始查詢中所引用的列表。31.根據(jù)權(quán)利要求12至30中的一個(gè)權(quán)利要求的方法,包括步驟—識(shí)別涉及初始查詢中引用的列表的單個(gè)或多個(gè)集線器列表,—在所述數(shù)據(jù)庫(kù)的圖表表示中,確定至少用于一個(gè)集線器列表的、優(yōu)選將所述集線器連接到所有列表的最佳圖表,其中所述的列表與所述的集線器相關(guān),并且其在初始查詢中被引用,執(zhí)行串行的部分查詢,該查詢包括關(guān)于所述最佳圖表相互串行的列表。32.根據(jù)權(quán)利要求12至31中的一個(gè)權(quán)利要求的方法,其中檢索所述網(wǎng)關(guān)列表的主碼的所述步驟包括—確定初始查詢中引用的列表,—在所述數(shù)據(jù)庫(kù)的圖表表示中,確定連接所述列表的網(wǎng)關(guān)列表,其中列表被描繪成節(jié)點(diǎn),列表之間的鏈路描繪成節(jié)點(diǎn)之間的連線,一查詢所述數(shù)據(jù)庫(kù)中的網(wǎng)關(guān)列表的涉及所述列表的一個(gè)或多個(gè)索引。33.根據(jù)權(quán)利要求32的方法,其中所述的列表的一個(gè)或多個(gè)特定的條目由查詢條件包含,并且查詢所述的數(shù)據(jù)庫(kù)用于所述網(wǎng)關(guān)列表的涉及所述一個(gè)或多個(gè)條目的索引。34.根據(jù)權(quán)利要求32或33的方法,其中在所述圖表表示中,建立從所述列表到所述網(wǎng)關(guān)列表的路徑,以及對(duì)所述索引的所述查詢的執(zhí)行是通過查詢與所述圖表中的節(jié)點(diǎn)相對(duì)應(yīng)的所有列表,用于所述的圖表中列表之間的鏈接關(guān)鍵字的值,該查詢是從查詢中所引用的列表和在此情況下其某些條目開始的。35.根據(jù)權(quán)利要求34的方法,其中依照預(yù)先確定的度規(guī),所述的路徑是作為所述列表和所述網(wǎng)關(guān)列表之間最短的路徑而選定的。36.根據(jù)權(quán)利要求34或35的方法,其中所述的路徑是一部分或是等于該用于確定部分查詢的圖表,所述的部分查詢用于從涉及所述的網(wǎng)關(guān)列表的列表中檢索附加信息。37.根據(jù)權(quán)利要求32至36中的一個(gè)權(quán)利要求的方法,包括步驟—如果涉及網(wǎng)關(guān)列表的同一行的并且是由所述的查詢數(shù)據(jù)庫(kù)步驟確定的索引或一組的索引沒有唯一識(shí)別所述的網(wǎng)關(guān)列表的行,則確定網(wǎng)關(guān)列表的一行或多行與所述的索引相關(guān)的唯一標(biāo)識(shí)符。38根據(jù)權(quán)利要求12至37中的一個(gè)權(quán)利要求的方法,其中用于評(píng)估初始查詢的部分查詢至少部分地在所述的評(píng)估進(jìn)程中動(dòng)態(tài)生成。39根據(jù)權(quán)利要求1至38中的一個(gè)權(quán)利要求的方法,其中結(jié)果是由面向?qū)ο蟮谋硎痉椒▉?lái)表示。40根據(jù)權(quán)利要求39的方法,其中所述初始查詢的結(jié)果表達(dá)為通過對(duì)象關(guān)系映射的方法得來(lái)的對(duì)象。41根據(jù)權(quán)利要求1至40中的一個(gè)權(quán)利要求的方法,其中對(duì)所述查詢的所述評(píng)估是在對(duì)象管理器的控制下執(zhí)行的,所述對(duì)象管理器包括一組由計(jì)算機(jī)系統(tǒng)執(zhí)行的命令。42根據(jù)權(quán)利要求41的方法,其中所述的對(duì)象管理器處理對(duì)象,該對(duì)象代表將被查詢的一個(gè)或多個(gè)數(shù)據(jù)庫(kù)的概要或部分概要。43根據(jù)權(quán)利要求41或42的方法,其中所述的對(duì)象管理器確定動(dòng)態(tài)生成并例示的類。44用于控制對(duì)包含有關(guān)系數(shù)據(jù)庫(kù)的查詢的評(píng)估的數(shù)據(jù)處理系統(tǒng),其中所述關(guān)系數(shù)據(jù)庫(kù)包括關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),所述的查詢涉及所述關(guān)系數(shù)據(jù)庫(kù)的至少一個(gè)列表,包括用來(lái)確定列表集合的裝置,包括查詢中引用的列表,其中所述集合中的每個(gè)列表與至少一個(gè)其它列表相連,這樣,在數(shù)據(jù)庫(kù)中的圖表表示中,其中列表用節(jié)點(diǎn)表示,且連接列表的關(guān)鍵字用節(jié)點(diǎn)間的線表示,它們形成了對(duì)應(yīng)查詢中涉及的列表的連接節(jié)點(diǎn)的鏈接圖表,用于在與初級(jí)查詢相當(dāng)?shù)乃黾仙蠄?zhí)行或引起執(zhí)行查詢的裝置,其中,在所述集合上執(zhí)行的所述查詢包括了執(zhí)行串行部分查詢,其中,在前查詢的結(jié)果用作在后查詢的輸入,用來(lái)將所述部分查詢的結(jié)果結(jié)合或引起結(jié)合來(lái)獲得初級(jí)查詢的結(jié)果的裝置。45根據(jù)權(quán)利要求40的數(shù)據(jù)處理系統(tǒng),包括用于通過一個(gè)或多個(gè)數(shù)據(jù)處理系統(tǒng)控制權(quán)利要求1至43中的一個(gè)權(quán)利要求的方法的執(zhí)行的裝置。46計(jì)算機(jī)程序,使得當(dāng)其在計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)上執(zhí)行時(shí),計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)來(lái)執(zhí)行權(quán)利要求1至43中的一個(gè)權(quán)利要求的方法的步驟。47.計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì),包括根據(jù)權(quán)利要求46所述的程序。全文摘要本發(fā)明提供了評(píng)價(jià)一個(gè)包含一個(gè)或多個(gè)關(guān)系數(shù)據(jù)庫(kù)的查詢的方法,每個(gè)數(shù)據(jù)庫(kù)包括了一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),所述查詢與關(guān)系數(shù)據(jù)庫(kù)的至少兩個(gè)列表相關(guān),所述方法包括確定一個(gè)列表集合,包括查詢中涉及的列表,其中所述集合中的每個(gè)列表與至少一個(gè)其他列表相連,這樣,在數(shù)據(jù)庫(kù)的圖表表示中,其中,以節(jié)點(diǎn)表示列表,以節(jié)點(diǎn)間連線表示列表間鏈路,它們形成了與一個(gè)對(duì)應(yīng)在查詢中涉及的列表的節(jié)點(diǎn)相連接的鏈接圖表,在與初級(jí)查詢對(duì)等的所述集合中執(zhí)行一個(gè)查詢,其中,在所述集合中執(zhí)行所述查詢的所述步驟包括執(zhí)行串行部分查詢,其中,在前查詢的結(jié)果作為在后查詢的輸入,結(jié)合所述部分查詢的結(jié)果以得到初級(jí)查詢的結(jié)果。本發(fā)明還提供關(guān)系數(shù)據(jù)處理系統(tǒng)和程序。文檔編號(hào)G06F17/30GK1647076SQ03807708公開日2005年7月27日申請(qǐng)日期2003年3月28日優(yōu)先權(quán)日2002年3月28日發(fā)明者T·埃佐爾德,C·克萊因,J·羅,J·西爾斯申請(qǐng)人:萊恩生物科學(xué)有限公司