陳 荔,申 健
(長安大學(xué)信息與網(wǎng)絡(luò)管理處,陜西 西安 710064)
目前,網(wǎng)絡(luò)已經(jīng)變成了人們生活中不可或缺的一部分,其發(fā)揮的作用也越來越大。隨著網(wǎng)絡(luò)技術(shù)的突飛猛進(jìn),網(wǎng)絡(luò)的功能越來越完善,其內(nèi)部架構(gòu)也變得越來越復(fù)雜,在復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫內(nèi),經(jīng)常存在大量的異常信息或冗余信息,這些信息會占用大量寬帶資源,干擾用戶的上網(wǎng)體驗(yàn),甚至?xí)τ脩舢a(chǎn)生經(jīng)濟(jì)損失,對網(wǎng)絡(luò)的安全也造成了較大威脅。所以,怎樣對復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫內(nèi)信息資源進(jìn)行有效的調(diào)度,已經(jīng)成為了計算機(jī)網(wǎng)絡(luò)領(lǐng)域中較為重要的核心問題。
為了解決這種復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫內(nèi)信息資源所帶來的困擾,研究者們提出相應(yīng)的資源調(diào)度方法。而信息資源調(diào)度方法實(shí)際上就是一種分類問題,把信息資源分成重要信息與異常信息,進(jìn)而實(shí)現(xiàn)信息資源的分類[1]。目前階段,主要的網(wǎng)絡(luò)數(shù)據(jù)庫內(nèi)信息資源調(diào)度方法有:使用支持向量機(jī)、關(guān)聯(lián)規(guī)則以及模糊聚類的信息資源調(diào)度方法。其中,較為典型的即基于模糊聚類的信息資源調(diào)度,方法簡便、能效低[2]。
由于網(wǎng)絡(luò)數(shù)據(jù)庫中信息資源的調(diào)度對于確保網(wǎng)絡(luò)安全具有更為重要的利用價值,因此發(fā)展前景更為廣闊,同時它也成為眾多學(xué)者研究的重點(diǎn)課題。但是,依靠現(xiàn)階段的方法已經(jīng)很難適應(yīng)日益復(fù)雜的網(wǎng)絡(luò)環(huán)境下信息資源特征的高度動態(tài)變化,從而導(dǎo)致網(wǎng)絡(luò)系統(tǒng)的運(yùn)行效率和使用上的不方便。因此針對傳統(tǒng)算法的缺點(diǎn),本文提出了一種復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫中信息資源的調(diào)度方法,通過對信息資源的深度值進(jìn)行排序,并對信息資源進(jìn)行基礎(chǔ)區(qū)分,隨后添加信息原則,使其能夠被徹底地分類,最后依靠改進(jìn)的粒子群算法對信息資源進(jìn)行集群調(diào)度。仿真結(jié)果證明,本文方法能夠有效地對信息資源進(jìn)行調(diào)度,并且分類的過程中不會影響到網(wǎng)絡(luò)系統(tǒng)的正常運(yùn)作。
在復(fù)雜網(wǎng)絡(luò)環(huán)境下,構(gòu)建數(shù)據(jù)庫內(nèi)信息資源調(diào)度模型,復(fù)雜網(wǎng)絡(luò)的多源信息資源服務(wù)本體、服務(wù)提供者均構(gòu)建對應(yīng)的網(wǎng)絡(luò)環(huán)境,在某種程度上完成了資源共享,用戶與服務(wù)商可以經(jīng)過間接或直接的形式進(jìn)行交互,為復(fù)雜網(wǎng)絡(luò)環(huán)境下的運(yùn)行模式提供了強(qiáng)有力的支持[3]。
復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫在進(jìn)行大數(shù)據(jù)量訪問時都存在運(yùn)算速度不高問題,磁盤與一些硬件設(shè)備不能實(shí)現(xiàn)高效的讀寫訪問,過長的延時可能會致使系統(tǒng)運(yùn)行性能的嚴(yán)重下滑[4]。
為了實(shí)現(xiàn)復(fù)雜網(wǎng)絡(luò)信息資源的大數(shù)據(jù)特征集成調(diào)度提供數(shù)據(jù)基礎(chǔ),在信息管理系統(tǒng)里,針對不同的信息源[5],能夠通過ω來表示可信度,擬定第i種信息源的可信度是ωi,獲得資源調(diào)度置信區(qū)間為
m′i([pH,pL])=ωi×mi([pH,pL])
(1)
m′i([0,1])=ωi×mi([0,1])+1-ωi
(2)
針對n種不同的信息源提出命題,擬定FDR代表p,共存在N組先驗(yàn)數(shù)據(jù),建造基于復(fù)雜網(wǎng)絡(luò)信息管理資源信息共享網(wǎng)絡(luò)系統(tǒng),進(jìn)而實(shí)現(xiàn)復(fù)雜網(wǎng)絡(luò)信息數(shù)據(jù)節(jié)點(diǎn)分裂歷史記錄方法,獲得資源先驗(yàn)分布的描述式為
(3)
每種數(shù)據(jù)點(diǎn)p,依靠第k距離重新進(jìn)行排列,這種排列會干擾空間內(nèi)的數(shù)據(jù)對象,擬定s={p1,p2,…,pr+1}代表數(shù)據(jù)對象,r代表ISk(p)的元素總量,e={e1,e2,…,er}代表與之相對應(yīng)的相似k距離鄰居序列軌跡。擬定s={p1,p2,…,pr+1}代表數(shù)據(jù)對象p的相似k距離鄰居序列,r代表ISk(p)的元素總量,e={e1,e2,…,er}代表與之相對應(yīng)的相似k的距離鄰居序列軌跡,那么p的鏈距離,能夠描述成c-distance(p),定義如下
(4)
(5)
經(jīng)過上述方法,系統(tǒng)使用的是樹形架構(gòu)設(shè)計,進(jìn)一步,設(shè)計子網(wǎng)格分區(qū),對資源信息流進(jìn)行信號模型建造,為最后實(shí)現(xiàn)對復(fù)雜網(wǎng)絡(luò)信息管理資源的稀疏性聚類調(diào)度提供精確的數(shù)據(jù)基礎(chǔ)。
在同一種資源上啟動的兩種信息資源都要滿足DAG圖規(guī)定的邏輯關(guān)聯(lián),如果Si,Sj都在某種序列內(nèi),且Si,Sj滿足Si→Sj,那么任務(wù)i要在j之間運(yùn)行。但是如果序列內(nèi)信息j先于信息i啟動,那么就會產(chǎn)生死鎖狀態(tài)。所以一定要利用適當(dāng)?shù)姆椒?,來免除死鎖狀態(tài)的發(fā)生。
2.3.1 深度值排序
上述的全部信息資源之間的邏輯關(guān)聯(lián)可以依靠一張DAG圖進(jìn)行表示,設(shè)定對DAG圖進(jìn)行分層處理,每層具有自身一定的深度值,深度值越小,就說明優(yōu)先級越高,深度值的運(yùn)算方程如下所示。
(6)
式中,parent(sbi)傳輸?shù)氖切畔bi的父節(jié)點(diǎn)集合,max(level(parent(sbi)))的傳輸值是sbi父節(jié)點(diǎn)集合里具有最大深度值的父節(jié)點(diǎn),可以憑借深度遍歷的方法獲得DAG圖節(jié)點(diǎn)的深度信息[6]。采集復(fù)雜網(wǎng)絡(luò)深度信息后,對運(yùn)行同等數(shù)據(jù)庫上的信息序列,就可以依靠層次深度值從小到大進(jìn)行排列,這樣優(yōu)先級越高的信息資源,在運(yùn)行時順序就會靠前,對于同種數(shù)據(jù)庫上的所有信息,經(jīng)過排序之后得到的信息資源運(yùn)行序列就不會出現(xiàn)死鎖狀態(tài)的發(fā)生。
2.3.2 短資源優(yōu)先原則
在同一數(shù)據(jù)庫上啟動不同深度值的信息,依靠深度值排序可以保證信息之間數(shù)據(jù)邏輯關(guān)聯(lián)的合法性,但是同等深度值的信息之間不具有依賴關(guān)聯(lián),可以并行運(yùn)行[7]。如果在數(shù)據(jù)庫內(nèi)出現(xiàn)了多個同等深度值的信息,它們會以任意的次序運(yùn)行,可能會致使堵塞的狀態(tài)發(fā)生,信息sb3,sb4,sb5的深度值同等,且它們占用的資源狀況是不存在序列的,那么信息sb4將被信息sb3堵塞,并且因?yàn)樾畔b6是信息sb4的子節(jié)點(diǎn),因此sb6也會出現(xiàn)堵塞狀況,如果對數(shù)據(jù)庫上運(yùn)行的同深度值可以并行的子信息,使用短信息有限的調(diào)度原則,短信息會被有限運(yùn)行,就能夠解決長信息堵塞短信息的問題,即假如sb4優(yōu)先于sb3運(yùn)行,那么sb6與sb3能夠并行運(yùn),信息R0上子信息的啟動的時間不變,而信息R2上的啟動時間由于sb6的提前啟動而縮減[8]。
2.3.3 父節(jié)點(diǎn)優(yōu)先原則
對于一些子信息節(jié)點(diǎn),其本身即父節(jié)點(diǎn),具有自己的子節(jié)點(diǎn),也可能不存在子節(jié)點(diǎn),或是本身即子節(jié)點(diǎn)[9]。針對一組在數(shù)據(jù)庫上可以并行的子信息,除了要考慮其運(yùn)行的時長外,還需要考慮它們是否具有自己的子節(jié)點(diǎn),存在子節(jié)點(diǎn)的子信息會優(yōu)先運(yùn)行,擬定子信息sb3,sb4,sb5具有同等的深度值,子信息占據(jù)的資源也是同等的,sb4具有子節(jié)點(diǎn),sb3本身即子節(jié)點(diǎn),這時由于sb3有限運(yùn)行,所以sb6的運(yùn)行就會被堵塞,如果提前運(yùn)行sb4,那么sb6,sb3就可以并行運(yùn)行,信息R0上的子信息的運(yùn)行時間不變,而信息R2上的運(yùn)行時間因?yàn)閟b6的提前運(yùn)行而出現(xiàn)減少。
依靠上述的有限原則,對每一種信息憑借資源編號進(jìn)行區(qū)分,得到所有信息上啟動的子信息集合,依據(jù)上述的原則取得所有信息上子信息的運(yùn)行序列,利用子信息之間的邏輯關(guān)聯(lián)和子信息的運(yùn)行序列,就可以運(yùn)算出信息資源完成該資源上所有任務(wù)需要消耗的時間,取最大消耗時間的倒數(shù)描述適應(yīng)值的大小,因此消耗的時間越長,適應(yīng)值就會越小[10]。
運(yùn)算適應(yīng)值要先運(yùn)算全部任務(wù)的完成時間,設(shè)定任務(wù)i在信息j上的消耗時間為fin[i][j],那么
fin[i][j]=start[i][j]+E[i][j]
(7)
式中,start[i][j]代表任務(wù)i在信息j上的運(yùn)行開始時間,start[i][j]通過三種因素評定:信息的空閑時間、任務(wù)i的父節(jié)點(diǎn)最晚消耗時間、最晚父節(jié)點(diǎn)任務(wù)所在的信息資源與任務(wù)i所在的資源之間的通信延遲,估算公式如下所示:
start[i][j]=max{r[j]max(fin(p(i)))+Tr[m][j]}
(8)
式中,r[j]代表信息資源j上最近一次空閑時間,max(fin(p(i)))返回值為任務(wù)i的每一種父節(jié)點(diǎn)任務(wù)完成時間的最大值,Tr[m][j]代表該父節(jié)點(diǎn)所處信息資源m與任務(wù)所處信息資源j之間存在的通信延遲。
PSO方法具有較多的優(yōu)點(diǎn),但是因?yàn)閭鹘y(tǒng)方法隨機(jī)性較大,所以存在較多不完善的地方,本文主要從動態(tài)多群體協(xié)作與變異粒子逆向飛行兩種方向進(jìn)行優(yōu)化改進(jìn)。動態(tài)多群體協(xié)作提高了算法的收斂效率與求解精度,變異粒子逆向飛行可以在一定程度上剔除陷入局部最優(yōu)的影響,維持與增加了種群的多樣性,對調(diào)節(jié)系統(tǒng)的負(fù)載平衡具有一定的幫助[11]。這種改進(jìn)粒子群優(yōu)化方法,復(fù)雜網(wǎng)絡(luò)集群可以完成信息交互、資源搜索、次群推薦最優(yōu)資源至主群、變異粒子逆向飛行與主群篩選全局最優(yōu)。
2.5.1 改進(jìn)粒子群優(yōu)化方法
針對每個資源請求者,復(fù)雜網(wǎng)絡(luò)集群一定要推薦出一種比較優(yōu)質(zhì)的資源。每一代,所有子群都會把最優(yōu)的單獨(dú)信息傳送至主群,主群從中挑選最優(yōu)子群個體并優(yōu)化。方法內(nèi)主、次群的架構(gòu)如圖1所示。
圖1 主、次群體架構(gòu)
主群方法公式如下
(9)
2.5.2 信息資源調(diào)度
在復(fù)雜網(wǎng)絡(luò)平臺上,具有一種Datacenter類的軟件對主機(jī)體進(jìn)行管理,這些主機(jī)體遵照一定的分配策略能夠被分配到多種或一種虛擬機(jī)內(nèi),它們能夠模擬與復(fù)雜網(wǎng)絡(luò)存在關(guān)聯(lián)的基礎(chǔ)設(shè)施服務(wù)。因此,在平臺上不需要基礎(chǔ)設(shè)施,可以優(yōu)先考慮集群資源調(diào)度策略。整體的復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫集群,首先需要初始化虛擬資源池,將資源池分為n種,其中,1為主群,n-1為次群。運(yùn)行多群協(xié)作方法,主群運(yùn)行式(8)與(9),ω經(jīng)過式(10)線性遞減獲得
(10)
式中,ω∈[0.4,0.9],ωs=0.4,ωe=0.9,T代表最大的迭代數(shù)量,t代表目前的迭代次數(shù)。
出現(xiàn)下一代主群與次群離子的當(dāng)前坐標(biāo)、搜索速度、全局最優(yōu)坐標(biāo)與最優(yōu)坐標(biāo),之后產(chǎn)生變異粒子,變異粒子的總量由隨機(jī)數(shù)產(chǎn)生。更改方向逆向飛行,更新整體信息量,如果沒有到達(dá)最優(yōu)解或是沒到達(dá)迭代閾值,就繼續(xù)進(jìn)行迭代。為了確保資源在分配時能夠保持負(fù)載平衡,變異粒子逆向飛行時,給其增添權(quán)重因子,測量節(jié)點(diǎn)網(wǎng)絡(luò),導(dǎo)致負(fù)載失衡。
二是企業(yè)內(nèi)部市場開發(fā)工作的學(xué)習(xí)活動不系統(tǒng),很多企業(yè)或者部門忙著抓生產(chǎn)而忽視了市場開發(fā)活動,把經(jīng)濟(jì)效益放在第一位,而當(dāng)時效益不那么明顯的市場開發(fā)工作放在后面,造成企業(yè)內(nèi)部人員矛盾重重,市場開發(fā)沒有影響力和號召力,遇到問題的時候一盤散沙,無法真正處理和解決問題,影響了企業(yè)的公信力[1]。
仿真環(huán)境為Intel Celeron Tulatin1GHz CPU和384MB SD內(nèi)存的硬件環(huán)境和MATLAB6.1的軟件環(huán)境。
為了證明本文方法的實(shí)用性,擬定實(shí)驗(yàn)?zāi)P?,如圖2所示。
圖2 實(shí)驗(yàn)?zāi)P?/p>
首先利用查詢產(chǎn)生器憑借隨機(jī)數(shù)搜索查詢與其所需處理的節(jié)點(diǎn),之后將搜索到的查詢信息傳送到查詢隊列里,為了讓查詢隊列內(nèi)不存在太多查詢,在查詢隊列的前面設(shè)定調(diào)度窗口,只有進(jìn)入調(diào)度窗口內(nèi)查詢才會進(jìn)入下次調(diào)度,最后使用本文調(diào)度方法,從調(diào)度窗口內(nèi)搜索能夠共同運(yùn)行的查詢組合,將選取的查詢傳輸?shù)椒?wù)單元里運(yùn)行。
首先設(shè)定調(diào)度窗口的尺寸為33,每次調(diào)度是查詢隊列前的33個查詢,節(jié)點(diǎn)的數(shù)量分別是17、33、65與129,通過本文方法與傳統(tǒng)方法的對比來驗(yàn)證,不同方法在調(diào)度信息資源時對系統(tǒng)利用率的影響,結(jié)果如圖3所示。
圖3 不同方法調(diào)度信息資源時對系統(tǒng)利用率的影響
通過圖3能夠看出,本文方法存在較好的系統(tǒng)利用率。為了了解調(diào)度窗口的大小對系統(tǒng)效率的干擾,把處理節(jié)點(diǎn)數(shù)量固定成33,然后改變調(diào)度窗口的大小,結(jié)果如圖4所示。
圖4 不同方法的調(diào)度窗口對系統(tǒng)利用率的影響
算法系統(tǒng)利用率均隨窗口大小的增大而上升,因隨窗口大小的增加,調(diào)度存在了更多的查詢選擇空間,因此可以找到更為優(yōu)質(zhì)的查詢組合,其中,本文方法的效率最高,在大多數(shù)狀況下,能夠使用到所有處理節(jié)點(diǎn),很少會出現(xiàn)閑置處理的節(jié)點(diǎn)。
為了降低復(fù)雜網(wǎng)絡(luò)中節(jié)點(diǎn)查詢量的負(fù)載情況,提升網(wǎng)絡(luò)系統(tǒng)的處理效率,本文提出了一種復(fù)雜網(wǎng)絡(luò)數(shù)據(jù)庫中信息資源的調(diào)度方法。
1)構(gòu)建短資源優(yōu)先原則與父節(jié)點(diǎn)優(yōu)先原則,憑借上述的有限原則,對每一種信息憑借資源編號進(jìn)行分類,獲得每種信息上運(yùn)行的子信息集合。
2)對傳統(tǒng)的PSO方法進(jìn)行優(yōu)化,并將優(yōu)化后的算法添加上述原則,依靠該算法對信息集合進(jìn)行集群調(diào)度。
3)本文方法能夠有效地對信息資源進(jìn)行調(diào)度,存在較好的系統(tǒng)利用率。
4)本文方法的調(diào)度效率最高,在大多數(shù)狀況下,能夠使用到所有處理節(jié)點(diǎn),很少會出現(xiàn)閑置處理的節(jié)點(diǎn)。