路春輝
(廣東工程職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,廣東 廣州 510520)
基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新算法探究
路春輝
(廣東工程職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,廣東 廣州 510520)
基于安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制的現(xiàn)狀,采用對數(shù)據(jù)庫中的數(shù)據(jù)狀態(tài)而不是對數(shù)據(jù)庫中的信息更新的方法,對其算法進(jìn)行了研究,提出了安全計(jì)算機(jī)數(shù)據(jù)庫更新的算法及可能出現(xiàn)的問題,提高了安全計(jì)算機(jī)數(shù)據(jù)庫的更新速率和計(jì)算機(jī)遠(yuǎn)行的安全性、可靠性.
狀態(tài)表決;安全計(jì)算機(jī);數(shù)據(jù)庫更新;算法探究
當(dāng)前,隨著中國經(jīng)濟(jì)的發(fā)展和信息技術(shù)水平的提高,各行各業(yè)對計(jì)算機(jī)系統(tǒng)的依賴越來越大,計(jì)算機(jī)系統(tǒng)不僅廣泛應(yīng)用于數(shù)據(jù)計(jì)算、銀行、學(xué)校、餐飲等所有服務(wù)行業(yè),還應(yīng)用于電力、軍事、航天等尖端科技產(chǎn)業(yè),這些行業(yè)對計(jì)算機(jī)系統(tǒng)的安全可靠性要求非常高,能否安全可靠地運(yùn)營對人民的生命和財(cái)產(chǎn)安全影響頗大.因此,必須要采取非常有效的辦法對安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制進(jìn)行不斷改進(jìn)和完善.以前業(yè)界也采取了多種辦法來保證計(jì)算機(jī)數(shù)據(jù)庫更新的安全可靠,比如傳統(tǒng)使用的是一種數(shù)據(jù)庫更新系統(tǒng)結(jié)構(gòu)叫做三取二[1],這些方法對于處理普通數(shù)據(jù)信息的效率是非常高的,但在更新較為復(fù)雜的數(shù)據(jù)庫的信息數(shù)據(jù)時(shí),這種各個(gè)系統(tǒng)分別獨(dú)立地進(jìn)行更新的方式,無法較為全面地對多個(gè)數(shù)據(jù)庫進(jìn)行及時(shí)地更新和表決,找出一種更快的更新方式就顯得十分必要了.
1.1 三取二結(jié)構(gòu)的內(nèi)涵
三取二結(jié)構(gòu)一般的成分是3個(gè)計(jì)算機(jī)的系統(tǒng),這3個(gè)系統(tǒng)在運(yùn)行過程中相互之間并不存在干擾,然后通過調(diào)試,使它們可以同時(shí)運(yùn)行,所需的時(shí)間和速度都保持一致,當(dāng)3個(gè)系統(tǒng)在每一次循環(huán)運(yùn)行之后產(chǎn)生了相應(yīng)的數(shù)據(jù)信息之后,就可以通過三分之二的表決方式產(chǎn)生最終的數(shù)據(jù)結(jié)果,即3個(gè)系統(tǒng)在運(yùn)行過程中所產(chǎn)生的數(shù)據(jù)信息不一致時(shí),如果1個(gè)系統(tǒng)計(jì)算數(shù)據(jù)和其他兩個(gè)系統(tǒng)的數(shù)據(jù)不一致時(shí)就棄之不用,而選用其他兩個(gè)系統(tǒng)計(jì)算出的數(shù)據(jù),如果3個(gè)系統(tǒng)計(jì)算出的數(shù)據(jù)信息都不一致的時(shí)候就重新運(yùn)算,直到得出的數(shù)據(jù)有兩個(gè)以上一致為止.
1.2 三取二結(jié)構(gòu)的優(yōu)點(diǎn)
一個(gè)安全計(jì)算機(jī)數(shù)據(jù)庫系統(tǒng)在運(yùn)行過程中可能遇到這樣那樣的問題,這些問題可能很容易解決,也可能被及時(shí)地檢查出來但是無法得到有效的解決,還有可能根本無法檢查出來.三取二結(jié)構(gòu)對于系統(tǒng)產(chǎn)生的錯(cuò)誤具有很強(qiáng)的包容性,即在系統(tǒng)運(yùn)行過程中所產(chǎn)生的數(shù)據(jù)信息雖然有一些誤差,但是因?yàn)槿种谋頉Q方式,因此并不影響系統(tǒng)最終的準(zhǔn)確結(jié)果.三取二結(jié)構(gòu)在應(yīng)用到一般的小范圍的數(shù)據(jù)時(shí),會(huì)對數(shù)據(jù)依次做出表決,準(zhǔn)確性特別高,因此能夠取得良好的運(yùn)用效果.
1.3 三取二結(jié)構(gòu)的缺點(diǎn)
在面對繁雜的范圍較大的數(shù)據(jù)庫的時(shí)候,三取二結(jié)構(gòu)的弊端就暴露無疑.因?yàn)檫@3個(gè)系統(tǒng)在進(jìn)行數(shù)據(jù)庫更新的時(shí)候只是獨(dú)立進(jìn)行,一般通過1個(gè)檢驗(yàn)的方式對數(shù)據(jù)信息進(jìn)行增加、減少、刪除等更新操作,而在面對巨大的數(shù)據(jù)庫信息的時(shí)候,其無法在3個(gè)計(jì)算機(jī)數(shù)據(jù)庫系統(tǒng)中建立有效的聯(lián)結(jié),對于計(jì)算機(jī)數(shù)據(jù)庫更新的錯(cuò)誤也無法及時(shí)檢測出來.
2.1 基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制的優(yōu)點(diǎn)
當(dāng)安全計(jì)算機(jī)對數(shù)據(jù)信息進(jìn)行依次更新的時(shí)候,如果逐字逐句的表決,就會(huì)造成對中央處理器的大面積占用,這樣就可能導(dǎo)致安全計(jì)算機(jī)無法對其他數(shù)據(jù)庫的信息資料進(jìn)行有效表決,任務(wù)不能按時(shí)按量順利進(jìn)行,而且這些數(shù)據(jù)信息需要進(jìn)行復(fù)雜的傳送過程,又可能會(huì)造成數(shù)據(jù)信息產(chǎn)生錯(cuò)誤傳送[2].因此,在對大規(guī)模的數(shù)據(jù)信息進(jìn)行表決的時(shí)候,最好的方法就是將其改變成一些容量較小的內(nèi)容進(jìn)行迅速有效的表決,基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制應(yīng)運(yùn)而生.
2.2 基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制的結(jié)構(gòu)
這種數(shù)據(jù)庫更新依據(jù)的狀態(tài)按結(jié)構(gòu)可分為容量、型號(hào)和狀態(tài)這3種成分,在進(jìn)行數(shù)據(jù)庫更新表決的時(shí)候所依據(jù)的就是這3種成分.在進(jìn)行表決的時(shí)候,多個(gè)計(jì)算機(jī)系統(tǒng)中的容量和型號(hào)是相同的,但是第3個(gè)狀態(tài)成分則存在著很大的差異[3].在對第3個(gè)狀態(tài)成分進(jìn)行表決之后,可能會(huì)出現(xiàn)幾種不同的結(jié)果:一種是指這一安全計(jì)算機(jī)數(shù)據(jù)庫可以使用,第二種是指會(huì)顯示這一安全計(jì)算機(jī)數(shù)據(jù)庫在進(jìn)行增加、減少或者刪除等更新程序,最后一種就是指這一安全計(jì)算機(jī)數(shù)據(jù)庫漏洞比較多,不可以使用.
基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制一般包括很多部分,一部分是對設(shè)備對象進(jìn)行操控保護(hù)的部分,這一部分對安全可靠性要求非常嚴(yán)苛;一部分是對設(shè)備的自動(dòng)化進(jìn)行負(fù)責(zé),還有一部分,就是負(fù)責(zé)安全計(jì)算機(jī)對外界進(jìn)行溝通和交流的部分.
2.3 基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新機(jī)制的運(yùn)行程序
在對這種基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫進(jìn)行更新的程序步驟一般分為三步,第一步就是對數(shù)據(jù)庫進(jìn)行更新,將原始狀態(tài)轉(zhuǎn)變?yōu)楦潞蟮臓顟B(tài);第二步如果更新順利的話,就可以將更新后的狀態(tài)一直保持下去,如果更新沒有成功的話,就要將此步驟重新反復(fù)進(jìn)行;第三步就是當(dāng)更新順利進(jìn)行后,就可以結(jié)束此更新.
這種基于狀態(tài)的表決需要多個(gè)系統(tǒng)的數(shù)據(jù)信息改變后的狀態(tài)要和其中每一個(gè)計(jì)算機(jī)系統(tǒng)數(shù)據(jù)庫中的數(shù)據(jù)信息的內(nèi)容和狀態(tài)都要保持高度一致.一般數(shù)據(jù)庫可能在更新的時(shí)候會(huì)出現(xiàn)問題,有可能會(huì)導(dǎo)致傳送的數(shù)據(jù)信息資料發(fā)生遺漏或者錯(cuò)誤,這時(shí)候就需要對此種問題進(jìn)行有效的解決,解決方式有多種,但最重要的還是要加以預(yù)防,防止這種現(xiàn)象的出現(xiàn)[4].一般可以對這些壓縮的狀態(tài)進(jìn)行一個(gè)編碼,將這些狀態(tài)進(jìn)行分類和加以號(hào)碼進(jìn)行編排,另一種方法就是對每一類狀態(tài)中的數(shù)據(jù)信息都進(jìn)行嚴(yán)格的校對和檢查,或者在整個(gè)系統(tǒng)更新后對其進(jìn)行全面的檢查.
一般流程是先由操作人員向處理器發(fā)送請求,然后當(dāng)處理器接收到操作人員發(fā)送的數(shù)據(jù)信息的時(shí)候,就判斷這一狀態(tài)的號(hào)碼是否是符合先前編排的要求,如果號(hào)碼正確,就可以開始對數(shù)據(jù)信息進(jìn)行檢查更新,如果號(hào)碼不正確而沒有通過檢查,這時(shí)候就只能丟棄這一數(shù)據(jù)信息,要求操作人員重新發(fā)送數(shù)據(jù)信息.按照以上步驟,逐步對數(shù)據(jù)進(jìn)行檢查更新,當(dāng)檢查到最后一類狀態(tài)之后,就可以對整個(gè)安全計(jì)算機(jī)數(shù)據(jù)庫進(jìn)行整體全面的檢查,如果檢查通過,就可以完成整個(gè)的更新工作,如果沒有通過,就將每一個(gè)狀態(tài)的號(hào)碼都重置,按照更新流程重新進(jìn)行更新.在此過程中,不可忽略的是要在整個(gè)更新程序之前設(shè)置一個(gè)程序,防止計(jì)算機(jī)系統(tǒng)因?yàn)槌霈F(xiàn)一些故障沒有被及時(shí)發(fā)現(xiàn)和處理而導(dǎo)致整個(gè)安全計(jì)算機(jī)數(shù)據(jù)庫更新不間斷地處在運(yùn)行狀態(tài),這個(gè)程序的功能就是當(dāng)安全計(jì)算機(jī)數(shù)據(jù)庫更新系統(tǒng)運(yùn)行特定的一段時(shí)間后仍然沒有得到操作人員相關(guān)的指令的時(shí)候,就顯示超出一定時(shí)間,需要操作人員重新發(fā)送指令的提示;如果操作人員沒有繼續(xù)根據(jù)提示作出指令的話,系統(tǒng)就可以顯示更新結(jié)束,如果操作人員根據(jù)提示作出指令的話,就可以繼續(xù)進(jìn)行更新.這是對安全計(jì)算機(jī)數(shù)據(jù)庫更新系統(tǒng)強(qiáng)有力的保護(hù)[5].
3.1 設(shè)計(jì)對安全計(jì)算機(jī)數(shù)據(jù)庫更新的算法
第一需要考慮信息在傳輸過程中一定要具有穩(wěn)定性,采用的辦法就是對這一信息資料的提取加強(qiáng)準(zhǔn)入驗(yàn)證,即只有經(jīng)過授權(quán)的用戶才能夠提取信息資料;第二就是要保證傳送的信息資料一定要準(zhǔn)確全面,這就要將信息資料全部提取出來,不能有錯(cuò)誤和遺漏;第三就是要保證信息資料要不斷地更新?lián)Q代,同實(shí)際發(fā)生的情況相一致;第四就是要保證信息資料所屬的類別的號(hào)碼不能發(fā)生錯(cuò)誤.
假如有1,2,3號(hào)安全計(jì)算機(jī)數(shù)據(jù)庫更新系統(tǒng),當(dāng)它們運(yùn)行后產(chǎn)生的數(shù)據(jù)庫更新結(jié)果一致的時(shí)候,一般會(huì)有3種不同的組合方式,可能是1號(hào)和2號(hào)系統(tǒng)結(jié)果一致,或者是2號(hào)和3號(hào)一致,或者是1號(hào)和3號(hào)一致;而當(dāng)更新結(jié)果有兩種狀態(tài)的時(shí)候,就有可能有6種不同的組合結(jié)果;而當(dāng)更新系統(tǒng)有3種不同的結(jié)果的時(shí)候,就只有1種組合方式.綜上可知,這3個(gè)安全計(jì)算機(jī)數(shù)據(jù)庫更新系統(tǒng)在運(yùn)行后產(chǎn)生的結(jié)果的組合數(shù)目是10種,一般只要得出的結(jié)果的安全性高,就將此結(jié)果作為最終的結(jié)果.當(dāng)然,安全計(jì)算機(jī)數(shù)據(jù)庫在更新的時(shí)候是不能運(yùn)行其它程序的,必須等待更新完成之后,再繼續(xù)進(jìn)行其他的程序,這時(shí)候,就可以體現(xiàn)出其優(yōu)勢,如果其中的1個(gè)系統(tǒng)出現(xiàn)了問題,就可以轉(zhuǎn)成其他的模式讓其他的兩個(gè)系統(tǒng)繼續(xù)運(yùn)行.
3.2 借鑒蛋糕店算法
蛋糕店算法就是借鑒了消費(fèi)者在蛋糕店里消費(fèi)的時(shí)候會(huì)排隊(duì)買蛋糕的情況,消費(fèi)者在進(jìn)入蛋糕店以前,要先抽簽決定次序,根據(jù)抽到的號(hào)碼進(jìn)行排隊(duì).根據(jù)這個(gè)原理,在應(yīng)用到實(shí)際的數(shù)據(jù)庫更新算法中,就可將程序中的進(jìn)程按照一定的次序進(jìn)入到更新系統(tǒng)中,如果號(hào)碼相同,就要采用互相排斥的規(guī)則進(jìn)行篩選,如果號(hào)碼不同,就按照一定的次序進(jìn)行處理,這樣限制更新系統(tǒng)的訪問權(quán)限,當(dāng)獲得訪問權(quán)限以后,才可以進(jìn)入到下一個(gè)區(qū)域進(jìn)行下一程序,這種互相排斥的數(shù)量是可以隨時(shí)控制的,從而可以使1個(gè)中央處理器在同一時(shí)間段處理一定量的數(shù)據(jù),防止因內(nèi)存占用過大而影響各個(gè)進(jìn)程的有效進(jìn)行.
3.3 對基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫進(jìn)行更新
一般對其更新以后顯示出的結(jié)果同安全計(jì)算機(jī)數(shù)據(jù)庫中的實(shí)際狀態(tài)相一致,即顯示出的結(jié)果表明更新已經(jīng)順利完成,實(shí)際上數(shù)據(jù)庫的確順利地被更新;同時(shí),也可能會(huì)出現(xiàn)更新以后顯示出的結(jié)果同安全計(jì)算機(jī)數(shù)據(jù)庫中的實(shí)際狀態(tài)不相一致的情況,即顯示出的結(jié)果表明更新已經(jīng)順利完成,但是實(shí)際上數(shù)據(jù)庫里的信息資料沒有更新完全或者更新出現(xiàn)了錯(cuò)誤,或者顯示出的結(jié)果表明更新沒有獲得成功,但實(shí)際上更新已經(jīng)順利完成了.后兩種情況是這個(gè)系統(tǒng)出現(xiàn)了問題,雖然最后一種情況也是系統(tǒng)出現(xiàn)了問題,但相對來說,系統(tǒng)還算比較安全.
總之可以表現(xiàn)為幾種不同的結(jié)果狀態(tài):一種是正常準(zhǔn)確地對安全計(jì)算機(jī)數(shù)據(jù)庫進(jìn)行更新;一種是出錯(cuò)了以后轉(zhuǎn)為其他的狀態(tài);一種就是雖然更新出現(xiàn)了問題,但是仍然不會(huì)影響計(jì)算機(jī)系統(tǒng)的安全性能;一種就是更新出現(xiàn)了問題,而且會(huì)導(dǎo)致系統(tǒng)處于危險(xiǎn)狀態(tài).通過建立對出現(xiàn)的問題進(jìn)行樹狀分析,可以得知基于狀態(tài)表決的計(jì)算機(jī)數(shù)據(jù)庫更新的表決安全可靠性都顯示出一定的規(guī)律,就是其與工作運(yùn)行時(shí)間的關(guān)系呈現(xiàn)負(fù)相關(guān)的關(guān)系,即工作運(yùn)行時(shí)間越長,安全可靠性越低;時(shí)間越短,安全可靠性越高,而安全性能的這個(gè)數(shù)值一直在0.999附近,而從大約5.9×105h之后,這個(gè)數(shù)值將保持穩(wěn)定,不再有較大浮動(dòng)的變化;可靠性能這個(gè)數(shù)值一直在零附近,在同樣的時(shí)間之后,這個(gè)數(shù)值將保持穩(wěn)定,不再有較大浮動(dòng)的變化.
基于狀態(tài)表決的數(shù)據(jù)庫更新算法的機(jī)制可以有效地改善傳統(tǒng)的數(shù)據(jù)庫更新方式中存在的無法適應(yīng)大規(guī)模數(shù)據(jù)信息的問題,具有廣泛的應(yīng)用前景.該機(jī)制的算法雖然在理論上已經(jīng)得到了演算和推論結(jié)論,但是實(shí)際的應(yīng)用和具體的實(shí)驗(yàn)操作并不多,因此,探索該機(jī)制在實(shí)際生產(chǎn)生活環(huán)境中的應(yīng)用效果是今后將要努力的目標(biāo),不斷提高其精度廣度對提高安全計(jì)算機(jī)的安全可靠性,保證其順利運(yùn)行起著舉足輕重的作用.
[1]丁強(qiáng),陳祥獻(xiàn),黃海.基于狀態(tài)表決的安全計(jì)算機(jī)數(shù)據(jù)庫更新算法[J].計(jì)算機(jī)工程,2013,(3):18-19.
[2]楊毅.安全計(jì)算機(jī)系統(tǒng)的輸出模塊設(shè)計(jì)及其可靠性與安全性研究[D].杭州:浙江大學(xué),2012:27-28.
[3]黃濤,陳祥獻(xiàn),黃海.基于三取二冗余結(jié)構(gòu)的安全計(jì)算機(jī)系統(tǒng)[J].計(jì)算機(jī)工程,2011,(18):254-256.
[4]武治國.芻議計(jì)算機(jī)數(shù)據(jù)庫的安全防范措施[J].中國科技信息,2012,(23):85-87.
[5]胡春亞.計(jì)算機(jī)數(shù)據(jù)庫的管理技術(shù)及其應(yīng)用[J].電腦開發(fā)與應(yīng)用,2012,(11):84-86.
(責(zé)任編輯 李健飛)
A Study of Database Update Algorithm for Safety Critical Computer Base on Status Vote
LU Chun-hui
(Department of Information Engineering,Guangdong Vocational Engineering Polytechnic,Guangzhou,Guangdong 510520,China)
This paper introduces the present situation of safety critical computer database update mechanism which adopts a database update algorithm for safety critical computer based on status vote.It not only increases the efficiency of the updating speed of safety critical computer database,but also guarantees the safety and reliability of the computer.
status vote;safety critical computer;database update;algorithm study
TP309.2
:A
:1673-1972(2014)03-0039-04
2014-01-08
路春輝(1979-),女,吉林吉林人,講師,主要從事計(jì)算機(jī)科學(xué)與技術(shù)研究.