新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式實時數據庫技術研究

        嵌入式實時數據庫技術研究

        ——
        作者:劉 震,羅 欣 時間:2005-09-10 來源:EDN電子設計技術 收藏

        嵌入式實時數據庫技術研究

        本文引用地址:http://www.104case.com/article/8454.htm

        隨著嵌入式系統的廣泛應用及嵌入式實時操作系統的不斷普及,嵌入式環境下的數據管理問題成為系統中的重要環節,構建嵌入式實時數據庫系統(RTDBS)成為嵌入式開發中必須解決的問題。這里所說的嵌入式RTDBS[1][2]是指可在嵌入式設備中獨立運行的一種數據庫系統,用以處理大量的、時效性強且有嚴格時序的數據,它以高可靠性、高實時性和高信息吞吐量為目標,其數據的正確性不僅依賴于邏輯結果,而且依賴于邏輯結果產生的時間。圖1是一個嵌入式應用的基本構架,整個嵌入式RTDBS構建于實時操作系統之上。由于嵌入式實時數據庫系統在運行環境和運行方式上與常見的企業級數據庫管理系統有很大差別,因此,傳統的企業數據庫如Oracle、Sybase等在實時嵌入式環境下很難發揮作用,尤其在一些實時性要求很高的控制系統中,傳統數據庫更顯得無能為力。因此,伴隨著各種商用嵌入式實時操作系統的出現,研究嵌入式環境下的實時數據庫系統成為嵌入式軟件中的一項重要內容。

        圖1  嵌入式應用基本結構

               嵌入式RTDBS內涵及其體系結構         

               目前嵌入式系統開發中,在實時數據庫問題上的多數看法是,嵌入式RTDBS從本質上說是一個“內存數據庫”,是一個由應用程序管理的內存緩沖池,它在系統中的作用就是一個供多個實時任務共同使用的共享數據區。這種數據庫實際上是一個嵌入在用戶應用軟件中的與應用程序不可分割的部分,其功能主要是數據的存和取,不具有獨立性,不是一個真正意義上的數據庫系統。一個完整的嵌入式實時數據庫系統除了包括內存數據庫外,還應當含有歷史數據庫和數據庫管理系統DBMS及提供給用戶的接口函數,整個數據庫可由DBMS完成對數據庫的具體配置及各種操作,例如系統運行前根據實際需要對內存數據庫中的記錄節點進行增減等配置操作。目前的嵌入式實時數據庫系統可分為兩大類,一類是商用級的嵌入式實時數據庫系統,它獨立于具體的應用軟件,如提供的eXtremeDB內存式實時數據庫,這是一種專門為嵌入式系統數據庫管理而編寫的實時數據庫,它將數據庫直接建立在內存之中,并根據應用特征產生數據庫API,用戶可方便的調用這些接口函數管理整個數據庫系統;另一類是用戶針對具體的應用對象而自行設計開發的嵌入式實時數據庫系統,這種數據庫一般是嵌入到應用軟件中作為應用程序的一部分,不具有獨立性,目前測控系統中用戶開發的實時數據庫大都屬于這種情況。

               

        圖2 嵌入式RTDBS系統結構

               圖2所示的是一個嵌入式實時數據庫系統的體系結構,同傳統的數據庫一樣,它仍然是一種三級模式的結構體系,即用戶模式、邏輯模式和存儲模式。在嵌入式環境下構建實時數據庫系統,應該完成以下功能:高效的數據存取機制、數據安全性控制、實時事務管理機制、數據庫的恢復機制等,設計中更關心的是系統的實時性、開銷大小、系統性能、可靠性、可預知性和底層控制能力,即如何針對選用的實時OS和嵌入式硬件平臺設計合理的數據模型和物理結構,重點放在如何高效的利用嵌入式系統的有限資源、如何提高數據的存取速度、如何進行數據保護、數據交換、查詢/ 事務處理算法的優化、事務的優先級分派、事務調度和并發控制等等。

               嵌入式RTDBS的數據模型   

               嵌入式實時數據庫系統的關鍵是數據模型的確立,它決定了數據被訪問和操作的方式,應用程序的性能和可靠性也大部分取決于此。目前嵌入式環境下的數據庫系統多數采用了關系模型結構,這也是商用數據庫系統的數據模型,該模型結構是利用二維關系表來實現數據存儲,利用索引訪問和查詢數據,這種模型結構是建立在嚴格的數學基礎上的,結構簡單靈活,獨立性好,但在嵌入式環境下的內存開銷和數據冗余較大,用戶必須對其進行優化,增加了開發數據庫系統的難度;有些嵌入式數據庫則采用了網狀模型結構,該模型通過指針來確定數據間的顯式連接關系,它比關系模型中利用冗余數據和索引文件要節約大量的存儲空間,具有一定的數據獨立性和共享特性,運行效率較高,而且由于它避免了索引操作,比關系型數據庫模式要節省存儲空間,數據操作速度也更快。但是這種模型結構比較復雜,尤其當嵌入式系統規模增大時,其數據庫的結構變得非常龐大,可能會影響到系統的實時性能。圖3所示的是在相同數目的記錄下,關系模型和網狀模型的系統開銷比較,從圖中可以看出,網狀模型因為避免了索引操作使得其開銷要小于關系模型。但是在實際應用中,應當根據實時系統的綜合性能選取數據庫模型,通常可采用網狀加關系或層次加關系的混合模型結構以彌補兩種結構之間的缺陷,如CENTURA公司的嵌入式實時數據庫RDM(Raima Database Management),它將網狀和關系模型的優點結合起來,避免了不必要的索引開銷,顯著地減少系統存儲空間、I/O操作和CPU周期,由于其快速而且可靠性高的特點,廣泛應用于許多嵌入式產品中。

        圖3  關系和網狀模型開銷比較



        關鍵詞: 美國McObject公司

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 宽甸| 伊宁市| 阿拉善盟| 罗城| 达孜县| 禄丰县| 龙游县| 琼海市| 蕲春县| 德江县| 阿荣旗| 南京市| 彩票| 平谷区| 图片| 徐水县| 航空| 台南县| 米脂县| 吉隆县| 临澧县| 石首市| 白城市| 手机| 海原县| 云梦县| 鄂尔多斯市| 易门县| 崇义县| 太仆寺旗| 马尔康县| 信阳市| 秦皇岛市| 得荣县| 平乡县| 逊克县| 吴川市| 阳山县| 乌鲁木齐县| 连云港市| 修水县|