鄭州經(jīng)濟技術(shù)開發(fā)區(qū)科技局 朱顏軍
鄭州自動化研究所 馬小寧
探析數(shù)據(jù)庫管理功能和實現(xiàn)標(biāo)準化注意事項
鄭州經(jīng)濟技術(shù)開發(fā)區(qū)科技局 朱顏軍
鄭州自動化研究所 馬小寧
數(shù)據(jù)庫技術(shù)發(fā)展的階段劃分一般是以數(shù)據(jù)模型發(fā)展過程作為標(biāo)準和主要依據(jù),總體說來,數(shù)據(jù)庫技術(shù)的發(fā)展一共經(jīng)歷三個發(fā)展階段:第一階段是網(wǎng)狀、層次數(shù)據(jù)庫系統(tǒng),第二階段是關(guān)系數(shù)據(jù)庫系統(tǒng),第三階段是以面向?qū)ο髷?shù)據(jù)模型為最主要特征的數(shù)據(jù)庫系統(tǒng)。
數(shù)據(jù)庫管理系統(tǒng)將具備一定結(jié)構(gòu)的數(shù)據(jù)集合在一起,它主要具有以下幾個特點。
1. 數(shù)據(jù)獨立性。主要指數(shù)據(jù)管理軟件和數(shù)據(jù)記錄之間的關(guān)系獨立。數(shù)據(jù)和結(jié)構(gòu)應(yīng)當(dāng)具有獨立性,不應(yīng)當(dāng)去改變應(yīng)用程序。
2. 數(shù)據(jù)結(jié)構(gòu)化。數(shù)據(jù)庫中的數(shù)據(jù)并不是毫不相干和雜亂無章,它們具有明顯的組織結(jié)構(gòu),在同一集合的數(shù)據(jù)具有類似的特征。
3. 數(shù)據(jù)完整性。主要指保證數(shù)據(jù)庫數(shù)據(jù)的絕對正確性。造成數(shù)據(jù)不正確的可能原因非常多,數(shù)據(jù)庫管理系統(tǒng)就是要通過檢查數(shù)據(jù)性質(zhì)來管理它們。
4. 數(shù)據(jù)共享性。在某個單位各個部門之間,一般存在著很多的重復(fù)信息。使用數(shù)據(jù)庫的任務(wù),就是要統(tǒng)一管理這些重復(fù)信息,從而使各個部門實現(xiàn)數(shù)據(jù)共享。
5. 數(shù)據(jù)靈活性。數(shù)據(jù)庫管理系統(tǒng)不是簡單地把各項數(shù)據(jù)堆積起來,它在記錄數(shù)據(jù)信息的同時,已經(jīng)具有很多實用的管理功能,比如輸入輸出、修改編輯和檢索查詢等。
6. 數(shù)據(jù)安全性??梢愿鶕?jù)用戶的職能,不同級別的人擁有對數(shù)據(jù)庫的不同開放權(quán)限,數(shù)據(jù)庫管理系統(tǒng)應(yīng)當(dāng)確保數(shù)據(jù)安全可靠。
通用的數(shù)據(jù)庫產(chǎn)品在實現(xiàn)SQL標(biāo)準和系統(tǒng)功能上存在著很大的差異性,這方面主要表現(xiàn)在以下幾個方面。
1. 目前現(xiàn)有標(biāo)準當(dāng)中規(guī)定的SQL內(nèi)容,數(shù)據(jù)庫產(chǎn)品無法完全實現(xiàn)。
2. 各個數(shù)據(jù)庫生產(chǎn)商均設(shè)計有自己的擴展功能,比如接口、函數(shù)和數(shù)據(jù)類型等。
3. 目前標(biāo)準沒有對系統(tǒng)的工具進行定義,差異性造成很多數(shù)據(jù)庫產(chǎn)品無法實現(xiàn)互操作。如果通過制訂關(guān)系數(shù)據(jù)庫產(chǎn)品的技術(shù)要求和測試規(guī)范,統(tǒng)一通用數(shù)據(jù)庫產(chǎn)品的性能、功能和測試方法以及接口,就能實現(xiàn)各種國產(chǎn)數(shù)據(jù)庫間的交互操作,從而最大限度地來降低數(shù)據(jù)庫的應(yīng)用開發(fā)成本,并且會更加有效地促進數(shù)據(jù)庫管理系統(tǒng)的市場相關(guān)認證工作,使市場秩序得到規(guī)范,從而有效促進通用數(shù)據(jù)管理系統(tǒng)產(chǎn)業(yè)的發(fā)展和壯大。
國際上關(guān)于數(shù)據(jù)庫標(biāo)準已經(jīng)發(fā)布了20項,主要包括ISO組織發(fā)布的ISO/IEC 9075以及ISO/IEC 13249兩個系列SQL查詢語言類的標(biāo)準,ISO/lEC 15408 cc標(biāo)準即安全技術(shù)類標(biāo)準,ISO/IEC 9579遠程數(shù)據(jù)庫訪問標(biāo)準和ISO/IEC 1 8021移動數(shù)據(jù)庫方面的標(biāo)準。我國在數(shù)據(jù)庫領(lǐng)域目前發(fā)布的有16項國內(nèi)標(biāo)準,主要是由國家軍用標(biāo)準發(fā)布的GJB1375遠程數(shù)據(jù)庫訪問標(biāo)準和GOBl 382軍用數(shù)據(jù)庫語言標(biāo)準以及GJB 3982.3特定領(lǐng)域內(nèi)軍用數(shù)據(jù)庫產(chǎn)品通用要求的標(biāo)準;國家質(zhì)監(jiān)總局和國家標(biāo)準化管理委員會發(fā)布了GB/T 12991數(shù)據(jù)庫語言SQL標(biāo)準,GB/T 20273和GB/T 20009數(shù)據(jù)庫管理系統(tǒng)安全類標(biāo)準;另外還有國家公安部發(fā)布的GA/T 389-2002計算機信息系統(tǒng)安全等級保護數(shù)據(jù)庫管理系統(tǒng)技術(shù)要求等。
數(shù)據(jù)庫的標(biāo)準化體系中,我們可以將數(shù)據(jù)庫標(biāo)準分成五個大類,即數(shù)據(jù)庫語言、數(shù)據(jù)交換管理、數(shù)據(jù)庫產(chǎn)品數(shù)據(jù)安全管理和數(shù)據(jù)庫集成應(yīng)用相關(guān)等。這其中,我們應(yīng)當(dāng)把數(shù)據(jù)庫的語言標(biāo)準、數(shù)據(jù)庫產(chǎn)品標(biāo)準和集成應(yīng)用相關(guān)標(biāo)準作為標(biāo)準化的重點。整個數(shù)據(jù)庫標(biāo)準體系的核心是SQL語言,目前已有的成熟國際標(biāo)準有16項,其中的1項已經(jīng)被轉(zhuǎn)化成國家標(biāo)準被正式發(fā)布,另外4項也已經(jīng)納入到國家標(biāo)準計劃并且進入到最終報批階段。在國產(chǎn)基礎(chǔ)軟件集成測試方面我國積累了豐富的經(jīng)驗,應(yīng)當(dāng)加快制訂數(shù)據(jù)庫和其他基礎(chǔ)軟件產(chǎn)品之間的互相操作和測試的相關(guān)規(guī)范。由于國際和國內(nèi)方面缺少非結(jié)構(gòu)化數(shù)據(jù)庫領(lǐng)域的相關(guān)標(biāo)準,我們可以在這個領(lǐng)域來自主制訂相關(guān)國家標(biāo)準。
為了降低IT復(fù)雜程度和提升數(shù)據(jù)質(zhì)量,大部分企業(yè)總是希望它們的業(yè)務(wù)能夠整合到更少的數(shù)據(jù)庫平臺上,但是實施數(shù)據(jù)庫標(biāo)準化項目時,還要注意文化和技術(shù)上的問題。
1. 要注意兼容性問題。進行數(shù)據(jù)庫標(biāo)準化整合的出發(fā)點和歸宿,就是能夠解決不同數(shù)據(jù)庫系統(tǒng)支持和不同應(yīng)用的時候所造成的數(shù)據(jù)混亂問題。終端用戶的觀點是標(biāo)準化整合絕對不意味不可能造成混亂,但是有些時候,確實可能出現(xiàn)比較復(fù)雜的情況。所以,需要根據(jù)不同的業(yè)務(wù)需求使用最合適的應(yīng)用軟件,有時候這些軟件依據(jù)特定的數(shù)據(jù)庫技術(shù)設(shè)計,這就會造成當(dāng)業(yè)務(wù)需求不斷變化時,越來越多的數(shù)據(jù)庫平臺也隨之出現(xiàn)。
2. 要注意SQL系統(tǒng)的區(qū)別。數(shù)據(jù)庫架構(gòu)師Nathan Allan說:“數(shù)據(jù)庫標(biāo)準化的技巧之一就是做好充足的準備工作。在不同的數(shù)據(jù)庫產(chǎn)品中,可能會存在非常細微的區(qū)別,有些時候僅僅是語義上的不同?!北热纾琒QL數(shù)據(jù)庫管理系統(tǒng)的一個區(qū)別就是它們處理空字符的方式不一樣。在有些系統(tǒng)當(dāng)中,空字符串代表著“null”,但是有些就不是這樣。所以這看上去非常細小的區(qū)別,如果不注意的話,就有可能造成意外的麻煩。
3. 要注意政策與企業(yè)文化問題。當(dāng)我們決定將所有的應(yīng)用整合到某一個單一數(shù)據(jù)庫標(biāo)準時,很有可能造成各個部門之間的標(biāo)準和政策混亂。目前,雖然對于整合的業(yè)務(wù)一直有很高的呼聲,但是要想解決單元內(nèi)獨立部門之間不同的政策和文化,也將是一個巨大的挑戰(zhàn)。