一種新的嵌入式移動數(shù)據(jù)庫系統(tǒng)的設(shè)計

0 引言

嵌入式技術(shù)已在人們生活中得到廣泛應用,移動計算更是給人們的生活帶來了極大的方便,由移動計算技術(shù)推動發(fā)展的新的數(shù)據(jù)庫技術(shù)讓人耳目一新。如嵌入式移動數(shù)據(jù)庫就是隨著各種移動設(shè)備、智能計算設(shè)備、嵌入式設(shè)備的發(fā)展而迅速發(fā)展起來。分析當前存在的各種嵌入式移動數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu),我們考慮采用一種總體上采用組件方式設(shè)計、組件內(nèi)部采用模塊化方式設(shè)計的嵌入式移動數(shù)據(jù)庫。

1 基本概念

模塊化設(shè)計(Block-based design)就是指程序的編寫不是開始就逐條錄入計算機語句和指令,而是首先用主程序、子程序、子過程等框架把軟件的主要結(jié)構(gòu)和流程描述出來,并定義和調(diào)試好各個框架之間的輸入、輸出鏈接關(guān)系。模塊化設(shè)計的基本思想是為了減少模塊與模塊之間的關(guān)聯(lián)性,模塊之間的邏輯結(jié)構(gòu)相對獨立,無函數(shù)的交叉調(diào)用,數(shù)據(jù)傳遞由全局變量完成。模塊化設(shè)計的核心是模塊的獨立性,主要包括功能獨立性和結(jié)構(gòu)獨立性,這使得軟件開發(fā)的分工易于實現(xiàn)。

軟件組件的概念產(chǎn)生于軟件復用,近幾年隨著對組件技術(shù)的認識不斷深入,出現(xiàn)了若干新的組件定義。其中比較有代表性的有對象管理小組(Object Management Group, OMG)的“建模語言規(guī)范”中對組件的定義如下:系統(tǒng)中一種物理的、可代替的部件、它封裝了實現(xiàn)并提供了一系列可用的接口。一個組件代表一個系統(tǒng)中實現(xiàn)的物理部分,包括軟件代碼(源代碼,二進制代碼,可執(zhí)行代碼)或者一些類似內(nèi)容,如腳本或者命令文件。

2 基于組件的EMDBS 的體系結(jié)構(gòu)

目前已出現(xiàn)的商業(yè)EMDBS 產(chǎn)品基本上都是采用一種封閉式的體系結(jié)構(gòu),并都有各自的特性。他們支持不同的操作系統(tǒng)平臺,具有不同的內(nèi)存管理需求,提供不同類型的接口給用戶訪問數(shù)據(jù)庫中的數(shù)據(jù),并且它們都是一種封閉、穩(wěn)定的數(shù)據(jù)庫產(chǎn)品,一旦發(fā)布,數(shù)據(jù)庫的功能就已經(jīng)確定下來。很少考慮數(shù)據(jù)庫的非功能特性。為了降低數(shù)據(jù)庫開發(fā)成本,減少開發(fā)時間、同時隨著時間的變遷不斷完善數(shù)據(jù)庫的各項功能,這樣傳統(tǒng)的數(shù)據(jù)庫的體系結(jié)構(gòu)就很難完成各項新功能。因此我們考慮設(shè)計一種新的體系結(jié)構(gòu)——總體上基于組件、組件內(nèi)部模塊化的EMDBS 的體系結(jié)構(gòu)。這些組件可以隨時添加、刪除和重新配置新功能,它將提供數(shù)據(jù)庫原來沒有的功能,同時又不影響原來的功能。

考慮到基于組件軟件開發(fā)各個方面的好處,我們把這種總體上基于組件、組件內(nèi)部模塊化的EMDBS 的體系結(jié)構(gòu)設(shè)計成3 層體系結(jié)構(gòu)[2][4][7]。如圖1 所示。

第一層是數(shù)據(jù)庫基本功能提供層,它提供包含數(shù)據(jù)對象的定義、格式、存儲以及如何檢索這些對象的基本數(shù)據(jù)庫功能。本層隱藏了與硬件部分相關(guān)用戶的細節(jié),同時這一層自身也會被作為組件的一部分。這一次通過接口向上一層和下一層提供相應的服務(wù),保證在添加時提供一種驗證機制,在刪除時不影響系統(tǒng)的基本功能。

第二層是組件接口層。它是多種功能組件的大集合,構(gòu)成了一個組件庫,庫中的組件提供一種特定的服務(wù)或者服務(wù)集。它向數(shù)據(jù)庫基本功能提供層發(fā)送請求,獲得來自數(shù)據(jù)庫的請求結(jié)果,同時向上層的基于組件的應用程序和組件配置層提供相應的服務(wù)。比如客戶的應用有可能不需要使用數(shù)據(jù)庫提供的現(xiàn)有功能或者需要修改已有的數(shù)據(jù)庫服務(wù)功能以滿足特殊的使用目的,在這種情況下,可以通過向數(shù)據(jù)庫中提供新的組件以完成任務(wù),從而達到簡化設(shè)計的目的。

第三層是組件配置層,它提供一種供新組件順利地移植到數(shù)據(jù)庫中的機制。這一層的部分工作就是提供用戶接口。通過用戶接口可以了解到各個組件的屬性及其提供的服務(wù)。同時,該用戶接口也允許組件擁有者選擇新的組件屬性和服務(wù)映射到已經(jīng)存在的功能上。一旦組件擁有者完成了這個映射過程,那么配置層產(chǎn)生的膠合代碼將確保對數(shù)據(jù)庫中的新組件提供支持,同時這些膠合代碼信息都會被保存在數(shù)據(jù)庫之中。在生成組件膠合代碼之前,用戶接口會提供驗證機制以弄清楚該組件能否被融入到系統(tǒng)中,同時用戶接口將會生成一個報告,用以說明兼容性上的細節(jié),也會視具體情況做些配置上的修改以便使該組件適用于本數(shù)據(jù)庫。

3 基于組件的EMDBS 的開發(fā)過程

基于組件的EMDBS 的開發(fā)過程可以有以下7 個步驟:需求分析和開發(fā)平臺選擇、基于組件EMDBS 體系結(jié)構(gòu)設(shè)計、組件實現(xiàn)、組件集成、集成測試、系統(tǒng)測試、系統(tǒng)發(fā)布。如圖2 所示[1]。

作者:李裕建 蘇曉龍 王香婷 凌啟東 來源:維庫開發(fā)網(wǎng)


微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費領(lǐng)取以下5G精品資料
  • 1、回復“YD5GAI”免費領(lǐng)取《中國移動:5G網(wǎng)絡(luò)AI應用典型場景技術(shù)解決方案白皮書
  • 2、回復“5G6G”免費領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復“YD6G”免費領(lǐng)取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復“LTBPS”免費領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復“ZGDX”免費領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復“TXSB”免費領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復“YDSL”免費領(lǐng)取《中國移動算力并網(wǎng)白皮書
  • 8、回復“5GX3”免費領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息