常 潔
(中國水利水電第十一工程局有限公司 河南 鄭州 450001)
隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,社會逐漸進入了信息時代,各行各業(yè)每時每刻都在產(chǎn)生海量的信息數(shù)據(jù),面對如此龐大的信息數(shù)據(jù)[1],現(xiàn)有的信息儲存管理技術(shù)受到了沖擊。傳統(tǒng)的信息儲存系統(tǒng)內(nèi)部的分散性較高,無法體現(xiàn)拓?fù)浣Y(jié)構(gòu)的高效性,不滿足海量數(shù)據(jù)的存儲需求,因此為了促進社會信息化發(fā)展[2],保證海量數(shù)據(jù)的高效存儲調(diào)用,需要設(shè)計新的海量信息存儲系統(tǒng)。
傳統(tǒng)的信息存儲系統(tǒng)往往是基于數(shù)據(jù)的集中管理要求設(shè)計的,雖然在一定程度上能完成數(shù)據(jù)的集中管控,但因其整體的國產(chǎn)性較低[3],信息存儲時消耗的成本較高,除此之外在海量信息存儲時,要求的信息調(diào)用速度較高,傳統(tǒng)的信息存儲系統(tǒng)往往無法實現(xiàn)無損壓縮轉(zhuǎn)換,因此不滿足目前的海量信息存儲需求。BP神經(jīng)網(wǎng)絡(luò)是一種特殊的逆向訓(xùn)練神經(jīng)網(wǎng)絡(luò),可以無需確定信息之間的關(guān)系,完成期望值操作[4],其在信息處理中具有較高的應(yīng)用價值,能實現(xiàn)高效信息轉(zhuǎn)換,降低信息儲存調(diào)用產(chǎn)生的誤差,因此,本文基于BP神經(jīng)網(wǎng)絡(luò)設(shè)計了新的海量信息儲存系統(tǒng),為后續(xù)的信息管控提供依據(jù)。
在海量信息儲存時,為了增加信息管理訪問的合理性,需要使用CMDS儲存器,實現(xiàn)信息的高效管理訪問,傳統(tǒng)的儲存器往往使用類似光纖通道的結(jié)構(gòu)進行儲存,由于本文設(shè)計的系統(tǒng)面對的數(shù)據(jù)量較大[5],因此使用了交換式轉(zhuǎn)換I/O矩陣通道對儲存結(jié)構(gòu)進行拓展。
CMDS儲存器內(nèi)部使用了InfiniBand交換結(jié)構(gòu)設(shè)計了標(biāo)準(zhǔn)化連接模型,通過InfiniBand交換結(jié)構(gòu)可以拓寬模型的鏈路通道,有效地解決數(shù)據(jù)堵塞問題[6],提高系統(tǒng)整體的數(shù)據(jù)處理性能。InfiniBand交換結(jié)構(gòu)與CPU直接相連,在數(shù)據(jù)發(fā)送后[7],InfiniBand交換結(jié)構(gòu)可以立即將其傳輸?shù)较嚓P(guān)的鏈路通道中,再將交換后的存儲數(shù)據(jù)輸入到CPU中。為了實現(xiàn)數(shù)據(jù)的高效管控,CMDS儲存器還添加了SQL Server文件,進一步提高系統(tǒng)的整體儲存容量。
在系統(tǒng)海量信息采集時,需要進行集中管控,降低信息采集功耗,因此本文設(shè)計的系統(tǒng)添加了ADμC812控制芯片統(tǒng)一對系統(tǒng)的信息采集模塊進行調(diào)控。ADμC812控制芯片是由AD公司研發(fā)的高效信息采集控制芯片[8],該控制芯片的內(nèi)部增加了多個數(shù)據(jù)采集通道,因此該芯片即使不連接其他外設(shè)設(shè)備,也同樣能實現(xiàn)高效信息控制采集。
為了增加ADμC812與系統(tǒng)的匹配度,本文設(shè)計的系統(tǒng)在該芯片內(nèi)部添加了A/D轉(zhuǎn)換中心,在A/D轉(zhuǎn)換中心中能實現(xiàn)海量信息多路傳輸[9],分層采樣,最大限度地增加系統(tǒng)的信息處理效率。在海量信息存儲過程中,必須注意信息的分類問題,因此ADμC812控制芯片額外增加了自校準(zhǔn)特性,將SFR讀寫中心與芯片內(nèi)部的bit輸出電壓結(jié)合,即可完成海量信息有效分類。ADμC812控制芯片使用8 051內(nèi)核,并以256 Byte與內(nèi)核兼容。除了上述優(yōu)勢外,ADμC812控制芯片設(shè)置了12C總線接口,保證芯片的靈活控制功能,能有效降低信息采集功耗。
為了保證海量信息儲存系統(tǒng)的信息存儲調(diào)用效率,本文設(shè)計的系統(tǒng)使用RISC處理器處理系統(tǒng)內(nèi)部的指令。RISC處理器含有一種總線,其可以在同一空間有效地處理系統(tǒng)內(nèi)部的指令[10]。RISC處理器采用單線指令處理法,一條指令處理完畢后再處理下一條指令。RISC處理器的使用成本較高,因此為了降低使用成本,本文設(shè)計的系統(tǒng)額外添加了多個微處理單元,與系統(tǒng)時鐘結(jié)合共同完成海量信息儲存系統(tǒng)的指令處理。
根據(jù)海量信息存儲系統(tǒng)的要求,本文選取Hadoop和Hbase數(shù)據(jù)庫來采集處理海量的存儲信息數(shù)據(jù)。選用Name Node作為管理基礎(chǔ)層,驗證現(xiàn)存的儲存節(jié)點,通過驗證的節(jié)點才可以進入訪問通道,讀取需要處理的信息[11]。在實際信息采集的過程中,受信息類型的影響,很容易出現(xiàn)信息不兼容的問題,在使用Hadoop采集存儲信息時很容易出現(xiàn)元數(shù)據(jù)膨脹問題,無法保證信息的存儲效率,本文設(shè)計的系統(tǒng)將Hadoop與Hbase數(shù)據(jù)庫進行整合,增加存儲系統(tǒng)的處理彈性,提高系統(tǒng)存儲的基礎(chǔ)效率。
采集到相關(guān)的存儲數(shù)據(jù)后,需要設(shè)計存儲數(shù)據(jù)在系統(tǒng)中的存儲格式,本文利用Hadoop集群將現(xiàn)有的數(shù)據(jù)流劃分開,并在節(jié)點服務(wù)器中記錄全部元數(shù)據(jù)信息,確保各個Name Node節(jié)點都能有效被響應(yīng),在用戶查找存儲信息時,根據(jù)各個節(jié)點響應(yīng)效果對查找文件進行綜合定位[12]。為了降低存儲信息耗費的內(nèi)存,本文使用SequenceFile技術(shù)進行信息壓縮處理,進一步降低海量數(shù)據(jù)在信息存儲系統(tǒng)中占據(jù)的空間,實現(xiàn)信息的有效采集處理。
傳統(tǒng)的信息存儲系統(tǒng)缺乏控制海量信息的中心控制節(jié)點,數(shù)據(jù)存儲的難度較高,本文設(shè)計的系統(tǒng)結(jié)合BP神經(jīng)網(wǎng)絡(luò),使用梯度搜索技術(shù)設(shè)計了數(shù)據(jù)儲存控制節(jié)點的參數(shù)計算式,見式(1)。
公式(1)中,D代表數(shù)據(jù)總量,E代表節(jié)點權(quán)重,該參數(shù)在實際使用過程中需要進行初始化處理,避免計算式存在局部最小值。為了保證系統(tǒng)的集中控制功能,本文設(shè)置了加速讀取緩存層,該緩存層可以存儲一段連續(xù)時間內(nèi)的信息,判定信息的類型,進而將信息輸入到各個節(jié)點上。
中心節(jié)點可以有效地分配系統(tǒng)中的緩存資源,保證節(jié)點資源的平均性,因此在構(gòu)建中心節(jié)點時可以代入上文計算的數(shù)據(jù)儲存控制參數(shù),分析系統(tǒng)的數(shù)據(jù)及調(diào)度任務(wù),再選擇恰當(dāng)?shù)墓?jié)點完成綜合分配[13]。中心節(jié)點與系統(tǒng)內(nèi)部的元數(shù)據(jù)信息有重要關(guān)系,也是提高系統(tǒng)性能的關(guān)鍵部分,元數(shù)據(jù)信息通常被儲存在系統(tǒng)的內(nèi)存中,維護系統(tǒng)的正常運行,因此在中心節(jié)點構(gòu)建的過程中,可以詢問信息的緩存時間,進行綜合化配置,保證信息儲存的高效性。
根據(jù)中心節(jié)點的位置可以規(guī)劃系統(tǒng)的任務(wù)調(diào)度步驟,設(shè)計海量信息存儲的功能模塊。研究發(fā)現(xiàn),在信息存儲過程中,各個信息的存儲速度與信息預(yù)存節(jié)點的基礎(chǔ)狀態(tài)相關(guān),因此結(jié)合海量信息的存儲特點,設(shè)計了信息存儲系統(tǒng)的功能模塊。
(1)元數(shù)據(jù)管理模塊。在元數(shù)據(jù)讀取時通常需要使用Timer定時器來不斷地讀寫和修改,因此為了反映各個時間段的數(shù)據(jù)關(guān)系,本文使用Meta Data Manager進行了元數(shù)據(jù)管理。該管理模塊構(gòu)建了多個索引存放結(jié)構(gòu),并通過ProvObjInfo完成數(shù)據(jù)映射,避免消耗過多的數(shù)據(jù)分配時間[14]。
(2)任務(wù)調(diào)度模塊。在客戶端發(fā)送請求后,需要根據(jù)系統(tǒng)的運行狀況進行節(jié)點分配,完成各個節(jié)點的任務(wù),中心節(jié)點可以根據(jù)客戶端的請求指令將數(shù)據(jù)進一步解析,結(jié)合分配函數(shù)計算后傳輸?shù)娇蛻舳酥小?/p>
(3)客戶端緩存模塊。緩存模塊是信息存儲系統(tǒng)的核心模塊,可以在LocationEntity中記錄需要緩存的信息、分析緩存節(jié)點的位置,用戶在查詢過程中可以調(diào)用search Entity Location函數(shù),實現(xiàn)信息的準(zhǔn)確定位[15]。
實現(xiàn)海量信息存儲的最后一步就是設(shè)計有效的信息調(diào)度策略。在調(diào)度初期可以設(shè)計標(biāo)準(zhǔn)化儲存架構(gòu),將總儲存設(shè)備與信息傳輸通道相連,用戶發(fā)送請求后文件服務(wù)器需要立即進行響應(yīng),編寫驅(qū)動程序,待數(shù)據(jù)返回后便可結(jié)束此次調(diào)度。
為了增加海量信息的調(diào)度效率,本文設(shè)置了兩個不同的調(diào)度通道,通道1可以接入局域網(wǎng),向服務(wù)器提供儲存服務(wù),通道2可以實施設(shè)備通信,有效地增加了數(shù)據(jù)分流處理效率,降低了文件服務(wù)器的負(fù)荷。
選取DBPS測試平臺進行系統(tǒng)測試,為了保證測試的穩(wěn)定性,該測試平臺使用C++搭建測試架構(gòu),并使用標(biāo)準(zhǔn)化g++4.8.2進行調(diào)節(jié),在保證系統(tǒng)測試穩(wěn)定性情況下,本文搭建交換局域網(wǎng),拓?fù)浣Y(jié)構(gòu)見圖1。
由圖1可知,DBPS測試平臺內(nèi)部設(shè)置了10臺服務(wù)器,各個服務(wù)器的源碼不同,統(tǒng)一通過交換機與局域網(wǎng)相連,服務(wù)器CPU頻率設(shè)為3.1 GHz,內(nèi)存大小設(shè)置為64 G,CPU位數(shù)是64 bit,服務(wù)器使用SATA 500硬盤,其最大傳輸效率為1 000 Mbps。交換機傳輸速率為10/100/1 000 Mbps,內(nèi)部共包含24個端口,并以全雙工模式進行傳輸。本文搭建系統(tǒng)測試平臺內(nèi)部設(shè)置了緩存、儲存節(jié)點,各個節(jié)點的參數(shù)配置見表1。
表1 節(jié)點參數(shù)配置
根據(jù)表1節(jié)點參數(shù),可選取符合系統(tǒng)測試需求的海量儲存信息,在測試過程中,使用creste命令創(chuàng)建不同的測試對象,接下來為選取對象設(shè)置添加屬性,構(gòu)建命令關(guān)聯(lián),提交給系統(tǒng)測試中心,系統(tǒng)按照指令提示完成測試操作,并輸出測試結(jié)果。
在上述搭建DBPS測試平臺中分別使用本文設(shè)計系統(tǒng)完成信息儲存操作,記錄兩個系統(tǒng)的存儲耗時,測試結(jié)果見表2。
表2 系統(tǒng)測試結(jié)果
由表2可知,本文設(shè)計存儲系統(tǒng)在連續(xù)幾次信息儲存操作中消耗時間均較短,證明設(shè)計的海量信息存儲系統(tǒng)的性能良好,具有有效性,有一定應(yīng)用價值。
在信息化時代,各個領(lǐng)域的數(shù)據(jù)信息量都在急劇增長,傳統(tǒng)的信息儲存系統(tǒng)受集中管理限制已經(jīng)無法滿足目前的信息存儲需求,本文基于BP神經(jīng)網(wǎng)絡(luò),設(shè)計新的海量信息存儲系統(tǒng),進行系統(tǒng)測試,結(jié)果表明,本文存儲系統(tǒng)的存儲耗時較短,性能良好,有一定的應(yīng)用價值,可以為后續(xù)的信息管控提供參考。