朱琪 黎亞炎 付江泳 夏克愚 張良斌 黃文明
摘 要
針對(duì)本次大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目中的我們項(xiàng)目的數(shù)據(jù)庫(kù)存取查詢(xún)效率要求,近年來(lái)數(shù)據(jù)庫(kù)的一般使用方法對(duì)于本次設(shè)計(jì)使用的系統(tǒng)存在一些缺陷。為此,設(shè)計(jì)提出了一種適用的分段式數(shù)據(jù)庫(kù)實(shí)時(shí)存取方法。本次數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),在通過(guò)數(shù)據(jù)庫(kù)請(qǐng)求數(shù)據(jù)方面有兩個(gè)主要請(qǐng)求方式,一個(gè)是通過(guò)遠(yuǎn)程終端連接服務(wù)器并實(shí)時(shí)寫(xiě)入位置信息,另一個(gè)是通過(guò)客戶端遠(yuǎn)程連接數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的各種管理操作,通過(guò)對(duì)于本項(xiàng)目數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)的不同的存取方式,時(shí)間等的不同要求,將第一個(gè)存取數(shù)據(jù)庫(kù)方式設(shè)置為通過(guò)一個(gè)依附于數(shù)據(jù)庫(kù)的控制端,使用控制端完成接收遠(yuǎn)程終端傳輸?shù)奈恢眯畔?,并引入緩沖技術(shù),在數(shù)據(jù)量突增是觸發(fā)報(bào)警并開(kāi)啟雙倍緩沖,緩沖數(shù)據(jù)到指定數(shù)量后由控制端完成多個(gè)信息一次寫(xiě)入數(shù)據(jù)庫(kù)的操作。另一個(gè)數(shù)據(jù)請(qǐng)求分支由于請(qǐng)求量小,因此直連到數(shù)據(jù)庫(kù)進(jìn)行操作。實(shí)驗(yàn)結(jié)果表明,所提方法對(duì)于數(shù)據(jù)庫(kù)的平均負(fù)荷量較一般直連負(fù)荷量低,存取性能優(yōu)。
關(guān)鍵詞
數(shù)據(jù)分段式存取;實(shí)時(shí);自動(dòng)化
中圖分類(lèi)號(hào): TP393.09 ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.19694/j.cnki.issn2095-2457.2020.15.006
數(shù)據(jù)庫(kù)是依照某種數(shù)據(jù)模型組織起來(lái)并存放二級(jí)存儲(chǔ)器中的數(shù)據(jù)集合。從發(fā)展的歷史看,數(shù)據(jù)庫(kù)是數(shù)據(jù)管理的高級(jí)階段,它是由文件管理系統(tǒng)發(fā)展起來(lái)的。當(dāng)數(shù)據(jù)庫(kù)對(duì)遠(yuǎn)程信息進(jìn)行管理和操作時(shí),選擇適用于數(shù)據(jù)存取,存取效率高的數(shù)據(jù)庫(kù)非常有必要,在本次項(xiàng)目對(duì)于數(shù)據(jù)的實(shí)時(shí)性和準(zhǔn)確性有一定的要求,設(shè)計(jì)一款適合本次項(xiàng)目的配套數(shù)據(jù)庫(kù)存取方案顯得尤為重要,它能夠保持進(jìn)入數(shù)據(jù)庫(kù)的數(shù)據(jù)在準(zhǔn)確性的前提下,使得數(shù)據(jù)庫(kù)不因?yàn)榇罅康男?shù)據(jù)片段的插入而導(dǎo)致數(shù)據(jù)庫(kù)負(fù)荷量過(guò)載,從另一方面也是保證了數(shù)據(jù)庫(kù)的安全可靠運(yùn)行。
文獻(xiàn)[2]提出了一種基于信息流分析的數(shù)據(jù)庫(kù)存取方法,對(duì)于數(shù)據(jù)的進(jìn)入進(jìn)行語(yǔ)義上下文的分析,該控制方法雖然控制效果好,但對(duì)于本項(xiàng)目中對(duì)于角色的控制并不多,此種方法將增加數(shù)據(jù)庫(kù)負(fù)荷,其也需要驗(yàn)證存取和系統(tǒng)日志,運(yùn)行效率較低;文獻(xiàn)[3]提出了一種大規(guī)模數(shù)據(jù)庫(kù)實(shí)時(shí)自主控制的存取方法,其對(duì)于用戶控制和數(shù)據(jù)的高效穩(wěn)定存取都做了很好的改善,但針對(duì)本次設(shè)計(jì)的系統(tǒng)所使用來(lái)說(shuō),其所使用的貝爾-拉帕丟拉模型的密級(jí)劃分對(duì)于此次少用戶的系統(tǒng)并不適用,反而導(dǎo)致對(duì)于用戶控制方面的判斷較多,影響運(yùn)行效率。
根據(jù)以上文獻(xiàn)所提出的方法對(duì)于本次系統(tǒng)中所存在的不足,提出一種適用于實(shí)時(shí)大量小數(shù)據(jù)存取數(shù)據(jù)庫(kù)的存取控制方法,其對(duì)于角色控制并不深究,通過(guò)單次插入數(shù)據(jù)和批量插入數(shù)據(jù)的時(shí)空消耗對(duì)比實(shí)現(xiàn)了在實(shí)時(shí)系統(tǒng)中的分段批量插入數(shù)據(jù),提高了運(yùn)行效率,在控制端設(shè)置緩沖池,保證了數(shù)據(jù)的可靠性和當(dāng)數(shù)據(jù)出現(xiàn)波動(dòng)時(shí)的數(shù)據(jù)安全性。
1 分段式實(shí)時(shí)數(shù)據(jù)庫(kù)存取控制方法
1.1 項(xiàng)目場(chǎng)景
本次所開(kāi)發(fā)的項(xiàng)目所需要的數(shù)據(jù)庫(kù)為實(shí)時(shí)存取效率高的數(shù)據(jù)庫(kù),在遠(yuǎn)程終端將位置信息發(fā)送到數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)必須將位置信息實(shí)時(shí)記錄,在設(shè)計(jì)中必須避免因?yàn)閿?shù)據(jù)庫(kù)負(fù)荷量過(guò)大而導(dǎo)致的數(shù)據(jù)丟失,嚴(yán)重還可導(dǎo)致數(shù)據(jù)庫(kù)停止工作此類(lèi)問(wèn)題,在設(shè)計(jì)過(guò)程中,因?yàn)轫?xiàng)目所需要的數(shù)據(jù)庫(kù)必須穩(wěn)定可靠,所以開(kāi)發(fā)一款依附于數(shù)據(jù)庫(kù)運(yùn)行的控制端顯得尤為重要。
1.2 分段式存取模型
分段式存儲(chǔ)模型在數(shù)據(jù)的存取上使用緩沖技術(shù),將實(shí)時(shí)的數(shù)據(jù)緩沖分段進(jìn)行存儲(chǔ),在其控制機(jī)制中有緩沖池,其可以將接收到的數(shù)據(jù)暫時(shí)保存,當(dāng)緩沖的數(shù)據(jù)量達(dá)到指定數(shù)量時(shí),將開(kāi)啟與數(shù)據(jù)庫(kù)的連接,然后使用一條sql語(yǔ)句將緩沖到的數(shù)據(jù)一次插入數(shù)據(jù)庫(kù)中,同時(shí)緩沖池也還在繼續(xù)工作,當(dāng)插入完畢后,等待下一段數(shù)據(jù)緩沖完成,再次插入。當(dāng)數(shù)據(jù)庫(kù)插入速度慢于數(shù)據(jù)接收速度時(shí),此模型將會(huì)發(fā)送報(bào)警信息,并自動(dòng)調(diào)整到雙倍緩沖數(shù)量,降低數(shù)據(jù)庫(kù)的負(fù)荷,根據(jù)數(shù)據(jù)庫(kù)中存取一次數(shù)據(jù)時(shí)間的消耗分析,在數(shù)據(jù)庫(kù)進(jìn)行連接和斷開(kāi)時(shí)消耗的時(shí)間占總時(shí)間的70%以上,所以在雙倍緩沖的情況下,在數(shù)據(jù)量不是劇增多倍時(shí),可以有效地保護(hù)數(shù)據(jù)庫(kù)并保護(hù)數(shù)據(jù)。
此次模型的實(shí)現(xiàn)方式是設(shè)計(jì)依附于數(shù)據(jù)庫(kù)的控制端,控制端主要有以下幾點(diǎn)功能,其與數(shù)據(jù)庫(kù)隨時(shí)保持連接,并檢測(cè)數(shù)據(jù)庫(kù)的狀態(tài),當(dāng)數(shù)據(jù)庫(kù)有任何問(wèn)題時(shí)都會(huì)將報(bào)警信息發(fā)送到客戶端、控制端接收遠(yuǎn)程終端所發(fā)來(lái)的位置信息,并將其進(jìn)行緩沖,后插入,緩沖在插入執(zhí)行時(shí)若滿,則執(zhí)行雙倍緩沖并報(bào)警。
2 實(shí)驗(yàn)結(jié)果分析
2.1 測(cè)試環(huán)境
為了驗(yàn)證此模型的有效性和實(shí)用性,需要進(jìn)行相關(guān)的實(shí)驗(yàn)分析,實(shí)驗(yàn)將直連數(shù)據(jù)庫(kù)直接插入和設(shè)置控制端緩沖插入進(jìn)行對(duì)比,在如圖所示的實(shí)驗(yàn)拓?fù)洵h(huán)境下進(jìn)行。
實(shí)驗(yàn)測(cè)試環(huán)境如下數(shù)據(jù)庫(kù)所依存PC機(jī)處理器為Intel酷睿i7,主頻2.2GHz,物理內(nèi)存為8G,硬盤(pán)500G。
2.2 數(shù)據(jù)插入測(cè)試
針對(duì)數(shù)據(jù)庫(kù)中插入數(shù)據(jù)的速度進(jìn)行兩種連接方式的對(duì)比,實(shí)驗(yàn)使用1條/秒、10條/秒、100條/秒, 1000條/秒的數(shù)據(jù)量進(jìn)行測(cè)試,其中,控制端緩沖池的緩沖一倍數(shù)量為100。分別用兩種連接方式插入時(shí)數(shù)據(jù)庫(kù)和數(shù)據(jù)完整性對(duì)比如表1所示
分析數(shù)據(jù)量可得,在分段式存儲(chǔ)插入的情況下,緩沖并批量插入數(shù)據(jù)庫(kù)較直連插入數(shù)據(jù)庫(kù)有著很大的優(yōu)勢(shì),其最大限度地保護(hù)了數(shù)據(jù)的完整性和數(shù)據(jù)庫(kù)的安全性,具有可靠性,適用于實(shí)時(shí)大量數(shù)據(jù)插入處理項(xiàng)目中的數(shù)據(jù)庫(kù)配套使用。
3 結(jié)論
提出一種實(shí)用新型的實(shí)時(shí)監(jiān)控系統(tǒng)中數(shù)據(jù)庫(kù)存取控制方法,在解決實(shí)時(shí)存取數(shù)據(jù)庫(kù)中插入時(shí)連接和斷開(kāi)頻繁操作所產(chǎn)生的巨大時(shí)間消耗的問(wèn)題上,分段式存取方式引入緩沖技術(shù),將每次頻繁需要插入的數(shù)據(jù)進(jìn)行緩沖整理,后批量插入,并在此基礎(chǔ)上加入數(shù)據(jù)接收量超常緩沖數(shù)量自動(dòng)翻倍并報(bào)警的機(jī)制,使得在存取數(shù)據(jù)是保證了數(shù)據(jù)的完整性,同時(shí)也保證了數(shù)據(jù)庫(kù)的安全可靠運(yùn)行。通過(guò)實(shí)驗(yàn)數(shù)據(jù)表明,本文所提方法存取效率高,數(shù)據(jù)安全可靠,數(shù)據(jù)庫(kù)安全穩(wěn)定運(yùn)行。
參考文獻(xiàn)
[1]彭建華,李臣明,邱軍林,等.接收與處理分離的實(shí)時(shí)大數(shù)據(jù)處理模型[J].計(jì)算機(jī)科學(xué)與探索,2015%9(8):906-913.
[2]Wu C,Zhu Q,Xu W,et a l A real-time geo-processing database engine linking calculations and storage for VGE.Annals of Gis,2015%21(4):1-10.
[3]徐艷,董濤.大規(guī)模數(shù)據(jù)庫(kù)實(shí)時(shí)自主存取控制方法研究[J].科學(xué)技術(shù)與工程,2017:205-209.