嵌入式數(shù)據(jù)庫(kù)發(fā)展綜述
隨著數(shù)據(jù)存儲(chǔ)的快速發(fā)展,數(shù)據(jù)庫(kù)應(yīng)用的范圍更加深入和具體。那些僅適用于PC機(jī)、體積龐大、延時(shí)較長(zhǎng)的數(shù)據(jù)庫(kù)技術(shù)已不能滿足針對(duì)性較強(qiáng)的嵌入式系統(tǒng)開(kāi)發(fā)的需求。而且隨著嵌入式系統(tǒng)的內(nèi)存和各種永久存儲(chǔ)介質(zhì)容量都在不斷增加,嵌入式系統(tǒng)內(nèi)數(shù)據(jù)處理量會(huì)不斷增加,那么大量的數(shù)據(jù)如何處理問(wèn)題變得非常現(xiàn)實(shí)。一種全新的數(shù)據(jù)庫(kù)產(chǎn)品——嵌入式數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)運(yùn)而生。
本文引用地址:http://m.butianyuan.cn/article/149838.htm嵌入式數(shù)據(jù)庫(kù)系統(tǒng)
實(shí)時(shí)性是嵌入式系統(tǒng)的一個(gè)重要特性,一些專家將嵌入式系統(tǒng)稱為嵌入式實(shí)時(shí)系統(tǒng)。在該系統(tǒng)中,對(duì)數(shù)據(jù)庫(kù)的操作具有定時(shí)限制的特性,這里把應(yīng)用于嵌入式系統(tǒng)的數(shù)據(jù)庫(kù)系統(tǒng)稱為嵌入式數(shù)據(jù)庫(kù)系統(tǒng)或嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)(ERTDBS)。嵌入式數(shù)據(jù)庫(kù)的名稱來(lái)自其獨(dú)特的運(yùn)行模式。這種數(shù)據(jù)庫(kù)嵌入到了應(yīng)用程序進(jìn)程中,消除了與客戶機(jī)、服務(wù)器配置相關(guān)的開(kāi)銷。嵌入式數(shù)據(jù)庫(kù)是嵌入式系統(tǒng)的重要組成部分,也成為對(duì)越來(lái)越多的個(gè)性化應(yīng)用開(kāi)發(fā)和管理而采用的一種必不可少的有效手段。
嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)管理系統(tǒng)是近幾年才興起的一項(xiàng)新的數(shù)據(jù)管理技術(shù)。它以目前成熟的數(shù)據(jù)庫(kù)技術(shù)為基礎(chǔ),針對(duì)嵌入式設(shè)備的具體特點(diǎn),實(shí)現(xiàn)對(duì)移動(dòng)設(shè)備和嵌入式設(shè)備上的數(shù)據(jù)存儲(chǔ)、組織和管理。傳統(tǒng)的數(shù)據(jù)庫(kù)通常運(yùn)行在大型的計(jì)算設(shè)備上,隨著計(jì)算設(shè)備的日益小型化,數(shù)據(jù)庫(kù)的小型化也日益迫切。
嵌入式數(shù)據(jù)庫(kù)在國(guó)外發(fā)展已有30多年的歷史,在國(guó)內(nèi)最近幾年才有了重視。在國(guó)內(nèi)外市場(chǎng)上近幾年比較活躍并且越來(lái)越受到廣泛重視和應(yīng)用的是商用級(jí)嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)。
嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)基本特性
首先看看實(shí)時(shí)數(shù)據(jù)的特性:1)變化快;2)突發(fā)性強(qiáng);3)數(shù)據(jù)間關(guān)聯(lián)性強(qiáng),結(jié)構(gòu)化。
實(shí)時(shí)數(shù)據(jù)管理對(duì)常規(guī)數(shù)據(jù)庫(kù)的挑戰(zhàn):1)常規(guī)數(shù)據(jù)庫(kù)基于文件系統(tǒng),速度慢;2)文件I/O、Buffer、Cache機(jī)制還引入文件操作不確定性;3)這些數(shù)據(jù)庫(kù)通常都是基于C/S架構(gòu),導(dǎo)致進(jìn)程通信不確定性;4)尺寸通常不適應(yīng)嵌入式系統(tǒng)應(yīng)用的需求。圖1表明了常規(guī)數(shù)據(jù)庫(kù)中數(shù)據(jù)使用的歷程。
嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)的基本特性如下。
1. 嵌入性。嵌入式數(shù)據(jù)庫(kù)不僅可以嵌入到其他的軟件當(dāng)中,也可以嵌入到硬件設(shè)備當(dāng)中。由于嵌入式系統(tǒng)自身的特點(diǎn),對(duì)數(shù)據(jù)的存儲(chǔ)和程序的運(yùn)行都有較強(qiáng)的空間限制,所以嵌入式數(shù)據(jù)庫(kù)首先應(yīng)該保證適當(dāng)?shù)捏w積。并且由于 API 是根據(jù)用戶數(shù)據(jù)特征產(chǎn)生的,調(diào)用這些API就可以使用嵌入式數(shù)據(jù)庫(kù)管理實(shí)時(shí)數(shù)據(jù),因此,嵌入式數(shù)據(jù)庫(kù)可以天然地與用戶程序集成在一起。圖2所示實(shí)時(shí)數(shù)據(jù)管理結(jié)構(gòu)。
2.實(shí)時(shí)性。嵌入式系統(tǒng)通常是緊湊系統(tǒng),即小系統(tǒng)。對(duì)于大量實(shí)時(shí)數(shù)據(jù)需要管理,實(shí)時(shí)性和嵌入性是分不開(kāi)的。只有具有了嵌入性的數(shù)據(jù)庫(kù)才能第一時(shí)間得到系統(tǒng)的資源,對(duì)系統(tǒng)的請(qǐng)求在第一時(shí)間內(nèi)做出響應(yīng)。但是,并不是具有嵌入性就一定具有實(shí)時(shí)性。要想嵌入式數(shù)據(jù)庫(kù)具有很好的實(shí)時(shí)性,必須做很多額外的工作。
如McObject公司的eXtremeDB 首先是一個(gè)實(shí)時(shí)數(shù)據(jù)庫(kù),而后才是嵌入式數(shù)據(jù)庫(kù)。由于實(shí)時(shí)數(shù)據(jù)管理對(duì)時(shí)間空間效率的要求非常高,完成同樣工作的資源要求更少。因此,在資源緊湊型系統(tǒng)中, 其優(yōu)點(diǎn)就顯示出來(lái)了。所以, eXtremeDB 開(kāi)銷較小并與應(yīng)用程序天然集成實(shí)現(xiàn)嵌入,這并不意味著 eXtremeDB 只能管理小系統(tǒng)中的數(shù)據(jù)。數(shù)據(jù)庫(kù)是嵌入式的,但并不要求應(yīng)用系統(tǒng)是嵌入式的。應(yīng)用系統(tǒng)可以是嵌入式系統(tǒng)如手機(jī)、家庭網(wǎng)關(guān)、機(jī)頂盒、數(shù)字電視等,也可以是桌面系統(tǒng)或服務(wù)器系統(tǒng)如核心路由器、呼叫中心、金融交易系統(tǒng)等。
3.嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)通常作為嵌入式系統(tǒng)的應(yīng)用軟件出現(xiàn),系統(tǒng)常常在無(wú)人干預(yù)的情況下運(yùn)行,需要具備較高的可靠性。同時(shí)要求數(shù)據(jù)庫(kù)操作具備可預(yù)知性,而且系統(tǒng)的大小和性能也都必須是可預(yù)知的,這樣才能保證系統(tǒng)的性能。
4.從目前嵌入式應(yīng)用的發(fā)展趨勢(shì)來(lái)看,嵌入式數(shù)據(jù)庫(kù)的實(shí)現(xiàn)必須充分體現(xiàn)系統(tǒng)的可定制性,即系統(tǒng)選擇的技術(shù)路線要面向具體的行業(yè)應(yīng)用。
5. 跨平臺(tái)的實(shí)時(shí)數(shù)據(jù)管理方案。首先嵌入式場(chǎng)合硬件和軟件的平臺(tái)是千差萬(wàn)別。所以嵌入式場(chǎng)合的數(shù)據(jù)庫(kù)必須能夠支持非常多的平臺(tái),嵌入式系統(tǒng)的平臺(tái)種類繁多,因此嵌入式數(shù)據(jù)庫(kù)應(yīng)有一定的可移植性,以適用于不同的軟硬件平臺(tái)。
最后,嵌入式數(shù)據(jù)庫(kù)和我們現(xiàn)在常見(jiàn)的企業(yè)級(jí)數(shù)據(jù)庫(kù)有很大的區(qū)別。雖然,從名字上看,二者有著太多的相似性,但卻有著本質(zhì)的根本性的區(qū)別。由于嵌入式實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行環(huán)境和運(yùn)行方式上與常見(jiàn)的企業(yè)級(jí)數(shù)據(jù)庫(kù)管理系統(tǒng)有很大差別,因此,傳統(tǒng)的企業(yè)數(shù)據(jù)庫(kù)如Oracle、Sybase等在實(shí)時(shí)嵌入式環(huán)境下很難發(fā)揮作用,尤其在一些實(shí)時(shí)性要求很高的控制系統(tǒng)中,傳統(tǒng)數(shù)據(jù)庫(kù)更顯得無(wú)能為力。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論