亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

使用維屬性和每維多個分層進行聯(lián)機分析處理的系統(tǒng)和方法

文檔序號:6411737閱讀:167來源:國知局
專利名稱:使用維屬性和每維多個分層進行聯(lián)機分析處理的系統(tǒng)和方法
技術領域
本發(fā)明一般涉及計算機實施的數據庫,更具體地說,涉及用于訪問聯(lián)機分析處理數據庫的數據模型。
背景技術
典型的關系數據庫管理系統(tǒng)(RDBMS)產品對于向用戶提供數據的具體視圖具有限制條件。
從而,已經為RDBMS產品開發(fā)了前端處理機,使得從RDBMS檢索出的數據能夠被聚集,總述、合并、計算、瀏覽和分析。這類功能被稱為聯(lián)機分析處理(OLAP)。
OLAP是大多數數據倉庫和經營分析系統(tǒng)的碼部分。OLAP服務為多維信息地快速分析做準備。OLAP服務為以直觀和自然的方式進行多維訪問和數據的導航做準備,并且提供可以檢索的成為所關心的具體數據的全局數據視圖。速度和響應時間是OLAP服務的重要屬性,其允許用戶以有效率的方式聯(lián)機瀏覽和分析數據。
在OLAP系統(tǒng)中的數據可以依據它的復雜度的數目而被特性化,(即用于索引數據的維)因此,復雜數據組是一個具有多維的數據組。在具有靈活性的優(yōu)點復雜數據組中,用戶可以向復雜數據提交比向簡單數據組更多的查詢。因此,通常更期望使用復數數據組。然而,使用傳統(tǒng)的OLAP系統(tǒng)處理大量數目的維是很困難的。因而需要一種用于訪問OLAP系統(tǒng)中的數據庫的改善機構。
發(fā)明總述在本發(fā)明的一個具體實施例中,多分層維用于訪問OLAP系統(tǒng)中的關系數據庫。維包括一組屬性。每個屬性被綁定在關系數據庫中的一欄上。定義屬性之間關系。不依賴與數據庫有關的任何限制來定義這些關系。屬性和它們的關系定義維及它的限制條件。定義分層以用作檢索路徑,以便訪問數據庫。每個分層包括一序列屬性。分層可以包括單一屬性或組合屬性。分層的定義不依賴于與數據庫有關的任何限制。
一種用于通過多分層維訪問數據庫的方法,包括定義具有多個屬性的維。將每個屬性分配或綁定到數據庫的各自的行中。定義屬性之間的關系,并且通過多分層維訪問數據庫。
附圖簡述當結合附圖來考慮下述描述,將更好地理解本發(fā)明的特征和優(yōu)點,其中

圖1說明了在適當的計算系統(tǒng)環(huán)境中根據本發(fā)明的典型具體實施例的用于多分層維的可以被實施的方法和系統(tǒng)的一個例子。
圖2說明與數據庫的內容有關的典型維;圖3說明根據本發(fā)明典型具體實施例的多分層維;圖4說明根據本發(fā)明典型具體實施例的屬性之間的關系的典型結構。
圖5是根據本發(fā)明具體實施例的用于訪問數據庫的典型處理的流程圖;以及圖6說明根據本發(fā)明典型具體實施例的用于通過多分層維訪問數據庫的典型系統(tǒng)的結構圖。
具體實施例的詳細說明根據本發(fā)明的具體實施例,一種用于在關系數據庫中訪問數據的技術允許在數據庫中的項之間定義適宜的關系。這些適宜的關系可用于快速和有效地檢索數據庫。在一個具體實施例中,這個技術在OLAP系統(tǒng)內實現。該技術包括具有多個屬性的多分層維。每個屬性分配(例如,綁定)到關系數據庫中的一行中。定義屬性之間的關系。這些關系和它們自己的屬性的邏輯結構識別每個維的細節(jié)和限制條件。定義分層以促使進入關系數據庫中的檢索路徑。分層包括一序列屬性。分層可以包含屬性的任何序列和/或屬性內的層次。在序列的形成上沒有限制條件。因此,分層可以包含所有的屬性、一個屬性,或屬性的集合。
一個適當的計算系統(tǒng)環(huán)境的概要圖1說明適當的計算系統(tǒng)環(huán)境100中,用于使用維屬性和每維多分層的可以被實施的OLAP的系統(tǒng)和方法的一個例子。計算系統(tǒng)環(huán)境100僅僅是適當計算環(huán)境的一個實例,并不意圖表示對用于在關系數據庫中訪問數據的方法和系統(tǒng)的使用或功能的范圍進行任何限定。既不應將計算環(huán)境100解釋具有與在典型運行環(huán)境100中說明的任何一個部件或部件的結合相關的從屬性或必要條件。
本發(fā)明使用維屬性和每維多分層的OLAP系統(tǒng)和方法與其他多個通用或專用計算機系統(tǒng)環(huán)境或結構共同使用??梢赃m合在關系數據庫中訪問數據的方法和系統(tǒng)一起使用的眾所周知的計算系統(tǒng)、環(huán)境,和/或結構的實例包括,但不限于此個人計算機、服務器計算機、手持式或膝上型設備、多處理機系統(tǒng)、基于微處理器系統(tǒng)、機頂盒、可編程用戶電子設備、網絡PC、小型計算機、主計算機,包括任何上述系統(tǒng)或裝置的分布計算環(huán)境,等等。
使用維屬性和每維多分層的OLAP系統(tǒng)和方法可以由計算可執(zhí)行指令的通用形式來描述,例如被計算機執(zhí)行的程序模塊。通常,程序模塊包括其執(zhí)行的例行程序、程序、對象、部件、數據結構,等等特定任務或實現特定抽象數據類型。使用維屬性和每維多分層的OLAP系統(tǒng)和方法還可以實施在由遠程處理設備執(zhí)行任務的分布計算環(huán)境中,遠程處理設備經由通信網絡或其他數據傳輸介質被連接。在分布計算環(huán)境中,程序模塊及其他數據可以位于本地和遠程計算機存儲介質內,包括存儲器設備。
請參考圖1,用于實現本發(fā)明的使用維屬性和每維多分層的OLAP系統(tǒng)和方法的典型系統(tǒng)包括計算機110形式的通用計算機設備。計算機110的部件可以包括但不限于此,處理單元120、系統(tǒng)存儲器130,以及連接包括系統(tǒng)存儲器130的各種系統(tǒng)組成部分到處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是幾種總線結構的任何一種,包括存儲器總線或存儲控制器,外圍總線,以及使用各種總線體系結構的任何一種的本地總線。例如,而不限于此,這種結構包括工業(yè)標準結構(ISA)總線、微通道結構(MCA)總線、擴展ISA(EISA)總線,影像電子標準聯(lián)合(VESA)本地總線,以及外圍部件擴展接口(PCI)總線(亦稱附加板總線)。
計算機110一般包括各種計算機可讀介質。計算機可讀介質可以是任何可利用的介質,其可以通過計算機110被訪問,并且包括易失性和非易失性介質、可移動和固定介質。例如但不限于此,計算機可讀介質可以包括計算機存儲介質和通訊介質。計算機存儲介質包括以任何用于存儲例如計算機可讀指令、數據結構、程序模塊或其它數據此類信息的方法和技術實現的易失和非易失的,可移動和固定的介質。計算機存儲介質包括,但不限于此,RAM、ROM、EEPROM、閃速存儲器或其他存儲技術,CD-ROM、數字化視頻光盤(DVD)或其他光盤存儲器、磁帶磁盤存儲器或其他磁存儲設備,或其他任何可用于存儲所需信息且可由計算機110訪問的介質。通訊介質一般包括計算機可讀指令,數據結構,程序模塊或以調制數據信號形式的其他數據,例如載波或其它傳送機制,并包括任何信息分送介質。術語″調制數據信號″指的是具有一個或多個它的特征集合或以在信號中對信息編碼的方式變化的信號。例如但不限于此,通信介質包括例如有線網或直線連接此類的有線介質,以及無線介質,例如聲波、射頻、紅外線及其他無線介質。應理解,介質的任何組合也應包括在計算機可讀介質的范圍內。
系統(tǒng)存儲器130包括以易失性與/和非易失性存儲器形式的計算機存儲介質,例如ROM 131和RAM 132。包含有助于在計算機110內的元件之間傳遞信息的基本例行程序的基本輸入/輸出系統(tǒng)133(BIOS),例如在啟動其間,一般保存在ROM131中。RAM 132一般包含數據和/或程序模塊,它們可通過處理單元120被立即訪問和/或立刻執(zhí)行。例如但不限于此,圖1說明操作系統(tǒng)134、應用程序135、其他程序模塊136、和程序數據137。
計算機110還可以包括其他可移動/固定的,易失性/非易失性計算機存儲介質。僅僅舉例來說,圖1說明從固定的、非易失性磁介質中讀取或向固定的、非易失性的磁介質中寫入的硬盤驅動器141,從固定的、非易失性磁盤152中讀取或向固定的、非易失性的磁介質中寫入的硬盤驅動器151,以及從CD-ROM、CDRW或其它光學介質等的可移動、非易失性的光盤156中讀取或向其中寫入的光盤驅動器155??杀挥糜诘湫瓦\行環(huán)境的其它的可移動/固定的,易失/非易失性的計算機存儲介質包括,但不限于此,盒式磁帶、閃存卡、數字視頻光盤、數字視頻磁帶、固態(tài)RAM、固態(tài)ROM、等等。硬盤驅動器141一般通過固定的存儲器接口例如接口140連接于系統(tǒng)總線121,并且磁盤驅動151和光盤驅動器155一般通過可移動存儲接口例如接口150連接到系統(tǒng)總線121。
上述及在圖1說明的驅動器以及它們的相關計算機存儲介質為計算機110提供計算機可讀指令,數據結構,程序模塊及其他數據的存儲。例如,在圖1中,硬盤驅動器141被說明為存儲操作系統(tǒng)144,應用程序145,其它程序模塊146,以及程序數據147。請注意,這些部件可以與操作系統(tǒng)134、應用程序135、其它程序模塊136,以及程序數據137相同,也可以不同。在這里,給予操作系統(tǒng)144、應用程序145、其它程序模塊146,以及程序數據147以不同的數字,以至少說明它們是不同的版本。用戶可以通過輸入裝置例如鍵盤162和指示設備161將命令和信息輸入計算機110,該指示設備通常指的是鼠標器、跟蹤球或觸摸板。其他的輸入裝置(未示出)可以包括麥克風、控制桿、游戲柄、衛(wèi)星碟、掃描器,等等。雖然這些及其他輸入裝置往往通過耦合于系統(tǒng)總線121的用戶輸入接口160連接到處理單元120,但是也可以通過其它接口和總線結構連接,例如并行口、游戲端口或通用串行總線(USB)。監(jiān)示器191或其它類型的顯示設備也通過接口,例如視頻接口190連接到系統(tǒng)總線121。除了監(jiān)示器之外,計算機還可以包括其它外圍輸出裝置,例如揚聲器197和打印機196,它們可以通過輸出外圍接口195連接。
計算機110可以在使用邏輯連接一個或多個遠程計算機例如遠程計算機180的網絡環(huán)境中運行。盡管在圖1中只說明了存儲器存儲裝置181,但是遠程計算機180可以是個人計算機、服務器、路由器、網絡PC、對等裝置或其它公用網絡節(jié)點,并且一般包括上述與計算機110相關的多個或全部的元件。所描述的邏輯連接包括局域網(LAN)171和廣域網(WAN)173,但是還可以包括其它網絡。企業(yè)級計算機網絡、內部網和因特網這樣的網絡環(huán)境在辦公室里是常見的。
當用于LAN網絡環(huán)境中時,計算機110通過網絡接口或適配器170連接到局域網171。當用于WAN網絡環(huán)境時,計算機110一般包括調制解調器172或其它用于在WAN 173,例如因特網上建立通信的裝置。調制解調器172可以是內部或外部調制解調器,其可通過用戶輸入接口160,或其它適當機制連接到系統(tǒng)總線121。在網絡環(huán)境中,相對于計算機110所描述的程序模塊,或其中一部分可以存儲在遠程存儲器存儲器裝置中。舉例來說,但不局限于此,圖1說明了作為駐留在存儲器裝置181的遠程應用程序185。應當理解,所示的網絡連接是示范性的,也可以使用其它方式在計算機之間建立通信連接。
根據個人計算和因特網的交互,已經或正在研發(fā)各種分布式計算結構。個人和商業(yè)用戶同樣被提供了用于應用程序和計算裝置無縫地共同操作的以及萬維網的啟動接口使得萬維網瀏覽或定向網絡的計算行為增加。
例如,微軟公司的.NET平臺包括服務器,預制組件服務,例如基于萬維網的數據存儲,以及可下載的裝置軟件。一般而言,.NET平臺提供了(1)使計算裝置全程合作的能力以及使用戶信息自動更新并同步的能力,(2)通過廣泛使用XML而不是HTML來增加網站交互的能力,(3)自定義特征的聯(lián)機服務用于各種應用程序的管理從中心開始點訪問并且分送產品和服務到用戶,例如電子郵件,軟件例如Office.NET,(4)集中化的數據存儲,其將提高效率并減輕信息的訪問,并且使用戶和裝置之間的信息同步,(5)和集成各種通信介質的能力,例如電子郵附、傳真和電話,(6)對于研發(fā)者而言生成可重用模塊的能力,從而提高生產率并減少程序設計錯誤的數量的能力,以及(7)其他眾多交互平臺集成特征(7)。
雖然在此連同駐留在計算裝置上的軟件來描述典型的具體實施例,但是根據本發(fā)明的使用維屬性和每維多分層的OLAP系統(tǒng)和方法的一個或多個部分還可以通過操作系統(tǒng)、應用程序接口(API),或協(xié)處理器和請求對象之間的″中間人″對象來實施,從而服務可以通過所有的.NET的語言和服務,以及在其它分布式計算結構中同樣如此地被執(zhí)行、支持或訪問服務。
典型的具體實施例描述圖2說明了典型的維226和228,其與數據庫212的內容相關。數據庫212是一個包括六行的關系數據庫。行214包含有關銷售領域的數據項,行216包含有關國家的數據項,行218有關州的數據項,行220包含有關城市的數據項,行222包含有關人口的數據項,以及行224包含有關顧客名稱的數據項。維表示數據庫內容的具體關系。可以為給定的數據庫定義多維。一般而言,分層與維相關。例如,時間維可以由日、星期、月和年組成,或者地理維可以由城市、州/省和國家組成。維元作為識別數據庫內部的數據項的具體數據項或范圍的索引。一般而言,數據庫用戶,例如商業(yè)用戶設計維以捕獲與業(yè)務相關的信息。說明了兩個像維226和228那樣的邏輯維。維226通過地理位置組織顧客,而維228通過銷售領域來組織顧客。維225包括元′國家′、′州′、′城市′和′顧客名稱′。維226還包含元屬性,′人口′,其是元′城市′的屬性。維228包括元‘銷售區(qū)域′、‘州′、‘城市′和‘顧客名稱′。維228還包含元屬性,‘人口′,其是元‘城市’的屬性。維226的線性結構組織城市的顧客、州中的城市和國家的州。維228中的線性結構組織城市中的顧客和銷售區(qū)域中的城市。銷售區(qū)域包含一個以上的國家的城市,并且可以將國家分成一個以上的銷售區(qū)域。在兩個維中,城市都具有人口。正交軸230和232的繪圖表示維和維228每個部可以包含在立方體中。就數據庫而言,立方體在本領域是公知的。立方體是一般用于OLAP數據庫中的基本單位。
將維226、228聯(lián)系到數據庫212的一個方式是將每一維226、228的每個屬性綁定到數據庫212的行中。如圖2虛線所示,屬性的每個值是一個元,維226的元′國家′可以綁定到數據庫212的行‘國家′216中,維226的元′州′可以綁定到數據庫212的行‘州′218中,而維226的元‘城市′可以綁定到數據庫212的行‘城市′220中,以及維226的元′顧客名稱′可以綁定到數據庫212的‘顧客名稱′224中。對于維228可同樣的進行。也就是說,維226的‘銷售領域可以綁定到數據庫212的行‘銷售領域′214,維226的元′城市′可以綁定到數據庫212的行′城市′220,以及維226的元‘顧客名稱′可以綁定到數據庫212的‘顧客名稱′224。
維226和228的結構提供線性分層,通過其數據庫用戶可以檢索(搜索)數據庫的具體數據項。例如,如果數據庫用戶正在檢索一個具體顧客的名稱,那么將使用維228來檢索銷售領域、城市和顧客名稱。如果數據庫用戶還想了解相同顧客的國家,那么將使用維226來檢索該國家。請注意,定義了兩個獨立的維,它們相應于顧客的兩個不同的分層。
使用每維的線性分層的技術包括許多重復。維層次包含元‘顧客名稱′、‘城市′,以及元屬性‘人口′,其存在于維226和228兩者的分層中。這需要重復將每維的元綁定到數據庫的行,重復它們的數據類型,重復它們的名稱,以及重復在所有的輔助信息(例如,元數據,公式)。同樣,需要重復數據的儲存。這導致需要從關系數據庫212中多次檢索相同的細節(jié)。此外,數據庫用戶僅限于查詢由立方設計師定義的分層(例如,在維226和228中)。因此,數據庫用戶不能要求通過國家來瀏覽細節(jié),不能通過覆蓋那些國家的銷售領域來中止。對于立方的設計師來說,定義覆蓋數據庫用戶所需的所有可能的搜索路徑變得行不通。同樣,應注意,如果數據庫用戶需要國家和銷售區(qū)域,那么國家和銷售區(qū)域的組合將被返回,即使對于任何給定的組合來說,沒有顧客存在。不同的機制用于檢索與各個層和元屬性相關的數據元屬性的獨立層次,其導致電路的重復并增加了數據庫系統(tǒng)的處理負荷。
圖3說明根據本發(fā)明的典型具體實施例的,使用多層維330訪問數據庫312中的數據。多層維330包括與數據庫312的行一致的屬性。維330的每一屬性被綁定于關系數據庫312中的行中。通過維330訪問數據庫312。如圖3虛線所示,屬性‘顧客名稱′344綁定于行‘名稱′324,屬性‘人口′342綁定于行‘人口′322,屬性‘城市′340綁定于行‘城市′320,屬性‘州′338綁定于行‘州′318,屬性‘國家′336綁定于行‘國家′316,以及屬性‘銷售領域′334綁定于行‘銷售領域′314。維330可作為立方來實現,如正交軸332所示。
維330的屬性之間的關系被定義。實例定義可以包括位于一個城市的顧客,一個州中的每一個城市,每個城市被分配到一個銷售領域,而且每個城市具有人口。多層維(例如,維330)以及它的限制條件通過維的屬性和關系來限定。在一個具體實施例中,屬性之間的關系由立方的設計師定義。在這些定義上沒有設置任何限制,因此立方設計師可以根據數據庫用戶需要的觀點定義屬性之間的關系,而且不受任何數據庫限制的妨礙。屬性之間的關系定義存在于數據上的限制條件。例如,州只能存在于單一國家中??梢远x關系,而不管底層數據庫結構是否執(zhí)行這種限制條件。
多層維可以具有彼此關聯(lián)的多個分層。如圖3所示,分層326和328與維330關聯(lián)。每個分層326和328包括一序列屬性,其表示數據庫用戶可以利用的檢索路徑的。分層326包括屬性國家336、州338、城市340和顧客名稱344。分層328包括屬性銷售領域334、城市340和顧客名稱344。與多層維(例如,維330)關聯(lián)的每個分層是可定義的。在一個具體實施例中,分層由立方設計師定義。在這些定義上沒有設置任何限制,因此立方設計師可以根據數據庫用戶需要的觀點定義分層,而且部受任何數據庫限制的妨礙。例如,可以定義分層提供從銷售領域到國家的檢索路徑。可以定義包括單個屬性的分層。此外,可以定義包括單個屬性和用于在該屬性內的所有元的可選層次的分層。例如,可以定義包括屬性人口342和包含用于人口行322的所有分離值的元的層次的分層。這可以作為′人口′暴露于數據庫用戶。該分層將提供所有城市的人口的檢索路徑。請注意,屬性人口將總是具有包含用于人口行的所有分離值的元的層次′人口′。它還可選地具有層次″全部′,其包含單一元′全部人口′。超過一個分層(例如,國家和銷售領域)以上的查詢將返回至少存在一維元的組合。
數據庫312的所有行都可以暴露為利用多層維330的不同分層??梢越ㄈ魏螌傩越M合的分層。數據庫用戶可以使用這些分層以與通過直接查詢數據庫之內的下屬表格所可以提供的相同的靈活度查詢數據庫。增加附加分層到多層維(例如,維330)對數據庫系統(tǒng)的存儲器需求具有相對小的影響,因為不需要添加維。每個附加分層利用相同的多層維。同樣,可以按照屬性定義集合。集合是一個大體上可以抄近路通過分層的路徑。例如,設計師可以不考慮所定義的分層來保持城市的集合。同樣,設計師可以定義僅僅包含屬性′城市′的分層。
圖4說明屬性之間關系的典型結構。關系描述了數據是如何相關的,例如,州中的城市等。分層描述檢索路徑,并且可或不可跟隨關系。迄今所描述的實例具有各自的跟隨關系,然而這不是必需的。例如,可以根據區(qū)域到國家來定義分層。分層的結構是在屬性之間定義關系的結果。圖4所示的結構不是線性的。因此,起始于關鍵字屬性,可利用多個檢索路徑。因此,從關鍵字屬性開始,不會被鎖入單一的檢索路徑中。應明白圖4所描述的結構是典型的??梢远x任何結構。
雖然數據庫用戶可以在數據庫查詢中使用不同的分層,但是被用來改善查詢性能的結果和集合依賴于根據元來定義的′坐標′。例如,詢問城市′西雅圖的總銷售將是相同的,而不管是否使用′根據國家的顧客′或′根據銷售區(qū)域的顧客′分層。立方體設計師可以增加附加分層以在基于一般分層中減輕用戶瀏覽數據的查詢的形成。
除了提供相對改善的存儲器需求之外,如上所述的多分層維的使用提供了處理性能的改善。在處理期間,獨立的屬性的實施提供性能改善,從而單一維內的不同屬性可以并行處理。還有,有關屬性的數據可以在基于其定義的關系上處理期間被確認。例如,如果屬性′州′與屬性‘國家′有關,那么如果相同的州出現在多個國家中,則錯誤被預報。請注意,確認是基于屬性之間的關系的,而不是所定義的分層。
圖5是根據本發(fā)明的具體實施例的用于訪問數據庫的典型步驟的流程圖。在步驟512定義了具有多個屬性的維(例如維330)。在步驟514,維的每個屬性被綁定(分配)到數據庫(例如,數據庫312)中的相應行。如上所述,在一個具體實施例中,該數據庫是一個關系數據庫。此外,在一個具體實施例中,該數據庫系統(tǒng)是一個OLAP系統(tǒng)。在步驟516定義屬性之間的關系。這些關系的定義與數據庫無關。也就是說,維的屬性之間的關系不受數據庫上的限制的影響。可以任意地定義關系,意味著任何關系都是允許的。在步驟518,至少一個分層被定義。每個分層是訪問數據庫的檢索路徑。分層可以包括任何屬性序列。不受任何在分層上的限制。分層可以包括單一屬性或任何屬性的組合。分層的定義與數據庫無關。也就是說,分層不受所放置的數據庫上的限制。在步驟522,通過維訪問數據庫。訪問數據庫可以包括從數據庫讀取,寫入數據庫,向數據庫添加數據,或它們的組合。
圖6是用于訪問數據庫的典型系統(tǒng)600的結構圖。系統(tǒng)600包括客戶處理器612,其耦合于服務器處理器614,服務器處理器連接于數據庫616。在一個典型的具體實施例中,數據庫616是一個OLAP數據庫,并且如下所述??蛻籼幚砥?12和服務器處理器614每一個都可以包括處理器、存儲器、鍵盤或顯示器,并且可被本地或遠程連接到固定和/或可移動數據存儲設備和/或數據通信裝置。處理器612和614每一個都還可以通過數據通信裝置被連接到計算機系統(tǒng)。本領域熟練的技術人員應認識到,上述部件的組合,或許多不同的部件,外圍及其他裝置都可以與計算機612和614一起使用。本領域熟練的技術人員同樣將認識到處理器612和614可以在單一處理器上實施,而不是一同互聯(lián)在多處理機上。
在一個具體實施例中,客戶機處理器612包括用于同網絡通信的網絡接口程序,以及由客戶機處理器612執(zhí)行的客戶機程序。服務器處理器614包括同網絡通信的網絡接口程序,以及由服務器614處理器614執(zhí)行的服務器程序。針對于存儲在遠程或本地數據存儲器上的一個或多個數據庫616,服務器程序執(zhí)行各種數據庫操作,包括搜索與檢索操作,定期查詢,插入操作,更新操作,以及刪除操作。
在一個具體實施例中,服務器處理器614執(zhí)行有關維、屬性和分層的功能。這些功能包括定義包括多個屬性(例如屬性334、336、338、340,342和344)維(例如,維330),將每個屬性分配到數據庫616的相應行,定義屬性之間的關系,以及定義至少一個包括一系列屬性的分層(例如,分層326和328),以及通過維訪問數據庫。
在此所描述的使用維屬性和每維多分層的OLAP系統(tǒng)和方法可以具體化為計算機實施處理的形式和實行這些處理的系統(tǒng)。在此所描述的使用維屬性和每維多分層的OLAP系統(tǒng)和方法同樣可以具體化為內置在有形介質內的計算機程序代碼的形式,例如軟盤、只讀存儲器(ROMs)、CD-ROMs、硬盤、高密度磁盤或任何其它計算機可讀存儲介質,其中當由計算機載入和執(zhí)行計算機程序代碼時,計算機變?yōu)橛糜趯嵭斜景l(fā)明的系統(tǒng)。在此所描述的使用維屬性和每維多分層的OLAP系統(tǒng)和方法同樣可以具體化為計算機程序代碼的形式,例如存儲在存儲介質中、由計算機載入和/或執(zhí)行、經由傳輸介質傳輸的計算機程序代碼,例如在電線或電纜、通過纖維光學,或通過電磁輻射等等傳輸的,其中當計算機程序代碼由計算機載入并執(zhí)行時,該計算機成為實行本發(fā)明的系統(tǒng)。如這里所描述的使用維屬性和每維多分層的OLAP系統(tǒng)和方法可以具體化為計算機程序代碼的形式,例如,是否存儲在存儲介質中,通過計算機載入和/或執(zhí)行的,或在一些傳輸介質上傳輸,例如在電線或電纜上、通過光纖,或者通過電磁發(fā)射,其中,當計算機程序代碼通過計算機被載入和/或執(zhí)行時,計算機成為用于實踐本發(fā)明的系統(tǒng)。當在通用處理機上實施時,計算機程序代碼部分配置處理器以生成具體的邏輯電路。
在此所描述的各種技術可以連同硬件、軟件,或者其中兩者適合的組合來實現。因此,本發(fā)明的方法和設備,或者其某個方面或部分可以采用具體化在有形介質中具體的程序代碼(即,指令)形式,例如軟盤、CD-ROM、硬盤,或其他任何機器可讀存儲介質,其中當由例如計算機此類的機器載入并執(zhí)行程序代碼時,該機器成為用于實行本發(fā)明的設備,在可編程計算機上執(zhí)行程序代碼的情況下,計算裝置一般包括處理器、可由處理器讀取的存儲介質(包括易失性和非易失性存儲器和/或存儲元件)、至少一個輸入設備,以及至少一個輸出裝置。例如通過使用數據處理API等等,可以利用本發(fā)明本處理服務的一個或多個程序優(yōu)選地在高層程序或面向對象編程語言中實施,以與計算機通信。然而,如果希望的話,也可以匯編或機器語言的方式實施程序。在任何情況下,語言可以是結合硬件實現的編譯或解釋語言。
本發(fā)明的方法和設備還可以通過以程序代碼的具體形式出現的通信來實行,該程序代碼在一些傳輸介質上傳輸,例如在電線或電纜上、通過光纖,或者經其他任何傳輸形式,其中當由當計算機程序代碼通過計算機被載入和/或執(zhí)行時,例如EPROM、門陣列、可編程邏輯器件(PLD)、客戶機計算機、影像錄象機等等,或具有以上典型具體實施例所描述的處理能力的接收機成為用于實現本發(fā)明的設備。當在通用處理機上實施時,程序代碼與處理器結合,以便提供唯一的進行操作以調用本發(fā)明的功能的設備。另外,連同本發(fā)明一起使用的存儲技術可以總是硬件和軟件的組合。
雖然已經連同各個附圖來描述了本發(fā)明的具體實施例,但是應當理解在不脫離其中的情況下,其它類似于所描述的具體實施例的具體實施例可以被使用或修改,以便執(zhí)行本發(fā)明的相同功能。此外,應強調的是各種計算機平臺,包括設想的手持式裝置操作系統(tǒng)及其它應用程序具體的操作系統(tǒng),尤其作為無線網絡裝置的數目繼續(xù)激增。所以,本發(fā)明將不限于任何單一具體實施例,而應根據附加權利要求在廣度和范圍中加以分析。
權利要求
1.一種用于改善與數據庫有關的數據處理的方法,所述方法包括定義包括多個屬性的維;將每維分配到所述數據庫的相應的行;以及定義所述屬性之間的關系。
2.根據權利要求1所述的方法,進一步包括通過所述維訪問所述數據庫。
3.根據權利要求1所述的方法,進一步包括定義至少一個包括所述屬性序列的層次。
4.根據權利要求3所述的方法,其中每個層次定義用于訪問所述數據庫的搜索路徑。
5.根據權利要求3所述的方法,其中分層包括一個屬性。
6.根據權利要求3所述的方法,其中所述定義所述至少一個分層的行為與所述數據庫無關。
7.根據權利要求1所述的方法,其中所述定義所述屬性之間的關系的行為與所述數據庫無關。
8.根據權利要求1所述的方法,其中所述數據庫是關系數據庫。
9.根據權利要求1所述的方法,其中所述維同聯(lián)機分析處理(OLAP)系統(tǒng)一同使用。
10.一種包括用于執(zhí)行權利要求1所述方法的裝置的應用編程接口(API)。
11.一種計算機可讀介質,其具有通過執(zhí)行以下行為改善與數據庫有關的數據處理的計算機可執(zhí)行指令,其行為包括定義包括多個屬性的維;將每屬性分配到所述數據庫的相應的行;以及定義所述屬性之間的關系。
12.根據權利權利要求11所述的計算機可讀介質,還具有通過所述維用于訪問所述數據庫的計算機可執(zhí)行指令。
13.根據權利要求11所述的計算機可讀介質,還具有用于定義至少一個包括屬性序列的分層的計算機可執(zhí)行指令。
14.根據權利要求13所述的計算機可讀介質,其中每個分層定義用于訪問所述數據庫的檢索路徑。
15.根據權利要求13所述的計算機可讀介質,其中分層包括一個屬性。
16.根據權利要求13所述的計算機可讀介質,其中所述定義所述至少一個分層的行為與所述數據庫無關。
17.根據權利要求11所述的計算機可讀介質,其中所述定義所述屬性之間的關系的行為與所述數據庫無關。
18.根據權利要求11所述的計算機可讀介質,其中所述數據庫是關系數據庫。
19.根據權利要求11所述的計算機可讀介質,其中所述維同聯(lián)機分析處理(OLAP)系統(tǒng)一起使用。
20.一種用于訪問數據庫的系統(tǒng),所述系統(tǒng)包括處理器,耦合于存儲器,所述存儲設備包括所述數據庫;第一定義部件,用于定義包括多個屬性的維;分配部件,用于將每個屬性分配到所述數據庫的相應行;第二定義部件,用于定義所述屬性之間的關系;以及訪問部件,允許通過所述維訪問所述數據庫。
21.根據權利要求20所述的系統(tǒng),進一步包括第三定義部件,用于在每個維中定義至少一個分層,每個分層包括一序列屬性。
22.根據權利要求21所述的系統(tǒng),其中每個分層定義用于所述訪問部件的檢索路徑。
23.根據權利要求21所述的系統(tǒng),其中分層包括一個屬性。
24.根據權利要求21所述的系統(tǒng),其中所述第三定義部件定義所述至少一個分層的行為與所述數據庫無關。
25.根據權利要求20所述的系統(tǒng),其中所述第二定義部件定義所述屬性之間的關系的的行為與所述數據庫無關。
26.根據權利要求20所述的方法,其中所述維同聯(lián)機分析處理(OLAP)系統(tǒng)一起使用。
27.一種用于訪問數據庫的系統(tǒng),所述系統(tǒng)包括用于定義包括多個屬性的維的裝置;用于將每個屬性分配到所述數據庫的相應行的裝置;用于定義所述屬性之間的關系的裝置;用于通過所述維訪問所述數據庫的裝置;以及用于定義至少一個包括所述屬性序列的分層的裝置。
28.根據權利要求27所述的系統(tǒng),其中所述屬性之間關系的定義與所述數據庫無關。
29.根據權利要求27所述的系統(tǒng),其中所述至少一個分層的定義與所述數據庫無關。
30.根據權利要求27所述的方法,其中所述系統(tǒng)是聯(lián)機分析處理(OLAP)系統(tǒng)。
31.根據權利要求27所述的系統(tǒng),其中所述用于定義維的裝置,用于分配的裝置,用于定義關系的裝置,用于訪問的裝置和用于定義至少一個分層的裝置包括至少一個應用編程接口(API)。
32.一種由至少一個計算機可讀介質具體化的數據結構,包括包括多個屬性的維,其中每個屬性被綁定于數據庫的行中;以及指示所述多個屬性之間的關系的邏輯結構。
33.根據權利要求32所述的數據結構,所述數據結構還包括至少一個包括屬性序列的分層。
34.根據權利要求33所述的數據結構,其中每個分層提供用于訪問所述數據庫的檢索路徑。
35.根據權利要求33所述的數據結構,其中分層包括單一屬性。
36.根據權利要求33所述的數據結構,其中每個序列的定義與所述數據庫的限制條件無關。
37.根據權利要求32所述的數據結構,其中所述邏輯結構的定義與所述數據庫的限制條件無關。
38.根據權利要求32所述的數據結構,其中所述數據庫是關系數據庫。
39.根據權利要求32所述的數據結構,其中所述數據庫能夠同聯(lián)機分析處理(OLAP)系統(tǒng)一起使用。
40.一種用于從數據庫檢索數據的方法,所述方法包括接收包括維的數據檢索請求,其中所述維包括多個屬性;將每個屬性分配被到與所述數據庫的相應行;以及定義所述屬性之間的關系;以及通過所述維從所述數據庫檢索所述數據。
41.根據權利要求40所述的方法,進一步包括提供所述檢索數據以響應所述數據檢索請求。
42.根據權利要求40所述的方法,所述所述數據檢索請求還至少包括包含有所述屬性序列的分層。
43.根據權利要求42所述的方法,其中每個分層提供用于訪問所述數據庫的檢索路徑。
44.根據權利要求42所述的方法,其中分層包括單一屬性。
45.根據權利要求42所述的方法,其中每個序列的定義與所述數據庫的限制條件無關。
46.根據權利要求40所述的方法,其中所述屬性之間的所述關系的定義與所述數據庫的限制條件無關。
47.根據權利要求40所述的方法,其中所述數據庫是關系數據庫。
48.根據權利要求40所述的方法,其中所述數據庫能夠同聯(lián)機分析處理(OLAP)系統(tǒng)一起使用。
全文摘要
用于在OLAP系統(tǒng)中訪問關系數據庫中的數據的數據模型使用多層維。維包括一組屬性。每個屬性綁定于關系數據庫中的行。定義邏輯結構,用以指示屬性之間的關系。定義分層。每個分層包括一序列的屬性。分層提供一般的檢索路徑,數據庫用戶可以利用其訪問數據庫。分層可以包括單一屬性或屬性的組合。屬性之間的關系和分層中屬性序列之間的關系的定義與數據庫有關的任何限制條件無關。
文檔編號G06F12/00GK1573754SQ200410055038
公開日2005年2月2日 申請日期2004年6月24日 優(yōu)先權日2003年6月24日
發(fā)明者C·佩特克勒斯克, A·耐茨, M·帕蘇曼斯基, M·杜米特魯, A·伯格, P·J·杉德斯 申請人:微軟公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1