新四季網

在用戶設備上高速緩存和修改多維資料庫的部分的製作方法

2023-05-16 15:22:46 3

專利名稱:在用戶設備上高速緩存和修改多維資料庫的部分的製作方法
在用戶設備上高速緩存和修改多維資料庫的部分
些旦冃眾
多維資料庫(也稱為立方或統一維度模型(UMD))在當今商業界扮演越來越重要的角色,並且通常是聯機分析處理(OLAP)的關鍵組件。與只提供相對平坦的二維數據視圖的關係資料庫不同,多維資料庫通常提供更多的抽象維度。此外,多維資料庫通常對表示層次和層次組合提供全面支持。例如,由這種資料庫提供的多維視圖可表示產品線層次、商業組織層次、客戶層次、時間和其它維度的複雜組合。多維資料庫通常配置有基於數據的多個維度以及數據之間的關係來進行複雜計算的功能性。OLAP系統(定義為使用多維資料庫系統)的示例是可從華盛頓州雷德蒙市的微軟公司購得的Microsoft Analysis Services (分析服務)。
使用OLAP系統的報告工具(例如微軟Analysis Services)通常被配置成僅生成多維數據的靜態視圖。駐留在用戶設備(即客戶機)上的報告工具(例如諸如Microsoft Excel的應用程式)通過網絡向多維資料庫伺服器發送查詢,且伺服器生成視圖並將其發送回該用戶設備。該視圖是靜態的,因為它並不提供使用戶能夠通過與其交互以使用所報告的視圖數據進行試驗的有效機制,這種交互可通過諸如當它們依賴的值發生變化時對這些值進行重新計算來實現。即,不允許用戶使用視圖數據施行"如果...則..."場景。例如,應用程式可在電子數據表或表格中提供報告(即視圖),其中一個或多個單元的值取決於(即相關於) 一個或多個其它單元中的值。
為了對數據片變化的影響進行試驗,用戶必需在應用程式中作出改變,並將其發送到伺服器。然後,伺服器在多維資料庫中執行涉及數據片的伺服器端計算,並將變化報告給用戶。該變化是永久的,因為它保留在資料庫中,因此該變化被強加於共享該資料庫的其它用戶。此外,該用戶需要等待用戶設備與伺服器之間的通
信以及伺服器的計算時間。而且,隨著OLAP系統的用戶數量增加,涉及該伺服器的這種通信和計算的數量增大,這可導致網絡阻塞。該阻塞可進一步導致例如對查詢響應的延遲。
用於實現有關多維數據的"如果...則..."場景的另一選擇是將報告工具自身配置成在相關數據之間執行必要計算。然而,報告工具本質上相關其呈現數據的能力相當簡單。即,它們通常只能定義和表示相對平坦的二維數據視圖。因此,將多維資料庫的數據之間的複雜關係映射到由報告工具提供的數據視圖即使有可能也通常是非常艱巨的任務。此外,報告工具通常未被配置成執行改變多維資料庫的數據所需的通常很複雜的多維計算。此外,這些複雜計算中的某些涉及訪問未駐留在執行該報告的用戶設備上的數據(因為這些數據未表示在報告中)。這種數據必需從伺服器檢索,使得使用報告工具執行多維計算更加困難和耗時。
因此,當前可用的報告工具不適於使用戶對通過改變多維資料庫視圖上的數據而在該視圖上的影響進行試驗。
概述
本概述以簡化形式提供本發明諸方面的說明性上下文。這並不旨在用於確定要求保護的主題的範圍,也不旨在標識要求保護主體的關鍵和/或本質特徵。本發明的這些和其它方面在以下詳細描述中有更全面的描述。
對於多維資料庫(例如作為OLAP系統的一部分)的用戶,可將多維資料庫的至少一部分的副本(即本地立方)高速緩存到用戶設備本地。例如,用戶設備可
以為該用戶向多維資料庫伺服器(例如Microsoft Analysis Services伺服器)發送對本地立方的請求。基於該用戶的安全上下文,由伺服器為該用戶生成的立方可以是子立方,即包含少於多維資料庫全部的立方。伺服器可以在伺服器上存儲立方的安全副本,並且向用戶設備發送該立方,該立方可存儲在其本地。
然後,用戶可查詢本地立方而非多維資料庫伺服器。此外,本地立方可不僅包括來自資料庫的數據而且包括表示數據片之間依賴關係的函數。用戶設備上的報告工具被配置成與本地立方通信。報告工具可查詢本地立方並執行涉及來自本地立方和本地(例如易失性)存儲器的數據的操作。例如,對來自本地立方的數據進行的操作(可以包括多維操作)可作為執行報告工具的計算機進程或從其產生的計算機進程的一部分。這些操作還可從本地立方訪問。因此,用戶可"離線"工作,即在不連接到資料庫伺服器的情況下工作。用戶可使用該能力來在本地使用"如果...則..."場景進行試驗,而無需訪問遠程伺服器。
例如,可設置將所有查詢從諸如Microsoft Excel的前端報告工具引導到本地高速緩存數據的瘦客戶機端查詢層。因此,前端報告工具可滿足用戶需要而不連接到數據伺服器。用戶能夠自由修改報告中出現的數據,並且這種修改可被發送到本地立方。於是,所有這些相關數據修改(計算、聚集等)可如同客戶機端進程中的存儲器內操作一樣相對快速地計算,並向用戶傳遞(例如顯示)。例如,用戶可對
電子數據表應用程式(例如Microsoft Excel)的第一單元進行修改,所得資料庫操作可本地進行,電子數據表中的受影響單元可在向用戶呈現的用戶界面顯示中得到更新。
向用戶設備提供本地立方的多維資料庫伺服器可對本地立方加時間戳。可在用戶設備上維護對本地立方作出的修改的列表,並可對這些修改的每一個加時間戳。基於表示本地立方從多維資料庫伺服器加載的時間的時間戳和/或在修改列表中列舉的修改的時間戳,本地立方中的數據可與來自其所拷貝的多維資料庫伺服器的數據同步。同步更新可以是增量的或者可涉及本地立方的全部刷新,並且可以是用戶發起和/或在預定時間處進行的。
在本發明的實施方式中,在通信網絡的用戶設備上提供一種使用存儲在作為通信網絡上與用戶設備分離的設備的網絡設備上的多維資料庫至少一部分的系統。該多維資料庫由通信網絡上多個用戶設備共享。該系統包括控制在用戶設備的非易失性存儲介質上存儲多維資料庫的至少一部分的副本的存儲控制器。
在本實施方式的一個方面中,該系統還包括查詢控制器,它從在用戶設備上執行的應用程式接收對包含在多維資料庫的至少一部分中的信息片的請求,並控制從非易失性存儲介質上的副本來檢索該信息片。
在本實施方式的另一方面中,多維資料庫的至少一部分包括作為該至少一部分中包含的至少第二信息片的函數的至少第一信息片,且存儲控制器用於控制在非易失性存儲介質上的副本中存儲該函數。在本方面中,該系統還包括響應於應用程式修改用戶設備的易失性存儲器中第二信息片的值而對易失性存儲器中的第一信息片執行該函數的函數控制器。
在本實施方式的另一方面中,函數控制器用於將函數的執行結果傳遞到應用程式的用戶界面顯示,使得從函數執行得到的第一信息片的值得到顯示。
在本實施方式的另一方面,該修改是在易失性存儲器中對多維資料庫的至少一部分的副本中包含的一個或多個信息片做出的多個修改之一。在本方面,該系統還包括控制向表示多個修改的修改列表中添加修改的修改列表控制器,其中修改列表駐留在易失性存儲器中。
在本實施方式的又一方面中,存儲控制器用於控制通過應用來自易失性存儲器的修改列表來更新非易失性存儲介質上的多維資料庫的至少一部分的副本。在本實施方式的另一方面中,存儲控制器用於控制將修改列表存儲在非易失性存儲介質上。
在本實施方式的另一方面中,該系統還包括控制將修改列表從用戶設備發送到網絡設備的伺服器接口控制器。
在本實施方式的另一方面中,應用程式用於從多維資料庫的至少一部分的副本生成報告。
在本實施方式的又一方面中,該系統還包括用於向網絡設備發送對多維資料庫的至少一部分的副本的請求並接收多維資料庫的至少一部分的伺服器接口控制器。
在本實施方式的另一方面中,該系統還包括用於從網絡設備接收指示對多維資料庫的至少一部分的一個或多個修改的至少一個通信的伺服器接口控制器。伺服器接口控制器還用於控制響應於至少一個通信而將多維資料庫的至少一部分的本地副本與多維資料庫的至少一部分進行同步。
在本發明的另一實施方式中,存儲在網絡設備上的多維資料庫的至少一部分由作為和通信網絡上網絡設備分離的設備的用戶設備使用。多維資料庫由通信網絡上的多個用戶設備共享。多維資料庫的至少一部分的副本存儲在用戶設備的非易失性存儲介質上。
在本實施方式的一個方面中,從在用戶設備上執行的應用程式接收對包括在多維資料庫的至少一部分內的信息片的請求,並且從非易失性存儲介質上的副本檢索該信息片。
在本實施方式的另一方面中,多維資料庫的至少一部分包括作為該至少一部分中包含的至少第二信息片的函數的至少第一信息片。在本方面中,該函數存儲在非易失性存儲介質上的副本中,並且響應於應用程式修改用戶設備上易失性存儲器中第二信息片的值而在易失性存儲器中對第一信息片執行該函數。
在本實施方式的另一方面中,該函數執行的結果向用戶設備的用戶顯示。
在本實施方式的又一方面中,修改是在易失性存儲器中對多維資料庫的至少一部分的副本中包含的一個或多個信息片作出的多個修改之一。在本方面中,將修改添加到表示多個修改的修改列表,該修改列表駐留在易失性存儲器中。
在本實施方式的另一方面中,非易失性存儲介質上的多維資料庫的至少一部分的副本通過應用來自易失性存儲器的修改列表來更新。
在本實施方式的另一方面中,修改列表存儲在非易失性存儲介質上。在本實施方式的另一方面中,修改列表從用戶設備發送到網絡設備。在本實施方式的又一方面中,從多維資料庫的至少一部分的副本生成報告。在本實施方式的另一方面中,從用戶設備向網絡設備發送對多維資料庫的至少一部分的副本的請求,並在用戶設備處接收多維資料庫的至少一部分的副本。
在本實施方式的另一方面中,從網絡設備接收指示對多維資料庫的至少一部分的一個或多個修改的至少一個通信。響應於至少一個通信將多維資料庫的至少一部分的本地副本與多維資料庫的至少一部分同步。
在本發明的另一實施方式中,提供電腦程式產品。該產品包括計算機可讀介質以及存儲在計算機可讀介質上的定義指令的計算機可讀信號,作為由計算機執行的結果,這些指令指示計算機執行在以上各段描述的本發明的實施方式的方法和/或以下各段中描述的一個或多個方面。
結合附圖,從以下包括本方面的諸方面和實施方式的本發明的詳細描述,本方面的其它優點、新穎特徵和目的及其諸方面和實施方式將變得顯而易見。附圖是示意性的,不旨在按比例繪製。在附圖中,在不同附圖中的每個相同或近似相同的組件由單個附圖標記來表示。為了清楚起見,並未在每個附圖中標出全部組件,也未標出每個實施方式的每個組件以及本方面的每個方面,對其的說明對本領域技術人員理解本發明是沒有必要的。
附圖簡述


圖1是示出根據本方面某些實施方式的多維資料庫系統的示例的框圖2是示出根據本方面的某些實施方式的用於在用戶設備上使用存儲在和通
信網絡上用戶設備分離的網絡設備上的多維資料庫的系統的示例的框圖3是示出根據本方面某些實施方式的在用戶設備上使用存儲在遠離通信網
絡上用戶設備設置的網絡設備上的多維資料庫至少一部分的方法示例的流程圖;圖4是示出實現本方面的某些實施方式的計算機系統示例的框圖;以及圖5是示出可作為實現本方面某些實施方式的計算機系統的一部分使用的存
儲系統示例的框圖。
詳細描述
雖然以下主要關於Microsoft Excel作為報告工具來描述本方面的某些實施方式,但是應該意識到本方面並不限於此。可以使用各種其它報告工具中的任一種。此外,雖然關於Microsoft⑧Analysis Services來描述本發明的某些實施方式,但是 可以使用其它多維資料庫系統(即OLAP)或模仿OLAP的關係資料庫系統(通常 稱為ROLAP),且這落在本方面的範圍內。
本方面的這些和其它實施方式的功能和優點可從以下描述的示例而得到更全 面的理解。以下示例旨在便於更好理解以及示出本方面的益處,但並不例示本方面 的全部範圍。
如本文所使用的,無論是在說明書或權利要求術中,術語"包含"、"包括"、 "帶有"、"具有"、"含有"、"涉及"等應被理解為開放性的,即表示包括但並不限 於此。只有常規詞語"由...組成"和"主要由...組成"才是封閉式或半封閉式的常 規詞語,如美國專利局專利審查程序手冊(英文版,修訂版2, 2004年5月)的 2111.03節中相對於權利要求書所闡述的。
示例
圖1是示出根據本發明某些實施方式的多維資料庫系統示例的框圖。系統100 只是多維資料庫系統的說明性實施方式,並不旨在限制本發明的範圍。諸如系統 100的變型的這種系統的許多其它實現中的任一個都是可能的,並且旨在落在本發 明的範圍內。
系統100可包括以下任何項用戶設備102、 104和106;通信網絡108;服
務器112;多維資料庫114;其它網絡元件;或上述的任何適當組合。
如本文所使用的,"網絡"是由一段或多段傳輸介質互連的兩個或更多網絡元 件的定義組。可包括網絡設備的一個或多個網絡元件可被配置成在一段或多段傳輸 介質上發送和/或接收對一個或多個網絡元件的通信。例如當向網絡添加網絡元件 和/或用戶登陸到網絡時,以及當移除網絡元件和/或用戶註銷時,作為網絡定義組 成員的網絡元件可隨時間變化。每段可以是各種類型的傳輸介質中任一種,包括由 金屬和/或光纖、空氣(例如使用通過載波的無線通信)製成的一個或多個電學或 光學線或纜線或者這些通信介質的任意組合。如本文所使用的,"多個"表示兩個 或更多。應該意識到,網絡可以是由單線、總線、無線連接或其它類型的段連接的 可簡單到兩個元素的網絡。此外,應該意識到,當在本申請的附圖中將網絡示為連 接到附圖中的元件時,所連接的元件自身也被示為網絡的一部分。
如本文所使用的,"網絡設備"是用於在網絡上通信的設備,包括但不限於 工作站、個人計算機、終端、膝上型計算機、終端站、用戶設備、伺服器、網關、寄存器、交換機、路由器、集線器、網橋、目錄、發送器、接收器、轉發器及其任 意組合。如本文所使用的,"用戶設備"是用戶可向其發送通信或從其接收通信並 可用作在通信網絡上通信的終點的網絡設備。應該意識到,用戶設備並不總是網絡 的一部分。用戶設備包括但不限於工作站;個人計算機(例如PC);膝上型計算 機、筆記本計算機;電話(例如座機或移動);尋呼機;BlackberryTM牌設備、PCS 設備、個人數字助理(PDA)、雙向無線電(例如"對講機")、其它類型的用戶設 備以及以上的任意合適組合。
網絡108可以是和/或包括各種類型的網絡的任一種,包括但不限於,區域網
(LAN)、城域網(MAN)、廣域網(WAN)、無線網絡(例如上述那些中任一種)、 另一類型的網絡、上述的任意合適組合。
如圖1所示,伺服器112和多維資料庫114可駐留在同一網絡設備110上。 然而,應該意識到伺服器112和多維資料庫114也可駐留在分離設備上。
伺服器112可控制對多維資料庫114的訪問,該資料庫可由多個用戶設備共 享,包括用戶設備102、 104和106。應該意識到雖然圖1隻示出三個用戶設備, 但是系統IOO可包括幾十、幾百甚至幾千個用戶設備。此外,在網絡108上可能存 在多個伺服器。每個用戶設備可通過經由通信網絡108與伺服器112交換通信來訪 問和/或修改存儲在多維資料庫114中的數據。例如,用戶設備可配置有査詢控制 器(例如客戶機端查詢層),該査詢控制器被配置成與伺服器112上的查詢控制器
(例如伺服器端查詢層)通信以實現查詢。此外,用戶設備可配置有對數據實現修 改並將這些修改傳遞到伺服器112的其它邏輯,該邏輯可對駐留在資料庫114上的 數據進行修改。
此外,在本發明的某些實施方式中,伺服器112可被配置成響應於從用戶設 備102、 104和106之一收到的請求生成作為多維資料庫114的至少一部分的立方。 伺服器112可將該立方傳遞到請求用戶設備。該傳遞也包括表示該立方生成時間的 時間戳。該時間戳可由請求用戶設備用於將立方與多維資料庫114同步,如以下更 詳細描述。伺服器112可基於用戶或用戶組的安全上下文生成立方。例如,伺服器 112可以只選擇資料庫114中用戶被授權的那些部分(即切片)。該選擇可涉及考 慮信息片之間的依賴性。此外,在某些實施方式中,請求可指定對待選擇的數據的 一個或多個其它限制,伺服器112可在生成立方時考慮這些限制。
如以下更詳細描述,用戶設備(例如用戶設備102、 104或106)可被配置成 生成表示對存儲在本地立方中的一個或多個信息片進行的修改的修改列表,並且可被配置成向伺服器U2發送該修改列表。伺服器112可被配置成將修改列表中的修
改應用到多維資料庫114以及向共享多維資料庫的一個或多個用戶設備報告這些 修改。此外,伺服器112可被配置成向共享資料庫的多個用戶設備周期性發送更新, 並且每次更新可包括時間戳。這些更新可指定對多維資料庫114的修改。此外,服 務器112可被配置成解決兩個不同用戶設備由於在這些用戶設備之一或兩者收到 周期性更新而對多維資料庫114中同一信息片進行的修改之間的衝突。
圖2是示出根據本方面某些實施方式的在用戶設備上使用存儲在和通信網絡 上的用戶設備分離的網絡設備上的多維資料庫的系統200的示例的框圖。系統200 只是在用戶設備上使用存儲在和通信網絡上用戶設備分離的網絡設備上的多維數 據庫的系統的說明性實施方式,並不旨在限制本方面的範圍。諸如系統200的變體 的這種系統的許多其它實現中任一個都是可能的,並落在本方面的範圍內。
系統200可包括以下任何項用戶接口 208;應用程式210;伺服器接口控制 器212;修改列表控制器214;函數控制器216;查詢控制器218;存儲控制器220; 非易失性存儲介質222;通信網絡230;其它組件;和以上的任何合適組合。如圖
2所示,在某些實施方式中,應用程式210可以是和組件212-220分離的不同組件。 在其它實施方式中,這些組件的一個或多個可集成在應用程式210中。例如,組件 212-220的一個或多個或者它們提供的功能可實現為應用程式210(例如Microsoft Excel)的插件。此外,組件208-220中的一個或多個可在應用程式210的執行期 間(即運行時期間)存儲在易失性存儲器206中。
非易失性存儲器介質可在不同時間在其上存儲報告文件224、本地立方226、 修改列表228、其它組件或以上的任意合適組合,以下將詳細描述每一個。
組件206-228全部駐留在用戶設備204上(例如系統100的用戶設備102-106 中任一個),如圖2所示,但是在某些實施方式中,這些組件的一個或多個可駐留 在不同設備上。例如,非易失性存儲介質222可駐留在和用戶設備204分離的設備 上。組件208-220的一個或多個可被視為客戶機/伺服器系統的客戶機的一部分, 其中伺服器可以是諸如伺服器112的多維資料庫的伺服器。
伺服器接口控制器212可被配置成控制向伺服器112發送對多維資料庫114 的至少一部分的請求。作為響應,控制器212可接收多維資料庫的一部分。存儲控 制器220可被配置成控制在諸如存儲介質222的非易失性存儲介質上存儲本地立方 226。如本文所使用的,"本地立方"是存儲在(將要存儲在)用戶設備的非易失性 介質上的多維資料庫的至少一部分的副本。在本發明的某些實施方式中,本地立方226可針對用戶設備204的一個或多 個用戶。例如,本地立方226可包括用戶設備204的一個或多個用戶允許訪問的多 維資料庫的一個或多個部分。在該實施方式中,根據對多維資料庫系統實現的安全 系統基於一個或多個用戶的安全上下文來確定要包括在本地立方中的一個或多個 部分。在該實施方式中,小心確保本地立方226中沒有包含多維資料庫中一個或多 個用戶未被授權訪問的部分。如上所述,伺服器112可在生成立方時實現這些安全 測量。如此限制這些部分可涉及考慮多維資料庫中包括的數據片之間的依賴關係。
如上所述,在用戶設備204上高速緩存本地立方226以及允許用戶訪問和使 用存儲在本地立方226中的數據和函數可為用戶提供更快速的訪問和計算時間。此 外,在本地立方226小於多維資料庫的全部的情形中,也可能是用戶被限制於只能 訪問其中的某些數據的情形中,訪問和處理速度可因數據量的減小而進一步增大。
用戶接口 208可被配置成接收和輸出用戶輸入和輸出202,並用作用戶與應用 程序210和/或用戶設備204上其它組件之間的接口 。如本文所使用的,"用戶接口 " 是使用戶能夠在應用程式的執行期間與該應用程式進行接口的應用程式或應用程 序的一部分(即計算機可讀指令的子集)。用戶接口可包括定義應用程式在應用程 序執行期間如何向用戶輸出信息的代碼,例如通過計算機屏幕或其它裝置視覺輸 出,通過其它裝置的揚聲器聽覺輸出,以及通過遊戲控制器或其它裝置手動輸出。 這種用戶接口也可包括定義用戶在應用程式執行期間輸入信息的代碼,例如使用麥 克風聽覺輸入或使用鍵盤、滑鼠、遊戲控制器、跟蹤球、觸控螢幕或其它裝置手動輸 入。
用戶接口可定義如何向用戶視覺呈現(即顯示)信息,以及定義用戶如何導 航信息的視覺表示(即顯示)並在視覺表示的上下文中輸入信息。在應用程式執行 期間,用戶接口可控制信息的視覺表示並使用戶能夠導航視覺表示並在視覺表示的 上下文中輸入信息。用戶接口的類型的範圍從用戶鍵入命令的命令驅動接口、用戶 從菜單選擇命令的菜單驅動接口及其結合到GUI,其中GUI通常利用計算機圖形 能力的優點、更加靈活、直觀和易於導航並且比命令驅動和菜單驅動的視覺用戶接 口具有更吸引人的"感觀"。如本文所使用的,由用戶接口或GUI呈現的信息的視 覺表示分別稱為"用戶界面顯示"或"GUI顯示"。
應用程式210可以是使用戶能夠從存儲在多維資料庫114中的數據產生報告 的報告工具或其它類型的應用程式。在本發明的某些實施方式中,應用程式210 可被配置成與用戶設備204上的一個或多個組件交互(或包括它們)以從本地立方226而非多維資料庫114訪問這些數據。例如,查詢控制器218可被配置成從應用 程序210接收對本地立方226中(以及多維資料庫114自身中)包含的信息片的請 求,並控制從本地立方226而非資料庫114檢索信息片。
除了存儲從資料庫114和本地立方226拷貝的數據之外,存儲控制器220可 被配置成在本地立方226中存儲從資料庫114拷貝的函數。這些函數可定義存儲在 本地立方中的數據片之間的關係,並包括一個或多個操作,包括一個或多個多維操 作。例如,第一信息片可具有作為至少第二信息片的函數的值。響應於用戶對應用 程序210中的第二信息片作出的修改,函數控制器216可對第一數據片執行該函數 以修改其值。函數控制器216可被配置成在易失性存儲器206中執行該函數,從而 提供比原本該函數在伺服器112和/或多維資料庫114上遠程執行時可用的時間更 快的處理時間。因此,用戶可用不同信息片的不同值試驗以確定這些值如何影響本 地存儲器中的其它信息片的值,而無需保留這些修改。這些函數的執行結果例如可 響應於用戶請求刷新由用戶接口呈現的數據而通過用戶接口 208向用戶顯示。
例如,用戶可修改在電子數據表應用程式(例如Microsoft Excel)的第一單 元中出現的值。該值可表示來自存儲在本地立方226中的多維資料庫的信息片的 值。該信息片可與本地立方226中的一個或多個其它信息片相關,且這些關係中的 每一個可由一個或多個多維操作定義。響應於用戶修改單元中的值,函數控制器 216被配置成使用來自本地立方226的多維操作重新計算所有相關信息片的值。在 新的值被計算之後,函數控制器216可將這些新的值傳遞到應用程式210和/或用 戶接口 208,使得表示作為重新計算的結果而修改的值的任何單元被更新以反映該 修改。
在本發明的某些實施方式中,對信息片的修改由修改列表控制器214記錄在 修改列表中。這種修改列表可在易失性存儲器206中維護,並可作為修改列表228 保留在非易失性存儲介質中和/或向伺服器112發送使得這些修改被記錄在多維數 據庫114中。對於修改列表中的每個修改,時間戳可與修改一同記錄。這些時間戳 用於將本地立方226與多維資料庫114同步,如以下更詳細描述。
例如,應用程式210的用戶可通過修改一個或多個信息片的值以查看這對其 它信息片的影響來試驗。每次用戶修改信息片,該修改被記錄在易失性存儲器中的 修改列表中。在用戶完成試驗之後,用戶就可將已更改的信息片修改回其原始值或 使一個或多個信息片保持修改。用戶可保存該報告或包括信息片的其它文檔作為報 告文件224,並且可將修改列表應用到本地立方226。此外,修改列表自身可作為修改列表228存儲在存儲介質222中。
伺服器接口控制器212可被配置成向伺服器112發送修改列表228,使得這些 修改應用到多維資料庫114。例如伺服器接口控制器212可被配置成向伺服器112 周期性發送修改列表228和/或響應於例如將修改列表228保存到存儲介質222、關 閉應用程式210、用戶命令等的事件而發送修改列表。修改列表228可在向伺服器 112發送修改列表之後從存儲介質222刪除以確保不再次對多維資料庫114進行相 同的修改,以維護數據的完整性。而且,可使用其它同步技術,這些技術在修改列 表中採用時間戳和/或在修改列表228中維護反映向伺服器112發送的修改列表中 最後修改的指示。
伺服器112可被配置成協調修改列表228內的修改與多維資料庫114內的數
據的同步。例如,伺服器112可被配置成在用戶對用戶設備上的自從上次將該信息
片從資料庫114加載到用戶設備以來己修改過的信息片進行修改的事件中對數據
進行同步。此外,伺服器112可被配置成將對多維資料庫114做出的修改推入(例
如周期性)共享資料庫114中數據的多個用戶設備(例如用戶設備102-106)。用戶
設備隨後可使用所推入的修改來更新其本地立方。
每個共享多維資料庫的用戶設備可被配置成自身使用同步技術。例如,用戶
設備204的伺服器接口控制器212可用於將本地立方226與多維資料庫114同步。 如上所述,從伺服器向包括該本地立方的用戶設備204的通信也可包括表示該本地 立方生成時間的時間戳。同樣如上所述,伺服器可被配置成向用戶設備發送包括時 間戳的周期性更新。伺服器接口控制器212可被配置成響應於收到這些周期性通信 而例如基於與本地立方226通信的時間戳將本地立方226與多維資料庫114同步。 控制器212可被配置成將來自伺服器112的與更新一起被包含的時間戳與最初與本 地立方226通信的時間戳進行比較。如果更新的時間戳晚於本地立方的時間戳,則 本地立方過時並需要同步。
本地立方226和伺服器接口控制器212可被配置成使本地立方226增量更新; 即僅僅是本地立方226中從上次更新以來已發生改變的信息片。此外,伺服器接口 控制器212也可被配置成也執行本地立方226的完全刷新。例如,控制器212可被 配置成如果它確定從伺服器接收到的更新包括本地立方226中未包括的修改則向 伺服器112請求當前本地立方。
伺服器接口控制器200可被配置成響應於從伺服器112接收更新來處理不同 的同步情況。例如,如果從上次增量更新或刷新本地立方226以來未對本地立方226進行修改,則不對本地立方226進行增量更新,也不對本地立方進行完全刷新。 如果從上次增量更新或完全刷新以來已對本地立方226進行了修改,則控制器212 可被配置成在本地立方226上執行完全刷新,然後重新應用這種修改。例如控制器 212可重新應用在修改列表228中維護的在從伺服器112接收更新與上次增量更新 或刷新之間發生的修改。
在某些實施方式中,當控制器212處於將修改列表228向伺服器112傳遞的 進程中時,控制器212可"預覽這些修改"。g卩,控制器212可將正在傳遞的修改 與多維資料庫114上還未向用戶設備204傳遞的修改進行比較。例如,控制器212 可從伺服器112請求更新(獨立於任何周期性更新),然後將在更新中指定的修改 與正在傳遞的修改列表中的修改進行比較。控制器212可使用各種技術中的任一種 解決這些修改之間的衝突,這些技術例如基於更新中指定的修改對本地立方226 進行增量修改,然後應用來自修改列表的修改;或者通過在本地立方226上執行完 全刷新,重新應用修改列表228中的修改,然後將修改列表228發送到伺服器112。
系統100和200及其組件可使用各種技術中的任一種實現,這些技術包括軟 件(例如C、 C#、 C++、 Java或其組合)、硬體(例如一個或多個專用集成電路)、 固件(例如電可編程存儲器)或其任意組合。系統100和/或200的組件中的一個 或多個可駐留在單個設備(例如計算機),或者一個或多個組件可駐留在分離的離 散設備上。此外,每個組件可分布在不同設備上,並且設備的一個或多個可互連。
此外,在包括系統100和/或200的一個或多個組件的一個或多個設備的每一 個上,每個組件可駐留在系統的一個或多個位置內。例如,這些系統的組件的不同 部分可駐留在設備上存儲器(例如RAM、 ROM、磁碟等)的不同區域中。這種一 個或多個設備的每一個可包括諸如多個已知組件,諸如一個或多個處理器、存儲器 系統、盤存儲系統、 一個或多個網絡接口和互連各種組件的一個或多個總線或其它 內部通信鏈路。系統100和/或200及其組件可使用諸如以下相關於圖4和5描述 的計算機系統來實現。
圖3是示出根據本方面的某些實施方式在用戶設備上使用存儲在遠離通信網 絡上用戶設備設置的網絡設備上的多維資料庫的至少一部分的方法300的示例的 流程圖。方法300隻是在用戶設備上使用存儲在遠離通信網絡上用戶設備設置的網 絡設備上的多維資料庫的至少一部分的方法的說明性示例,並不旨在限制本方面的 範圍。諸如方法300的變型的這種方法的許多其它實現的任一種是可能的,並落在 本方面的範圍內。最初,用戶設備可向多維資料庫的伺服器(未示出)發送對多維資料庫的至 少一部分的請求,例如以上相關於圖1的系統200所述。作為響應,伺服器可生成 該至少一部分的副本,並將該至少一部分發送到用戶設備(未示出),例如以上相
關於系統200所述。
在動作302,多維資料庫的至少一部分的副本可存儲在例如以上相關於系統 200的存儲控制器220描述的用戶設備的非易失性存儲介質上。在動作304,響應 於來自在用戶設備上執行的應用程式的對包括在多維資料庫的至少一部分(即本地 立方)中的信息片的請求,可從本地立方檢索信息片。在動作304可如上相關於系 統200所述地執行。
如上所述,在某些實施方式中,至少一個或多個第一信息片可以是本地立方 的第二信息片的值的函數(即取決於)。因此,在動作306,響應於應用程式改變 用戶設備上易失性存儲器中的第二信息片的值,該函數(例如一個或多個操作)可 對易失性存儲器中第一信息片執行。動作306可由如以上相關於圖2所述的系統 200的函數控制器216執行。
在動作308,從函數執行得到的第一信息片的值可在由應用程式提供的用戶界 面顯示內顯示,如相關於系統200所述。在動作310,可將修改添加到表示多個修 改的修改列表中。例如,修改列表可駐留在易失性存儲器中。動作310可由如上相 關於圖2所述的系統200的修改列表控制器214執行。
在動作312,本地立方的副本可通過將來自易失性存儲器的修改列表應用到本 地立方來更新,例如以上相關於方法200所述。
在動作314,可將修改列表存儲在非易失性存儲介質中,例如以上相關於方法 200的修改列表控制器214所述。在動作316,可將修改列表從用戶設備發送到網 絡設備,例如如以上相關於系統200的伺服器接口控制器212所述。
雖然未在圖3中示出,但是方法300可包括從多維資料庫伺服器接收可指定 對多維資料庫的更新的周期性通信。可響應於接收這種更新而向本地立方和/或多 維資料庫施加各種同步技術的任一種,例如以上相關於系統200所述的那些中任一 種。
在動作318,可從本地立方生成報告,例如以上相關於200所述。 方法300的一個或多個動作可並行(至少部分並行)執行或者以不同於圖3 所示的次序執行。例如,生成報告的動作318可在方法300的執行期間任何時刻執 行。此外,從用戶設備向網絡設備發送修改列表的動作316可分別在更新立方和將
18修改列表存儲在存儲介質的動作312和314之前執行。此外,方法300的動作中的 一個或多個可例如響應於事件而在動作300的一個或多個其它動作執行之後重複。 動作300可使用基於事件的編程和處理技術,其中,各種動作可響應於特定事件執 行,而無需以方法300所示的順序。
方法300及其動作以及該方法和這些動作的各種實施方式和變型可由實際上 嵌入到例如非易失性記錄介質、集成電路存儲器元件或其組合的一個或多個計算機 可讀介質上的計算機可讀信號獨立地或組合地定義。計算機可讀介質可以是可由計 算機訪問的任何可用介質。作為示例而非限制,計算機可讀介質可包括計算機存儲 介質和通信介質。計算機存儲介質包括以任何方法或技術實現用來存儲諸如計算機 可讀指令、數據結構、程序模塊或其它數據的信息的易失性和非易失性、可移動和 不可移動介質。計算機存儲介質包括,但不限於RAM、 ROM、 EEPROM、快閃記憶體或 其它存儲器技術、CD-ROM、數字多功能盤(DVD)或其它光學存儲、盒式磁帶、 磁帶、磁碟存儲或其它磁性存儲設備、其它類型的易失性和非易失性存儲器、可用 於存儲所需信息並且可由計算機訪問的任何其它介質、以及以上的任何合適組合。
通信介質通常體現為在諸如載波或其它傳輸機制的調製數據信號中的計算機 可讀指令、數據結構、程序模塊或其它數據。術語"調製數據信號"表示以在該信 號中編碼信息的方式設定或更改其特徵的一個或多個的信號。作為示例而非限制, 通信介質包括諸如接線網絡或直接接線連接的有線介質、諸如聲學、RF、紅外的 無線介質或其它無線介質、其它類型的通信介質、以及以上的任意適當組合。
在一個或多個計算機可讀介質上具體化的計算機可讀信號可定義作為一個或 多個程序的一部分的指令,作為由計算機執行的結果,這些指令指示計算機執行本 文所述的功能中的一個或多個(例如方法300或其任何動作)和/或各種實施方式、 變型及其組合。這種指令可以以各種程式語言中的任一種編寫,例如Java、 J#、 Visual Basic、 C、 C#、或C++、 Fortran、 Pascal、 Eiffd、 Basic、 COBOL等或其各 種組合中的任一種。這種指令所具體化的計算機可讀介質可駐留在本文所述的系統 100、 200、 400和500中任一個的組件的一個或多個上,可在這種組件的一個或多 個上分布,並可在其間變換。
計算機可讀介質可以是可運輸的,使得可將存儲其上的指令加載到任何計算 機系統資源上以實現本文所述的本發明的諸方面。此外,應該意識到,如上所述的 存儲在計算機可讀介質上的指令並不限於體現為作為在主機計算機上運行的應用
程序的一部分的指令。相反,這些指令可體現為可用於編程處理器以實現本發明的上述方面的任何類型的計算機代碼(例如軟體或微代碼)。
應該意識到,執行本文所述的功能的諸如相關於圖1、 2、 4和5描述的計算 機系統的計算機系統的多個組件的任何單個組件或組件集通常可被示為控制這些 功能的一個或多個控制器。一個或多個控制器可使用採用微代碼或軟體進行編程以 實現上述功能或以上任意合適組合的處理器來以許多方法實現,諸如使用專用軟體 和/或固件。
根據本發明的各種實施方式可在一個或多個計算機系統上實現。這些計算機
系統可以是例如基於Intel PENTIUM (因特爾奔騰)型處理器、摩託羅拉PowerPC、 Sun UltraSPARC^ Hewlett-Packard(惠普)PA-RISC處理器、可從超微半導體(AMD) 購得的各種處理器中任一種或者任何其它類型的處理器的通用計算機。應該意識 到,任何類型的計算機系統中的一個或多個可用於實現本發明的各個實施方式。
根據本發明的一實施方式的通用計算機系統被配置成執行上述功能的一個或 多個。應該意識到,該系統可執行其它功能並且本發明並不限於具有任何特定功能 或功能集。
例如,本發明的各個方面可實現為在諸如圖4中所示的通用計算機系統400 上執行的指定軟體。計算機系統400可包括連接到諸如磁碟驅動器、存儲器或其它 用於存儲數據的設備的處理器403。存儲器404通常用於在計算機系統400的操作 期間存儲程序和數據。計算機系統400的組件可通過包括一個或多個總線(例如在 集成在同一機器中的組件之間)和/或網絡(例如駐留在分離離散機器上的組件之 間)的互連機制405來耦合。互連機制405可在系統400的系統組件之間實現通信
(例如數據、指令)。計算機系統400還包括一個或多個輸入設備402,諸如鍵盤、 滑鼠、跟蹤球、麥克風、觸控螢幕,以及一個或多個輸出設備401,諸如列印設備、 顯示屏、揚聲器。此外,計算機系統400可包含將計算機系統400連接於通信網絡
(除了互連機制405之外,或者作為其替代)的一個或多個接口 (未示出)。
在圖5中更詳細示出的存儲系統406通常包括計算機可讀並且可寫的非易失 性記錄介質501,在該介質上存儲的信號定義了由處理器執行的程序或者在介質 501上或其中存儲的信息可由該程序處理。例如,該介質可以是磁碟或快閃記憶體。通常 在操作中,處理器使數據從非易失性記錄介質501讀取到允許由處理器比介質501 更快速訪問的另一存儲器502中。該存儲器502通常是諸如動態隨機存取存儲器
(DRAM)或靜態存儲器(SRAM)的易失性、隨機存取存儲器。它可如所示地位 於存儲系統406中或者位於存儲器系統404中(未示出)。處理器403通常操控集成電路存儲器404、 502中的數據,然後在處理完成之後將數據拷貝到介質501中。 用於在介質501與集成電路存儲器單元404、 502之間管理數據移動的各種機制是 已知的,並且本發明並不限於此。本發明並不限於特定存儲器系統404或存儲系統 406。
計算機系統可包括特定編程、專用硬體,諸如專用集成電路(ASIC)。本發明 的諸方面可在軟體、硬體或固件或其任意組合中實現。此外,這種方法、動作、系 統、系統元素及其組件可實現為上述計算機系統的一部分或者實現為獨立組件。
雖然計算機系統400作為實踐本發明的不同方面的一種計算機系統而作為示 例示出,但是應該意識到本方面的諸方面並不限於在圖4所示的計算機系統上實 現。本發明的不同方面可在具有與圖4所示不同的架構和組件的一個或多個計算機 上實施。
計算機系統400可以是可使用高級計算機程式語言編程的通用計算機系統。 計算機系統400也可以用特定編程、專用硬體實現。在計算機系統400中,處理器 403通常是諸如可從因特爾公司購買的公知的奔騰系列處理器的商用處理器。許多 其它處理器也可使用。這種處理器通常執行作業系統,諸如可從微軟公司購買的 Windows 95、 Windows 98、 Windows NT 、 Windows 2000 (Windows ME)或 \^11(10 8@乂?作業系統,可從蘋果計算機公司購買的MAC OS System X,可從太 陽微系統公司(Sun Microsystems)購買的Solaris Operating System,可從各種來源 獲得的Linux或UNIX。可以使用各種其它作業系統中的任一種。
處理器和作業系統一起定義了計算機平臺,其中可以高級程式語言編寫應用 程序。應該理解,本發明並不限於特定計算機系統平臺、處理器、作業系統、或網 絡。而且,對本領域技術人員顯而易見的是本發明不限於特定程式語言或計算機系 統,以及也可使用其它適當程式語言和其它適當計算機系統。
計算機系統的一個或多個部分可分布在耦合到通信網絡的一個或多個計算機 系統(未示出)。這些計算機系統也可以是通用計算機系統。例如,本發明的各個 方面可分布在配置成向一個或多個客戶端計算機提供服務(例如,伺服器)或執行 總的任務作為分布式系統一部分的一個或多個計算機系統上。,本發明的各個方面 可在包括分布在執行根據本方面不同實施方式的各種功能的一個或多個伺服器系 統上分布的組件的客戶機-伺服器系統上執行。這些組件可以是用通信協議(例如 TCP/IP)通過通信網絡(例如網際網路)傳遞的可執行、中間(例如IL)或解釋(例 如Java)代碼。應該意識到,本方面並不限於在任何系統或系統組上執行,並且本發明不限 於任何特定分布的架構、網絡或通信協議。
本發明的各個實施方式可用面向對象的程式語言來編程,諸如SmallTalk、 Java、 J#(J-Sharp)、 C++、 Ada或C# (C-Sharp)。也可以使用其它面向對象的編程語 言。或者,可以使用功能、腳本、和/或邏輯程式語言。本發明的各個方面可在非 編程環境中實現(例如在HTML、 XML或其它格式中創建的文檔,當在瀏覽器程 序的窗口中瀏覽這些文檔時呈現圖形用戶界面(GUI)的諸方面或執行其它功能)。 本發明的各個方面可被實現為已編程或未編程元件或其任意組合。此外,本發明的 各個實施方式可用可從微軟公司購買的Microsoft⑧.NET技術來實現。
現在已經描述了本發明的某些說明性實施方式,對本領域技術人員顯而易見 的是以上僅為說明性的而非限制,僅作為示例呈現。許多更改和其它說明性實施方 式在本領域普通技術之一的範圍內,並且可以預期落在本發明的範圍內。特別地, 雖然本文示出的許多示例涉及方法動作或系統元件的具體組合,但是應該理解這些
動作和這些元件可以通過其它方式組合以實現同一目的。僅相關於一實施方式描述 的動作、元件和特徵並不旨在排除出其它實施方式中的類似角色。此外,對於所附 權利要求書中所述的一個或多個裝置加功能的描述,裝置不旨在限制於本文所述的 用於執行所述功能的裝置,而是旨在涵蓋範圍內的任何已知或以後開發的用於執行 所述功能的等效裝置。
權利要求中使用諸如"第一"、"第二"、"第三"等的序數詞來修飾權利要求 元素,其自身並不表示任何優先級、先後次序、或一權利要求元素在另一個之前的 次序、或方法的動作執行的時間次序,而只是用作將具有特定名稱的一個權利要求 元件從具有相同名稱(但使用序數詞)的另一元件區分開以區別權利要求元素。
權利要求
1. 一種在通信網絡的用戶設備上的系統,用於使用存儲在作為所述通信網絡上與所述用戶設備分離的設備的網絡設備上的多維資料庫的至少一部分,所述多維資料庫由所述通信網絡上的多個用戶設備共享,所述系統包括存儲控制器,控制在所述用戶設備的非易失性存儲介質上存儲所述多維資料庫的所述至少一部分的副本;以及查詢控制器,從在所述用戶設備上執行的應用程式接收對包含在所述多維資料庫的所述至少一部分中的信息片的請求,並控制從所述非易失性存儲介質上的所述副本檢索所述信息片。
2. 如權利要求l所述的系統,其特徵在於,所述多維資料庫的所述至少一部 分包括作為所述至少一部分中包含的至少第二信息片的函數的至少第一信息片,以 及其中所述存儲控制器用於控制在所述非易失性存儲介質上的所述副本中存儲 所述函數,所述系統還包括函數控制器,響應於所述應用程式修改所述用戶設備的所述易失性存儲器中 所述第二信息片的值而對所述易失性存儲器中的所述第一信息片執行所述函數。
3. 如權利要求2所述的系統,其特徵在於,所述函數控制器用於將所述函數 的執行結果傳遞到所述應用程式的用戶界面顯示,使得從所述函數執行得到的所述 第一信息片的值得到顯示。
4. 如權利要求2所述的系統,其特徵在於,所述修改是在所述易失性存儲器 中對所述多維資料庫的所述至少一部分的副本中包含的一個或多個信息片進行的 多個修改之一,所述系統還包括修改列表控制器,控制向表示所述多個修改的修改列表添加所述修改,所述 修改列表駐留在所述易失性存儲器中。
5. 如權利要求4所述的系統,其特徵在於,所述存儲控制器用於控制通過應 用來自所述易失性存儲器的所述修改列表來更新所述非易失性存儲介質上的所述 多維資料庫的所述至少一部分的副本。
6. 如權利要求4所述的系統,其特徵在於,所述存儲控制器用於控制將所述 修改列表存儲在所述非易失性存儲介質上。
7. 如權利要求4所述的系統,其特徵在於,還包括伺服器接口控制器,控制將所述修改列表從所述用戶設備發送到所述網絡設備。
8. 如權利要求l所述的系統,其特徵在於,還包括伺服器接口控制器,用於從所述網絡設備接收指示對所述多維資料庫的所述 至少一部分的一個或多個修改的至少一個通信,以及用於控制響應於所述至少一個 通信而將所述多維資料庫的所述至少一部分的本地副本與所述多維資料庫的所述 至少一部分的同步。
9. 一種使用駐留在通信網絡的網絡設備上的多維資料庫的至少一部分的方 法,所述多維資料庫由所述通信網絡上的多個用戶設備共享並且包括作為包含在所 述至少一部分中的至少第二信息片的函數的至少第一信息片,所述方法包括以下動 作(A) 在作為與所述通信網絡上的所述網絡設備分離的設備的用戶設備的非易 失性存儲介質上存儲所述多維資料庫的所述至少一部分的副本,包括在所述非易失 性存儲介質上的所述副本中存儲所述函數;以及(B) 響應於應用程式修改所述用戶設備上易失性存儲器中的所述第二信息片 的值,對所述易失性存儲器中的所述第一信息片執行所述函數。
10. 如權利要求9所述的方法,其特徵在於,所述修改是在所述易失性存儲 器中對所述多維資料庫的所述至少一部分的副本中包含的一個或多個信息片進行 的多個修改之一,所述方法還包括以下動作(E) 向表示所述多個修改的修改列表添加所述修改,所述修改列表駐留在所 述易失性存儲器中。
11. 如權利要求IO所述的方法,其特徵在於,還包括以下動作(F) 通過應用來自所述易失性存儲器的所述修改列表來更新所述非易失性存 儲介質上的所述多維資料庫的所述至少一部分的副本。
12. 如權利要求IO所述的方法,其特徵在於,還包括以下動作 (F)在所述非易失性存儲介質上存儲所述修改列表。
13. 如權利要求IO所述的方法,其特徵在於,還包括以下動作(F) 將所述修改列表從所述用戶設備發送到所述網絡設備。
14. 如權利要求9所述的方法,其特徵在於,還包括以下動作(G) 從所述多維資料庫的所述至少一部分的副本生成報告。
15. 如權利要求9所述的方法,其特徵在於,還包括(C) 從所述網絡設備接收指示對所述多維資料庫的所述至少一部分進行的一 個或多個修改的至少一個通信;以及(D) 響應於所述至少一個通信將所述多維資料庫的所述至少一部分的本地副 本與所述多維資料庫的所述至少一部分同步。
16. —種電腦程式產品,包括 計算機可讀介質;以及存儲在所述計算機可讀介質上的定義指令的計算機可讀信號,作為由計算機 執行的結果,所述指令控制所述計算機執行使用駐留在通信網絡的網絡設備上的多 維資料庫的至少一部分的進程,所述多維資料庫由所述通信網絡上多個用戶設備共 享,所述進程包括以下動作(A) 從作為與所述通信網絡上的所述網絡設備分離的設備的用戶設備向所述 網絡設備發送對所述多維資料庫的至少一部分的副本的請求;(B) 在所述用戶設備處接收所述多維資料庫的所述至少一部分的副本;以及(C) 在所述用戶設備的非易失性存儲介質上存儲所述多維資料庫的所述至少 一部分的副本。
17. 如權利要求16所述的計算機可讀介質,其特徵在於,所述方法還包括以下動作(D) 響應於來自在用戶設備上執行的應用程式的對包含在所述多維資料庫的 所述至少一部分中的信息片的請求,從所述非易失性存儲介質上的所述副本檢索所 述信息片。
18. 如權利要求16所述的計算機可讀介質,其特徵在於,所述多維資料庫的所述至少一部分包括作為包含在所述至少一部分中的至少第二信息片的函數的至 少第一信息片,以及其中所述動作(A)包括將所述函數存儲在所述非易失性存儲介質上的所述副本中,所述計算機可讀介質還包括以下動作(c)響應於所述應用程式修改所述用戶設備上易失性存儲器中所述第二信息片的值,對所述易失性存儲器中的所述第一信息片執行所述函數。
19. 如權利要求18所述的計算機可讀介質,其特徵在於,所述修改是在所述易失性存儲器中對所述多維資料庫的所述至少一部分的副本中包含的一個或多個信息片進行的多個修改之一,所述進程還包括以下動作(E) 向表示所述多個修改的修改列表添加所述修改,所述修改列表駐留在所 述易失性存儲器中。
20.如權利要求19所述的計算機可讀介質,其特徵在於,所述進程還包括以下動作(F) 將所述修改列表從所述用戶設備發送到所述網絡設備。
全文摘要
對於多維資料庫(諸如作為OLAP系統的一部分)的用戶,可將多維資料庫的至少一部分的副本(即本地立方)高速緩存到用戶設備本地。然後,用戶可查詢本地立方而非多維資料庫伺服器。此外,本地立方可不僅包括來自資料庫的數據還包括表示數據片之間依賴性的函數。用戶設備上的報告工具可被配置成與本地立方通信,使得用戶可使用報告工具以通過訪問來自本地立方的數據和函數而在本地(例如易失性)存儲器中「如果…則…」的場景中試驗。例如,可以設置將所有查詢從前端報告工具引導到本地高速緩存數據的瘦客戶機端查詢層。
文檔編號G06F17/30GK101523388SQ200680027186
公開日2009年9月2日 申請日期2006年7月25日 優先權日2005年7月25日
發明者H·黃, S·V·拉瑪納坦, X·M·楊 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀