專利名稱:標準化的數據庫存取系統(tǒng)和方法
標準化的數據庫存取系統(tǒng)和方法發(fā)明領域
本發(fā)明總體上涉及一種數據庫管理系統(tǒng)和方法。更具體地說,本發(fā)明涉及用于在本地數據庫中管理和存取數據的一種系統(tǒng)和方法。
背景技術:
這里并不承認在本節(jié)中披露的背景技術合法地構成了現有技術。
現已經存在著很多不同類型和種類的數據庫系統(tǒng)。例如,可以參考美國專利號5,829,006,6, 016,497,6, 119,126,6, 223,227,6, 571,232 和 7,644,066 以及美國專利申請公開號 2003/0105811、2003/0208493、2006/0173873 和 2009/0187344。
電子數據庫已被了解和使用了很多年。一個既定的本地數據庫(如一個既定的密集型關系數據庫)可能需要變更,如數據庫模式上的改動。在這樣做時,就有必要為數據庫的存取方法提供附加變化和修改,以使得能夠生成相同的或相近的或其他輸出。如果將要改變數據庫結構的類型,則上述情況適用。就這一點而言,為了維護報告和來自系統(tǒng)的其他輸出的一致性,變化和修改也是需要。
可能令人期望的是具有一個標準化的數據庫存取系統(tǒng),該系統(tǒng)能夠從一個本地數據庫生成標準化的輸出(如報告),即使是在數據庫的模式或者格式被修改或者被替換之后。_6]附圖簡要說明
通過參閱以下本發(fā)明的某些實施例的說明結合附圖,本發(fā)明的特點和獲得這些特點的方法將變得清楚,而且也能最佳地理解發(fā)明本身;其中:
圖1是根據本發(fā)明的一個實施例構建的一種標準化數據庫存取系統(tǒng)的方框圖;以及
圖2是根據本發(fā)明的一個實施例使用圖1的系統(tǒng)的一種標準化數據庫存取方法的流程圖。
本發(fā)明某些實施例的詳細i兌明
將容易理解的是如在此的附圖中概括地說明和展示的這些實施例的組件能夠被布置和設計在多種多樣的不同配置 中。因此,以下對于如附圖中所示的本發(fā)明的系統(tǒng)、組件和方法的這些實施例中的某些所做的更詳細的說明并非旨在限制如所提出權利要求的本發(fā)明的范圍,而僅僅是在展示本發(fā)明的這些實施例。
根據本發(fā)明的至少某些實施例,這種標準化的數據庫存取系統(tǒng)和方法使得能夠不依賴于于所使用的基礎數據庫而產生標準化的輸出(如報告、顯示和其他內容)。如此,一個本地數據庫可用于產生所希望的標準化報告和其他這樣的輸出,不依賴于于一個既定數據庫的模式或者數據結構。同樣,即使上述的模式和/或數據庫結構發(fā)生了一個變化,相同的標準化報告或者其他輸出能夠被容易地創(chuàng)建。
在此披露了一種標準化數據庫存取系統(tǒng)和方法。本發(fā)明的一個實施例涉及一種用于從數據庫中存取數據的技術。該技術可包括提供一組超對象,每個超對象包含一種不同的規(guī)則。一個超對象類似于一個常規(guī)對象,但不同之處是它不包含或者存儲數據但僅包含用于從一個獨立的數據庫中存取數據的規(guī)則。當使用一個超對象查詢引擎(HOQL)接收一個HOQL查詢時,使用該HOQL引擎以響應于該HOQL查詢選擇至少一個超對象。通過所選擇的超對象來發(fā)送一個數據請求以便從數據庫中檢索數據,該數據是有待從該數據庫中接收以便由所選擇的超對象使用。根據與所選擇的超對象相關聯(lián)的規(guī)則使用所請求的數據,以便提供所希望的輸出。
因此,根據本發(fā)明的某些實施例,該標準化的數據庫存取系統(tǒng)和方法能夠用于不同的本地數據庫響應于和常見的SQL查詢相似的HOQL查詢在不依賴數據庫規(guī)劃或者模式的變化的情況下創(chuàng)建標準化的輸出。
該標準化數據庫存取系統(tǒng)提供管理功能,例如對超對象進行創(chuàng)建、存儲、刪除或者建列表。它還提供了對超對象進行檢索、存儲和更新的多種數據存取功能。這些超對象包括數據對象和上下文對象二者。這些上下文對象為這些數據超對象確定響應于一個查詢所請求的信息的某種環(huán)境或 者配置。
由超對象存取的數據可以通過利用一個上下文超對象被解釋。該上下文超對象可以考慮時間、地點和/或者其他事項,這些內容會改變被存取數據的全貌。例如,一劑對成人而言正常的藥物劑量可能會對一個嬰兒產生顯著地變化,這顯示出年齡背景的重要性。
該上下文超對象可能會導致一個或者多個數據對象的規(guī)則的一個上下文部分相應地被變換從而促進搜索。在使用許多本地數據庫/模式組合和標準化的輸出的情況下,這樣的方法可能會特別有用。
現在參見附圖中的圖1,此處展示的是根據本發(fā)明的一個實施例的一個數據庫存取系統(tǒng)并且總體上在10處展示。如圖1所示,這個標準化數據庫存取系統(tǒng)10可以包括一個超對象查詢語言(HOQL)引擎12,用于接收一條HOQL查詢,該查詢要么來自一個HOQL控制臺14要么來自利用一個應用程序接口(API)18的一個計算機16。該HOQL引擎12可以利用HOQL查詢存儲器21來存儲HOQL查詢。展示單元23以各種形式向用戶展示標準化的輸出,例如打印的報告、顯示以及其他輸出。超對象庫25包含一組超對象,例如超對象27、29和32,用以響應這些HOQL查詢。這些超對象于可以對應地通過適配器34和適配器39存取和處理從一組本地數據庫請求和接收的數據,如本地數據庫36和本地數據庫37。展示單元23以各種形式向用戶展示標準化的輸出,以響應于HOQL引擎12,如以下更為詳細的說明。
這些超對象里的每個對象都包括不同的用于請求訪問數據庫中的數據的規(guī)則和用于處理從數據庫接收的數據的規(guī)則。這些超對象可能不會存儲數據。這些超對象中的規(guī)則中的每一個規(guī)則可包含功能性處理、邏輯判定和上下文變換。
超對象庫25可包含至少一個上下文超對象(如上下文超對象27)和多個數據超對象(如數據超對象29和32)。該上下文超對象27可包括多個規(guī)則,這些規(guī)則可用于請求上下文數據和通過適配器34從數據庫36接收所請求的上下文數據。該上下文數據可包括關于搜索查詢中指定的上下文或者環(huán)境的信息。當使用其規(guī)則接收和處理所請求的上下文數據時,于是上下文超對象27可提供一個變換命令給所選擇的數據超對象中的一個或者多個,如數據超對象29。
該數據超對象29可接著使用其規(guī)則的一個變換部分。這個變換部分可包括關于該搜索查詢中指定的上下文或環(huán)境的附加的和/或具體的規(guī)則。這些數據超對象如數據超對象29可用來請求超對象數據并且可以通過適配器34從數據庫36接收所請求的超對象數據。當使用其規(guī)則接收并處理所請求的超對象數據時,數據超對象29會對HOQL引擎12呈現為一個偽對象,如偽對象38,并且通過引擎12給展示單元23提供一種標準化輸出,如 艮告。
上下文變換的一個示例可以是由一個查詢來啟動,如以下情況:“英語的上下文中哪個單詞與數字‘I’相對應? ”該數字“I”依據語境可對應于多個不同的單詞,比如“one”,“un0”,“iChi”,“einS”,等等。在這個示例中,單詞“one”可在數據庫的檢索中使用。
現在考慮一個上下文年齡示例,假定需要分析一位病人的心率。該分析需要該病人的年齡作為一個分析要素。為了確認一位既定病人的心率是否正常,一個上下文對象例如上下文超對象27響應于來自HOQL引擎12的檢索(RETRIEVE)信號(如關于一個既定病人的醫(yī)學分析檢索信號)通過適配器34向本地數據庫36發(fā)送一個請求上下文數據(REQUESTCONTEXT DATA)信號。因此,通過適配器34從數據庫36中檢索到一個上下文數據(CONTEXTDATA)信號(如該病人的年齡為兩天),并且將其提供給上下文超對象27,接著上下文超對象27提供一個變換(TRANSFORM)信號給數據超對象38。
該變換(TRANSFORM)信號可接著給數據超對象38提供上下文信息,以變換其規(guī)則從而確定該既定病人為一名嬰兒。以此方式,該數據超對象38對其規(guī)則進行變換,其方式為使用嬰兒正常心率數據信息而非使用例如像成人心率信息這樣的心率信息。
一個數據超對象可以在不用上下文超對象的情況下完成一些上下文變換,從而使得一個上下文規(guī)則可以內嵌在該數據超對象的規(guī)則中。
表示單元23可允許為每個用戶定制標準化報告。例如,包括公司的名稱或用戶想要的其他信息的一個標題可以添加到該報告或其他想要的輸出中。
數據庫36可以是一個關系型數據庫并且包括需要一個或多個如適配器34那樣的適配器的一個或多個數據庫。這些適配器可為每個本地數據庫定制,以便避免修改該系統(tǒng)的其他組件的需要。
這些適配器如適配器34可以提供一個接口來允許訪問數據庫36,從而使得該適配器是唯一一個為該系統(tǒng)與不同的數據庫一起運行而需要修改的組件。每個適配器可為不同的原始數據按照常用 規(guī)則集匹配本地數據庫。例如,對于有紅色、綠色、和藍色的數據庫,在一個第一上下文中,紅色可等于1,綠色可等于2,并且藍色可等于3。在一個第二上下文中,紅色可等于3,綠色可等于1,并且藍色可等于2。因此,如果需要的話,該適配器可根據所述查詢的上下文提供正確的翻譯。這些適配器可以抽象化這些不同的數據結構并把它們抽象化為一種標準輸出。
可以用一種與用于關系型數據庫查詢的結構化查詢語言(SQL)相似的方式實施HOQL并其可以針對具體的應用而使用擴展。HOQL的語法可以大致上與SQL的語法相同或相似,但是兩者的動作可能不同,如,指令一個第一超對象來命令一個第二超對象利用其規(guī)則中的一個變換部分,響應于所述查詢的一個上下文條件。
該標準化數據庫存取系統(tǒng)10可包括管理和數據存取功能二者。這些管理功能可包括對超對象進行創(chuàng)建、刪除、描述和建列表的能力。這些數據存取功能可包括從數據庫36檢索、存儲和更新數據的功能。
現在參見圖2,示出了根據本發(fā)明中的一個實施例使用圖1系統(tǒng)10的一種標準化的數據庫存取方法并且總體上引用為100。步驟102中,可以接收用戶使用HOQL控制臺14或執(zhí)行適當的API的計算機16輸入的一個搜索查詢。該查詢可以是用于一次搜索,其可以是布爾搜索、自然語言搜索或其他適當的搜索。
如步驟104所示,可以從這個接收到的搜索查詢生成一個HOQL查詢,并將其提供給HOQL引擎12。步驟106中,該HOQL查詢可包括在超對象庫中選擇一個或多個超對象以及如有必要的話對其組合的指令。如步驟108所示,這些超對象中的每一個超對象可繼而向該數據庫發(fā)送一個數據請求。如步驟110所示,該超對象從到該數據庫的這個數據請求中接收所請求的數據。步驟112中,該超對象收到所請求的數據后,該數據會被處理,從而創(chuàng)建一個所希望的輸出,例如報告或其他所希望的文件。這個所希望的標準化輸出可包括向所述報告或文件上添加特定用戶信息或格式。步驟114中,這個所希望的輸出可以在屏幕上的顯示器和/或作為印刷文件或其他形式提供給該用戶。
如果選擇了一個上下文超對象和一個數據超對象二者,該上下文超對象可以在該數據超對象向該數據庫發(fā)送其超對象數據請求之前向該數據庫發(fā)送其上下文數據請求。當該上下文超對象從數據庫中接收到所請求的上下文數據時,可以對所請求的上下文數據進行處理,以便確定是否應使用這些數據超對象中的一個或多個的規(guī)則中的一個變換部分以響應于該HOQL查詢。如果確定應使用這些數據超對象中的一個或多個的規(guī)則中的一個變換部分,則可發(fā)送一個變換命令給適當的數據超對象。接收到該變換命令的一個數據超對象可使用其規(guī)則中所希望的變換部分以響應于該變換命令和查詢。然后,該數據超對象可以使用其規(guī)則中的變換部分向該數據庫發(fā)送它的超對象數據請求并且處理所請求的超對象數據。
然后這個創(chuàng)建的超對象41可接著單獨用來或與其他超對象結合用來響應搜索查詢或其他查詢(如上述有關圖2的所述)。如果確定這個新創(chuàng)建的超對象41會對以后的搜索有用,可將其存儲到超對象庫25中,可供隨后的HOQL查詢使用。需要注意的是該超對象41可被刪除。
盡管已經披露了本發(fā)明的多個具體實施例,應當理解,可進行各種不同的修改并且每一個都被認為是在所附權利要求的真正的精神和范圍之內。因此,本申請無意限制于在此展現的確切的摘要或 披露。
權利要求
1.一種用于從數據庫存取數據的標準化數據庫存取方法,該方法包括: 提供一組超對象,每個超對象包含一種不同的規(guī)則; 使用一個超對象查詢語言(HOQL)引擎來接收一個HOQL查詢; 使用該HOQL引擎響應于該HOQL查詢來選擇至少一個超對象; 通過所選擇的超對象發(fā)送一個數據請求,以便從該數據庫中檢索數據; 從該數據庫接收所請求的有待由所選擇的超對象使用的數據;并且根據與所選擇的超對象相關聯(lián)的規(guī)則來使用所請求的數據,以便提供一種所希望的標準化輸出。
2.根據權利要求1所述的方法,其中,這些超對象包括至少一個數據超對象和至少一個上下文超對象,該上下文超對象從該數據庫中檢出上下文數據以便提供一個變換命令,該變換命令有待一個所選擇的數據超對象的一個變換部分使用。
3.根據權利要求1所述的方法,進一步包括對該數據請求進行適配,以便符合一個既定的數據庫的結構。
4.根據權利要求1所述的方法,進一步包括響應于該HOQL來創(chuàng)建一個新的超對象。
5.根據權利要求4所述的方法,進一步包括將這個新的超對象與該組超對象一起存儲。
6.根據權利要求1所述的方法,其中這個所希望的標準化輸出是一個報告。
7.根據權利要求6 所述的方法,進一步包括使用一種表示單元來對該報告進行定制。
8.根據權利I所述的方法,其中該HOQL查詢是從一個HOQL控制臺接收的。
9.根據權利要求1所述的方法,其中該HOQL查詢是通過一個計算機從一個應用程序接口接收的。
10.根據權利要求1所述的方法,進一步包括將這些超對象更新。
11.一種用于從數據庫存取數據的標準化數據庫存取系統(tǒng),該系統(tǒng)包括: 一組超對象,每個超對象包含一個不同的規(guī)則; 一個超對象查詢語言(HOQL)引擎,用于接收一個HOQL查詢; 用于響應于該HOQL查詢使用該HOQL引擎選擇至少一個超對象的裝置; 用于通過所選擇的超對象發(fā)送一個數據請求以便從該數據庫檢索數據的裝置; 用于從該數據庫接收所請求的有待由所選擇的超對象使用的數據的裝置;以及用于根據與所選擇的超對象相關聯(lián)的規(guī)則使用所請求的數據以便提供一種所希望的標準化輸出的裝置。
12.根據權利要求11所述的系統(tǒng),其中,這些超對象包括至少一個數據超對象和至少一個上下文超對象,該上下文超對象從該數據庫中檢出上下文數據以便提供一個變換命令,該變換命令有待由一個所選擇的數據超對象的一個變換部分來使用。
13.根據權利要求11所述的系統(tǒng),進一步包括用于對該數據請求進行適配以便符合一個既定數據庫的結構的裝置。
14.根據權利要求11所述的系統(tǒng),進一步包括用于響應于該HOQL來創(chuàng)建一個新的超對象的裝置。
15.根據權利要求14所述的系統(tǒng),進一步包括用于將這個新的超對象與該組超對象一起存儲的裝置。
16.根據權利要求11所述的系統(tǒng),其中,所希望的標準化輸出是一個報告。
17.根據權利要求16所述的系統(tǒng),進一步包括用于使用一種表示單元對該報告進行定制的裝置。
18.根據權利要求11所述的系統(tǒng),其中該HOQL查詢是從一個HOQL控制臺接收的。
19.根據權利要求11所述的系統(tǒng),其中,該HOQL查詢是從一個計算機中的一個應用程序接口接收的。
20.根據權利要求11所述的系統(tǒng),其中,這些超對象被更新。
21.—種標準化的數據庫存取方法,該方法包括: 提供一個數據庫; 提供一組超對象,每個超對象包含一個不同的規(guī)則; 使用一個超對象查詢語言(HOQL)引擎來接收一條HOQL查詢; 響應于該HOQL查詢使用該HOQL引擎來選擇至少一個超對象; 通過所選擇的超對象發(fā)送一個數據請求以便從該數據庫中檢索數據; 從該數據庫中接收所請求的有待用于所選擇的超對象的數據;并且根據與所選擇的超對象相關聯(lián)的規(guī)則來使用所請求的數據,以便提供一種所希望的標準化輸出。
22.根據權利要求21所述的方法,其中,這些超對象包括至少一個數據超對象和至少一個上下文超對象,該上下文超對象從該數據庫中檢索上下文數據,以便提供有待由一個所選擇的超對象的一個變換部分來使用的一個變換命令。
23.根據權利要求21所述的方法,進一步包括對該數據請求進行適配,以便符合一個既定數據庫的結構。
24.根據權利要求21所述的方法,進一步包括響應于該HOQL來創(chuàng)建一個新的超對象。
25.根據權利要求24所述的方法,進一步包括把該超對象與該組超對象一起存儲。
26.根據權利要求21所述的方法,其中,所希望的標準化輸出是一個報告。
27.根據權利要求26所述的方法,進一步包括用一個表示單元對該報告進行定制。
28.根據權利要求21所述的方法,其中該HOQL查詢是從一個HOQL控制臺接收的。
29.根據權利要求21所述的方法,其中該HOQL查詢是從一個計算機的一個應用程序接口接收的。
30.根據權利要求21所述的方法,進一步包括對這些超對象進行更新。
31.一種標準化的數據庫存取系統(tǒng),該系統(tǒng)包括: 一個數據庫; 一組超對象,每個對象包含一個不同的規(guī)則; 一個超對象查詢語言(HOQL)引擎,用于接收一個HOQL查詢; 用于響應于該HOQL查詢使用該HOQL引擎選擇至少一個超對象的裝置; 用于通過所選擇的超對象發(fā)送一個數據請求以便從該數據庫中檢索數據的裝置; 用于從該數據庫接收所 請求的有待由所選擇的超對象使用的數據的裝置;以及用于根據與所選擇的超對象相關聯(lián)的規(guī)則使用所請求的數據以便提供一個所希望標準化輸出的裝置。
32.根據權利要求31所述的方法,其中,這些超對象包括至少一個數據超對象和至少一個上下文超對象,該上下文超對象從該數據庫中檢索上下文數據,以便提供有待由一個所選擇的超對象的一個變換部分使用的一個變換命令。
33.根據權利要求31所述的系統(tǒng),進一步包括用于對該數據請求進行適配以便符合一個既定的數據庫結構的裝置。
34.根據權利要求31所述的系統(tǒng),進一步包括用于響應于該HOQL來創(chuàng)建一個新的超對象的裝置。
35.根據權利要求34所述的系統(tǒng),進一步包括用于將這個新的超對象與該超對象組一起存儲的裝置。
36.根據權利要求31所述的系統(tǒng),其中,所希望的標準化輸出是一個報告。
37.根據權利要求36所述的系統(tǒng),進一步包括用于使用一個表示單元對該報告進行定制的裝置。
38.根據權利要求31所述的系統(tǒng),其中,該HOQL查詢是從一個HOQL控制臺接收的。
39.根據權利要求31所述的系統(tǒng),其中,該HOQL查詢是從一個計算機的一個應用程序接口接收的。
40.根據權利要求31 所述的系統(tǒng),其中,這些超對象被更新。
全文摘要
本發(fā)明的一個實施例涉及一種用于從數據庫中存取數據的技術。該技術可包括提供一組超對象,每個超對象包含一種不同的規(guī)則。當使用一個超對象查詢語言(HOQL)引擎接收一條HOQL查詢時,使用該HOQL引擎響應于該HOQL查詢選擇至少一個超對象,通過所選擇的超對象來發(fā)送一個數據請求以便從數據庫中檢索數據,該數據是有待從該數據庫中接收,以便由所選擇的超對象使用。所請求的數據是根據與所選擇的超對象相關聯(lián)的規(guī)則來使用的,以便提供所希望的標準化輸出。
文檔編號G06F17/30GK103229170SQ201180057295
公開日2013年7月31日 申請日期2011年10月10日 優(yōu)先權日2010年10月12日
發(fā)明者克里斯·豪登斯奇德, 森茂·林, 育敏·陳 申請人:科林尼克姆國際公司