實時資料庫建模、存儲和訪問方法
2023-06-19 19:27:11
專利名稱::實時資料庫建模、存儲和訪問方法
技術領域:
:本發明涉及實時資料庫領域,尤其是一種實時資料庫建模方法及基於該建模方法的數據存儲和資料庫訪問方法。
背景技術:
:傳統資料庫系統一般採用實體一聯繫模型(E-R模型)或擴充實體-聯繫模型(EE-R模型)來對實際應用數據進行建模(概念模型),目前使用最為廣泛的關係型資料庫將這種概念模型轉換成關係模型進而轉換成二維表結構形式來存儲數據。這種模式易於理解,但不能滿足實時系統數據處理應用的需求。其局限性主要體現在以下兩個方面首先是數據模型上的限制,關係資料庫所採用的二維表格數據模型不能有效地處理帶有時態信息的三維或多維數據,結果往往是建立了大量的表,用了複雜的方式來處理,卻仍然很難模仿出數據的現實關係,更糟的是,這些表之間的連接經常隱藏在應用程式裡,而不是存在於更易於管理的資料庫中;第二是性能上的限制,為靜態應用例如報表生成而設計的關係資料庫管理系統並不是為高效數據處理而優化的,其結果是某些關係資料庫管理系統雖然能在為該產業特別開發的考機測試程序上取得滿意的性能,但是在實時數據處理的真實世界中其性能卻並不令人滿意。也就是說,由於在實時系統中,實時測控信息包含重要的時態信息,傳統資料庫系統把時態信息當作普通的參數(屬性)來對待,導致這些應用系統的資料庫中記錄數目呈急劇膨脹趨勢,比如一個數據項的採樣周期為1s,則1小時就會產生3600條記錄,在有多個數據項且它們的採樣周期又不同的連續測控系統中,記錄數增長的速度可想而知;而實時系統的時間和空間資源一般都不太充足,所以將傳統資料庫技術應用在實時系統中效率一直不理想。簡言之,傳統資料庫技術應用在實時系統中,模型表現力不夠,而且存儲和訪問效率低,在記錄數目眾多的情況下更是如此,實際應用中往往需要通過索引技術來提高效率,然而建立索引需要花費時間和存儲空間的代價。資料庫新技術中的對象關係資料庫等技術試圖改變這種現狀,但其實質是在關係資料庫的基礎上融合面向對象技術和傳統資料庫的一些特點,以及新的編程工具環境,以適應新的以InternetWeb為基礎的應用,並未對實時資料庫設計的方法提出根本的建議。中國專利00811092號申請文件公開了「實時資料庫對象的統計數字的採集」(國際申請號PCT/US00/17491),它是藉助資料庫管理系統來採集資料庫對象的實時統計數字的方法,其思想是基於現有關係模型的數據處理,不是根本解決實時資料庫存儲和訪問效率的方法。中國專利00818943號申請文件公開了「信息建模方法和利用建模方法的資料庫搜索方法」(國際申請號PCT/KR00/00505),它是一種將數據解析成語義元素,接收各種數據的信息建模方法,包括時間信息數據和指示位置的空間信息數據以及其它類型的數據,不是針對實時資料庫系統的方法,不能解決效率問題。美國專利US6644549號申請文件公開了「Portableterminalwithreal-timedatabaseaccess,printinganddisplay」,它是一種帶有實時資料庫的終端設備,其所使用的實時資料庫技術仍是傳統資料庫技術,並未涉及改進或改造實時資料庫管理系統本身的技術。美國專利US6556882號申請文件公開了「Methodandapparatusforgeneratingreal-timedatafromstaticfiles」,它包括一種將實時數據存儲在靜態文件資料庫中的方法,該方法目的是用靜態文件資料庫中的數據模仿實時數據流來運行製造系統,以便分析製造系統網絡的性能,不是解決實時資料庫本身效率問題的方法。
發明內容本發明的目的是為了克服目前實時資料庫存儲和訪問效率低的技術問題。進一步地,本發明所要解決的技術問題是為了克服目前資料庫建模方法忽視時態信息和磁碟存儲結構的技術問題。相應地,本發明的目的還包括提供一種基於上述建模方法的數據存儲方法和資料庫訪問方法。實現本發明目的而採取的技術方案概括如下提供一種實時資料庫實際應用數據的建模方法,包括採用下列步驟首先,將所有實時測控數據項中的靜態信息(如數據項名稱、採樣周期)分離出來,用E-R模型表示;然後將各實時測控數據中的動態信息(如測量值)用鐘面模型表示出來。在鐘面模型中,一個鐘面表示一個數據項,鐘面內標出數據項的名稱和採樣周期,鐘面的0點表示採樣起始時刻。如果有相同採樣周期的數據項,則可以合併在同一鐘面上。基於上述建模方法,提供一種實時數據的存儲方法,包括採用下列步驟將表示靜態信息的E-R模型轉化成關係模型和二維表結構存入磁碟記錄式文件;將表示動態信息的鐘面模型存入磁碟流式文件,磁碟流式文件名與實時測控數據項名一致,鐘面的0點表示採樣起始時刻的同時,對應磁碟的起始存儲地址。基於上述數據建模方法和存儲方法,提供一種實時資料庫的訪問方法,包括採用下列步驟根據訪問數據項名查找磁碟流式文件名,根據訪問數據的時間參數計算與0點的時間偏移量,進而算出物理地址偏移量,然後直接定位於磁碟物理地址,從而進行讀或寫的操作,無需建立索引。這裡,由於實時測控數據的固有特性,規定寫操作只能進行修改,不能刪除或插入。如果訪問數據要求涉及到靜態信息則打開磁碟記錄式文件,由於此時磁碟記錄式文件僅存儲靜態信息,數據量小,記錄數少,所以按傳統訪問方式訪問。本發明的特點是將資料庫數據項中的靜態信息和各實時測控數據中的動態信息的建模結合起來,尤其重視動態信息並用最合理的磁碟存儲方法,能解決現有資料庫存儲和訪問效率低的問題。本發明以鐘面刻劃一定採樣周期內實時測控數據流中的時態信息,將實時測控信息中的靜態信息和動態信息分別用記錄式文件和流式文件分開存儲,對流式文件的訪問可根據時間偏移量計算物理地址偏移量進行數據定位,無需建立索引,減少管理數據所需開銷的時空資源,對提高實時系統的效率和性能具有重要意義。採用本發明的技術方案,提供一種實時資料庫的數據建模方法和基於此種建模方法的數據存儲和資料庫訪問方法,工程人員採用這種建模方法可以比較容易地建立概念模型,資料庫系統軟體採用這種存儲方法和訪問方法可以加快數據存儲和資料庫訪問效率,極大地改善實時系統的性能。圖1鐘面模型結構示意2邏輯地址空間圖具體實施方式下面將結合附圖,說明本發明一個實施的方式首先,對實時系統進行需求分析,確定有哪些測控數據,將所有實時測控數據項中的靜態信息(包括數據項ID、數據項名稱、測量單位、模擬量還是數字量、採樣周期、報警上限、報警下限等等)分離出來,用傳統的E-R模型表示,以數據項ID或數據項名作為主關鍵字,因為數據項名是工程人員命名的,所以可以確保不重名;然後將各實時測控數據中的動態信息(包括時間和測量值)用鐘面模型表示出來。在鐘面模型中,一個鐘面代表一個數據項,鐘面用圓形直觀表示,圓心下方以文字標明數據項的名稱,圓心上方畫一個銳角,銳角內標明採樣周期,鐘面的0點表示採樣起始時刻。如果有相同採樣周期的數據項,則可以合併在同一鐘面上,即將相同採樣周期的數據項名稱寫在同一鐘面內,用逗號分割,如附圖1所示。基於上述建模方法,提供一種實時數據的存儲方法,包括採用下列步驟將表示靜態信息的E-R模型轉化成關係模型和二維表結構存入磁碟記錄式文件;將表示動態信息的鐘面模型存入磁碟流式文件。流式文件指文件內的數據不組成記錄形式,只是依次的一串信息集合。磁碟流式文件名與實時測控數據項名一致,鐘面的0點表示採樣起始時刻的同時,對應磁碟的起始存儲地址。流式文件的邏輯地址空間分布如圖2所示,一個數據的存儲地址號碼由三部分組成圓柱體號、讀/寫頭號和扇區號。存儲動態數據時,可以將不同數據項所對應的流式文件存儲在不同的圓柱體上,也即同一數據項的實時測控數據均位於同一圓柱體上。同一圓柱體上能存儲的數據量由硬體決定,比如一個單驅動器的碟片組,有6個碟片,10個磁頭,柱面數為1200,所選圓柱體的磁軌有32個扇區,每個扇區可以存放512B,則該圓柱體可以存放10×32×512=163840B數據。假設存儲一個測控數據項需要4個字節空間,則該圓柱體上可存儲4萬多次採樣的數據。則該磁碟可存儲1200個數據項的4萬多次採樣結果。基於上述數據建模方法和存儲方法,提供一種實時資料庫的訪問方法,包括採用下列步驟如果訪問數據要求涉及到靜態信息則打開磁碟記錄式文件,由於此時磁碟記錄式文件僅存儲靜態信息,數據量小,記錄數少,所以按傳統訪問方式訪問。對於實時測控數據的訪問,先根據訪問數據項名查找磁碟流式文件名,然後根據訪問數據的時間參數和採樣周期計算距離採樣起始時刻的時間偏移量,進而推算數據所在的物理地址偏移量,然後直接定位於磁碟物理地址,從而進行讀或寫的操作。比如,設採樣周期為1S,採樣起始時刻為8:10:10,一次溫度採樣值佔4個字節,文件起始扇區號為xxxx10,若要查詢9:00:00的溫度採樣值,則時間偏移量為(9-8)×3600+(0-10)×60+(0-10)=2990,地址偏移量為2990×4/512=23,則直接定位於xxxx33扇區進行讀操作。這裡,由於實時測控數據的固有特性,規定寫操作只能進行修改,不能刪除或插入。進一步地,採樣數據在扇區的存儲方式可以根據採樣周期和每個採樣數據所佔空間來決定,比如對於512位元組的扇區,一個扇區可存放128次採樣數據,若每個採樣數據要佔4個字節,為了和時間對應,可以讓每個扇區存放120次採樣數據,以便於數據的精確定位。還可以在數據流中設置標誌位,即將採樣時刻與採樣值成對存放,以便在取得扇區數據後進一步確定數據值。值得說明的是磁碟的操作單位是扇區,用磁碟存儲器,具體操作時,根據給出的磁碟地址,活動臂組合件作機械運動定位於指定圓柱體,同時系統選擇指定的讀寫頭以確定磁軌,最終讀寫頭跟蹤旋轉的磁軌,讀出旋轉時每個扇區的地址,該地址與所給磁碟地址一致時,系統將該地址中的數據讀入內存中的磁碟緩衝區,或從磁碟緩衝區將數據寫入指定磁碟地址,完成一次磁碟讀寫操作。以上對所公開的涉及實時資料庫建模、存儲和訪問方法進行了具體描述,本領域技術人員將能理解和實施,在不偏離本發明範圍情況下,可以對建模、存儲和訪問方法進行形式和細節的種種修改,因此以上所建議的但不限定的修改都在本發明的範圍之內。權利要求1.一種實時資料庫的建模和存儲方法,其特徵是採用下列步驟首先,將所有實時測控數據項中的靜態信息分離出來,用E-R模型表示;然後將各實時測控數據中的動態信息用鐘面模型表示出來;將表示靜態信息的E-R模型轉化成關係模型和二維表結構存入磁碟記錄式文件;將表示動態信息的鐘面模型存入磁碟流式文件。2.一種實時資料庫的訪問方法,其特徵是採用下列步驟根據訪問數據項名查找磁碟流式文件名,根據訪問數據的時間參數計算與0點的時間偏移量,進而算出物理地址偏移量,然後直接定位於磁碟物理地址,從而進行讀或寫的操作。3.根據權利要求1所述的實時資料庫的建模方法,將各實時測控數據中的動態信息用鐘面模型表示,其特徵還在於一個鐘面表示一個數據項,鐘面內標出數據項的名稱和採樣周期,鐘面的0點表示採樣起始時刻。如果有相同採樣周期的數據項,則可以合併在同一鐘面上。4.根據權利要求1所述的實時資料庫的存儲方法,其特徵還在於磁碟流式文件名與實時測控數據項名一致,流式文件數據的存儲地址號碼由三部分組成圓柱體號、讀/寫頭號和扇區號,鐘面的0點表示採樣起始時刻的同時,對應磁碟的起始存儲地址。5.根據權利要求4所述的實時資料庫的存儲方法,其特徵還在於存儲動態數據時,可以將不同數據項所對應的流式文件存儲在不同的圓柱體上,也即同一數據項的實時測控數據均位於同一圓柱體上。全文摘要實時資料庫的數據建模方法以及基於此種建模方法的資料庫存儲和訪問方法。數據建模方法是將所有實時測控數據項中所包含的信息分成靜態信息和動態信息,靜態信息用傳統的E-R模型表示,動態信息用鐘面模型表示。資料庫存儲方法是將表示靜態信息的E-R模型轉化成關係模型和二維表結構存入磁碟記錄式文件,將表示動態信息的鐘面模型存入磁碟流式文件,磁碟流式文件名與實時測控數據項名一致。訪問方法是根據訪問數據的時間參數計算與O點的時間偏移量,進而算出物理地址偏移量,然後直接定位於磁碟物理地址來進行讀或寫的操作。本發明以鐘面刻劃一定採樣周期內實時測控數據流中的時態信息,無需建立索引,減少管理數據所需開銷的時空資源。文檔編號G06F17/30GK1564158SQ20041001462公開日2005年1月12日申請日期2004年4月12日優先權日2004年4月12日發明者劉奇志申請人:南京大學