本項(xiàng)發(fā)明涉及網(wǎng)絡(luò)安全、大數(shù)據(jù)分析、機(jī)器學(xué)習(xí)領(lǐng)域,特別涉及一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析方法和系統(tǒng)。
背景技術(shù):
計(jì)算機(jī)技術(shù)和通信技術(shù)迅速發(fā)展,用戶需求快速增長(zhǎng),使得計(jì)算機(jī)網(wǎng)絡(luò)的應(yīng)用越來(lái)越廣、規(guī)模越來(lái)越大.在日益復(fù)雜的計(jì)算機(jī)網(wǎng)絡(luò)環(huán)境和動(dòng)態(tài)變化的攻防場(chǎng)景下,獲取網(wǎng)絡(luò)當(dāng)前的安全狀況并預(yù)測(cè)其未來(lái)的變化趨勢(shì),可以為安全管理員的安全操作和決策提供依據(jù)和指導(dǎo),從而提高網(wǎng)絡(luò)防御的主動(dòng)性。同時(shí),在大數(shù)據(jù)時(shí)代下,網(wǎng)絡(luò)安全事件層出不窮,傳統(tǒng)單一的防御設(shè)備或者檢測(cè)設(shè)備無(wú)法滿足安全需求。傳統(tǒng)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析雖然能夠綜合各方面的安全因素,從整體上動(dòng)態(tài)反映網(wǎng)絡(luò)安全狀況,并對(duì)安全狀況的發(fā)展趨勢(shì)進(jìn)行預(yù)測(cè)和預(yù)警,但是在面對(duì)大數(shù)據(jù)時(shí)也顯得有些無(wú)能為力。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提出一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析方法和系統(tǒng),解決了傳統(tǒng)的網(wǎng)絡(luò)安全態(tài)勢(shì)系統(tǒng)面對(duì)大數(shù)據(jù)時(shí)不能進(jìn)行有效分析處理的問(wèn)題,通過(guò)神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)分析進(jìn)行自我學(xué)習(xí)和調(diào)整,實(shí)現(xiàn)了對(duì)大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析。
本發(fā)明解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:
一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析方法,應(yīng)用在包括輸入層、隱含層和輸出層的神經(jīng)網(wǎng)絡(luò)上,包括如下步驟:
通過(guò)Flume組件在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)分布式的大數(shù)據(jù)采集;
通過(guò)MapReduce并行化計(jì)算在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)對(duì)采集的大數(shù)據(jù)進(jìn)行清洗預(yù)處理、清洗和態(tài)勢(shì)分析,將獲得的初步態(tài)勢(shì)預(yù)測(cè)結(jié)果輸出給神經(jīng)網(wǎng)絡(luò)的隱含層;所述清洗包括數(shù)據(jù)降維和聚類(lèi)分析;所述態(tài)勢(shì)分析包括關(guān)聯(lián)規(guī)則挖掘和基于時(shí)間維度的初步態(tài)勢(shì)預(yù)測(cè);
神經(jīng)網(wǎng)絡(luò)隱含層的每一個(gè)神經(jīng)元接收所述輸入層輸出的初步態(tài)勢(shì)預(yù)測(cè)結(jié)果,隱含層根據(jù)輸入層與隱含層神經(jīng)元之間的連接權(quán)值及隱含層神經(jīng)元的輸出閾值進(jìn)行信息融合獲得局部態(tài)勢(shì)判決結(jié)果并輸出給神經(jīng)網(wǎng)絡(luò)的輸出層;
神經(jīng)網(wǎng)絡(luò)輸出層的每一個(gè)神經(jīng)元接收所述隱含層輸出的局部態(tài)勢(shì)判決結(jié)果,輸出層根據(jù)隱含層與輸出層神經(jīng)元之間的連接權(quán)值及輸出層神經(jīng)元的輸出閾值進(jìn)行信息融合和自學(xué)習(xí)獲得總體的安全態(tài)勢(shì)判決結(jié)果,并存儲(chǔ)到HBASE數(shù)據(jù)庫(kù)中。
優(yōu)選的,所述清洗預(yù)處理的步驟包括:
分片采集到的大數(shù)據(jù);
數(shù)字化分片數(shù)據(jù)中每一條記錄中的流量特征;
去除記錄中的無(wú)關(guān)特征和符號(hào);
合并預(yù)處理好的數(shù)據(jù)并輸出。
優(yōu)選的,所述數(shù)據(jù)降維采用特征分解算法對(duì)數(shù)據(jù)進(jìn)行降維,包括:
將清洗預(yù)處理后的數(shù)據(jù)轉(zhuǎn)化為矩陣A;
通過(guò)矩陣A轉(zhuǎn)換得到臨時(shí)的對(duì)角矩陣B;
將對(duì)角矩陣B進(jìn)行特征分解得到特征向量矩陣C;
將特征向量矩陣C和矩陣A相乘得到待處理數(shù)據(jù)的特征向量矩陣D;
將原始矩陣A和矩陣D的轉(zhuǎn)置相乘得到最終的降維數(shù)據(jù)。
優(yōu)選的,所述聚類(lèi)分析采用歐氏距離來(lái)判斷,把每一條記錄屬于哪一個(gè)類(lèi)別進(jìn)行劃分,包括:
掃描降維后的數(shù)據(jù),隨機(jī)選取若干個(gè)點(diǎn)作為初始的聚類(lèi)中心;
將降維后的數(shù)據(jù)按照相同的大小進(jìn)行分片處理;
每個(gè)計(jì)算節(jié)點(diǎn)讀取數(shù)據(jù),根據(jù)初始聚類(lèi)中心進(jìn)行聚類(lèi);
重新計(jì)算新劃分的每一個(gè)類(lèi)別的中心;
匯總所有的新的聚類(lèi)中心;
判斷是否滿足聚類(lèi)分析的結(jié)束閾值,若滿足條件則根據(jù)新的聚類(lèi)中心輸出數(shù)據(jù)。
優(yōu)選的,所述關(guān)聯(lián)規(guī)則挖掘采用并行頻繁項(xiàng)集挖掘算法來(lái)發(fā)現(xiàn)每一條記錄之間的關(guān)聯(lián)規(guī)
則,包括:
掃描聚類(lèi)后的數(shù)據(jù)并進(jìn)行數(shù)據(jù)的切片分組;
將每一個(gè)分組的數(shù)據(jù)生成一棵蘊(yùn)含頻繁項(xiàng)集的FP樹(shù);
對(duì)生成的FP樹(shù)進(jìn)行關(guān)聯(lián)規(guī)則和頻繁項(xiàng)集的挖掘;
根據(jù)挖掘的頻繁項(xiàng)集分析并存儲(chǔ)安全狀況和危險(xiǎn)狀況下的記錄特征。
優(yōu)選的,所述基于時(shí)間維度的初步態(tài)勢(shì)預(yù)測(cè),包括:基于數(shù)據(jù)記錄采集的時(shí)間先后,將
數(shù)據(jù)按照時(shí)間段進(jìn)行分片,劃分時(shí)間段后,通過(guò)對(duì)比前一個(gè)時(shí)間段和當(dāng)前時(shí)間段數(shù)據(jù)記
錄的安全狀況和危險(xiǎn)狀況進(jìn)行初步態(tài)勢(shì)預(yù)測(cè)。
優(yōu)選的,所述信息融合和自學(xué)習(xí)的步驟包括:
隱含層的神經(jīng)元和輸出層的神經(jīng)元全連接,輸出層接收來(lái)自隱含層的所有局部態(tài)勢(shì)判決結(jié)果;
初始化每一層中的每一個(gè)神經(jīng)元所包含的權(quán)值和閾值;
輸出層將隱含層的所有輸出和對(duì)應(yīng)的權(quán)值相乘后進(jìn)行累加,并將所有的局部態(tài)勢(shì)判決結(jié)果進(jìn)行融合;
把本次融合后的結(jié)果和前一次融合后輸出層的結(jié)果進(jìn)行比較,獲得學(xué)習(xí)誤差;
根據(jù)獲得的學(xué)習(xí)誤差調(diào)整每一個(gè)神經(jīng)元的權(quán)值和閾值;如果學(xué)習(xí)誤差為正值,則按照比例減小權(quán)值和閾值;如果學(xué)習(xí)誤差為負(fù)值,則按照比例增大權(quán)值和閾值;
判斷學(xué)習(xí)誤差是否在預(yù)設(shè)的可接受的范圍之內(nèi)或者是否達(dá)到學(xué)習(xí)的最大次數(shù);如果是,輸出安全態(tài)勢(shì)判決結(jié)果。
優(yōu)選的,所述輸入層的神經(jīng)元和隱含層的神經(jīng)元全連接。
一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析系統(tǒng),包括:數(shù)據(jù)采集模塊、數(shù)據(jù)分析模塊和態(tài)勢(shì)預(yù)測(cè)模塊;所述數(shù)據(jù)采集模塊用于通過(guò)Flume組件在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)分布式的大數(shù)據(jù)采集,并將采集到的大數(shù)據(jù)輸出給所述數(shù)據(jù)分析模塊;所述數(shù)據(jù)分析模塊用于通過(guò)MapReduce并行化計(jì)算在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)對(duì)輸入的大數(shù)據(jù)進(jìn)行初步態(tài)勢(shì)預(yù)測(cè),并將初步態(tài)勢(shì)預(yù)測(cè)結(jié)果輸出給所述態(tài)勢(shì)預(yù)測(cè)模塊;所述態(tài)勢(shì)預(yù)測(cè)模塊用于通過(guò)神經(jīng)網(wǎng)絡(luò)隱含層和輸出層的信息融合和自學(xué)習(xí)獲得總體的安全態(tài)勢(shì)判決結(jié)果,并將所述安全態(tài)勢(shì)判決結(jié)果存儲(chǔ)到HBASE數(shù)據(jù)庫(kù)。
本發(fā)明具有如下有益效果:
(1)本發(fā)明將采集的大數(shù)據(jù)劃分為多個(gè)子集,由于數(shù)據(jù)量巨大,單一節(jié)點(diǎn)或處理器不能同時(shí)處理,因此把整個(gè)數(shù)據(jù)劃分為大小相同的分片,每一個(gè)分片就是整個(gè)數(shù)據(jù)的一個(gè)子集,具體劃分過(guò)程由MapReduce編成框架透明的執(zhí)行,在Hadoop平臺(tái)的每個(gè)節(jié)點(diǎn)上同時(shí)處理分片后的一塊數(shù)據(jù),提高整體運(yùn)行的效率,具有很好的伸縮性和魯棒性;
(2)本發(fā)明對(duì)于網(wǎng)絡(luò)安全的態(tài)勢(shì)預(yù)測(cè)是通過(guò)綜合所有的局部結(jié)果得到的一個(gè)全面而綜合的判決;得到判決結(jié)果后存儲(chǔ)在數(shù)據(jù)倉(cāng)庫(kù)中,為后續(xù)的誤差調(diào)整提供了可靠的數(shù)據(jù)依賴,從而實(shí)現(xiàn)一個(gè)不斷優(yōu)化的自適應(yīng)過(guò)程;
(3)通過(guò)神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)分析進(jìn)行自我學(xué)習(xí)和調(diào)整,實(shí)現(xiàn)了對(duì)大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析,同時(shí)提高了網(wǎng)絡(luò)安全態(tài)勢(shì)分析預(yù)測(cè)的處理效率和準(zhǔn)確性;
(4)將最終的計(jì)算結(jié)果中有價(jià)值的部分?jǐn)?shù)據(jù)寫(xiě)入HBase中;用戶通過(guò)接口讀取存儲(chǔ)在HBase中的預(yù)測(cè)結(jié)果。
以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明,但本發(fā)明的一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析方法和系統(tǒng)不局限于實(shí)施例。
附圖說(shuō)明
圖1是本發(fā)明方法的流程圖;
圖2是本發(fā)明方法的清洗預(yù)處理的流程圖;
圖3是本發(fā)明方法的數(shù)據(jù)降維的流程圖;
圖4是本發(fā)明方法的聚類(lèi)分析的流程圖;
圖5是本發(fā)明方法的關(guān)聯(lián)規(guī)則挖掘的流程圖;
圖6是本發(fā)明方法的信息融合和自學(xué)習(xí)的流程圖;
圖7是本發(fā)明系統(tǒng)的邏輯圖;
圖8是本發(fā)明系統(tǒng)的架構(gòu)圖;
圖9是本發(fā)明系統(tǒng)的工作流程圖。
具體實(shí)施方式
一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析方法,應(yīng)用在包括輸入層、隱含層和輸出層的神經(jīng)網(wǎng)絡(luò)上,如圖1所示,包括如下步驟:
步驟101,通過(guò)Flume組件在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)分布式的大數(shù)據(jù)采集;
步驟102,通過(guò)MapReduce并行化計(jì)算在神經(jīng)網(wǎng)絡(luò)的輸入層實(shí)現(xiàn)對(duì)采集的大數(shù)據(jù)進(jìn)行清洗預(yù)處理、清洗和態(tài)勢(shì)分析,將獲得的初步態(tài)勢(shì)預(yù)測(cè)結(jié)果輸出給神經(jīng)網(wǎng)絡(luò)的隱含層;所述清洗包括數(shù)據(jù)降維和聚類(lèi)分析;所述態(tài)勢(shì)分析包括關(guān)聯(lián)規(guī)則挖掘和基于時(shí)間維度的初步態(tài)勢(shì)預(yù)測(cè);
步驟103,神經(jīng)網(wǎng)絡(luò)隱含層的每一個(gè)神經(jīng)元接收所述輸入層輸出的初步態(tài)勢(shì)預(yù)測(cè)結(jié)果,隱含層根據(jù)輸入層與隱含層神經(jīng)元之間的連接權(quán)值及隱含層神經(jīng)元的輸出閾值進(jìn)行信息融合獲得局部態(tài)勢(shì)判決結(jié)果并輸出給神經(jīng)網(wǎng)絡(luò)的輸出層;所述輸入層的神經(jīng)元和隱含層的神經(jīng)元全連接;
步驟104,神經(jīng)網(wǎng)絡(luò)輸出層的每一個(gè)神經(jīng)元接收所述隱含層輸出的局部態(tài)勢(shì)判決結(jié)果,輸出層根據(jù)隱含層與輸出層神經(jīng)元之間的連接權(quán)值及輸出層神經(jīng)元的輸出閾值進(jìn)行信息融合和自學(xué)習(xí)獲得總體的安全態(tài)勢(shì)判決結(jié)果,并存儲(chǔ)到HBASE數(shù)據(jù)庫(kù)中。
進(jìn)一步的,如圖2所示,所述清洗預(yù)處理的步驟包括:
步驟201,分片采集到的大數(shù)據(jù);
步驟202,數(shù)字化分片數(shù)據(jù)中每一條記錄中的流量特征;
步驟203,去除記錄中的無(wú)關(guān)特征和符號(hào);
步驟204,合并預(yù)處理好的數(shù)據(jù)并輸出。
進(jìn)一步的,如圖3所示,所述數(shù)據(jù)降維采用特征分解算法對(duì)數(shù)據(jù)進(jìn)行降維,包括:
步驟301,將清洗預(yù)處理后的數(shù)據(jù)轉(zhuǎn)化為矩陣A;
步驟302,通過(guò)矩陣A轉(zhuǎn)換得到臨時(shí)的對(duì)角矩陣B;
步驟303,將對(duì)角矩陣B進(jìn)行特征分解得到特征向量矩陣C;
步驟304,將特征向量矩陣C和矩陣A相乘得到待處理數(shù)據(jù)的特征向量矩陣D;
步驟305,將原始矩陣A和矩陣D的轉(zhuǎn)置相乘得到最終的降維數(shù)據(jù)。
進(jìn)一步的,如圖4所示,所述聚類(lèi)分析采用歐氏距離來(lái)判斷,把每一條記錄屬于哪一個(gè)類(lèi)別進(jìn)行劃分,包括:
步驟401,掃描降維后的數(shù)據(jù),隨機(jī)選取若干個(gè)點(diǎn)作為初始的聚類(lèi)中心;
步驟402,將降維后的數(shù)據(jù)按照相同的大小進(jìn)行分片處理;
步驟403,每個(gè)計(jì)算節(jié)點(diǎn)讀取數(shù)據(jù),根據(jù)初始聚類(lèi)中心進(jìn)行聚類(lèi);
步驟404,重新計(jì)算新劃分的每一個(gè)類(lèi)別的中心;
步驟405,匯總所有的新的聚類(lèi)中心;
步驟406,判斷是否滿足聚類(lèi)分析的結(jié)束閾值,若滿足條件則根據(jù)新的聚類(lèi)中心輸出
數(shù)據(jù)。
進(jìn)一步的,如圖5所示,所述關(guān)聯(lián)規(guī)則挖掘采用并行頻繁項(xiàng)集挖掘算法來(lái)發(fā)現(xiàn)每一條記錄之間的關(guān)聯(lián)規(guī)則,包括:
步驟501,掃描聚類(lèi)后的數(shù)據(jù)并進(jìn)行數(shù)據(jù)的切片分組;
步驟502,將每一個(gè)分組的數(shù)據(jù)生成一顆蘊(yùn)含頻繁項(xiàng)集的FP樹(shù);
步驟503,對(duì)生成的FP樹(shù)進(jìn)行關(guān)聯(lián)規(guī)則和頻繁項(xiàng)集的挖掘;
步驟504,根據(jù)挖掘的頻繁項(xiàng)集分析并存儲(chǔ)安全狀況和危險(xiǎn)狀況下的記錄特征。
優(yōu)選的,所述基于時(shí)間維度的初步態(tài)勢(shì)預(yù)測(cè),包括:基于數(shù)據(jù)記錄采集的時(shí)間先后,將
數(shù)據(jù)按照時(shí)間段進(jìn)行分片,劃分時(shí)間段后,通過(guò)對(duì)比前一個(gè)時(shí)間段和當(dāng)前時(shí)間段數(shù)據(jù)記
錄的安全狀況和危險(xiǎn)狀況進(jìn)行初步態(tài)勢(shì)預(yù)測(cè)。
進(jìn)一步的,如圖6所示,所述信息融合和自學(xué)習(xí)的步驟包括:
步驟601,隱含層的神經(jīng)元和輸出層的神經(jīng)元全連接,輸出層接收來(lái)自隱含層的所有局部態(tài)勢(shì)判決結(jié)果;
步驟602,初始化每一層中的每一個(gè)神經(jīng)元所包含的權(quán)值和閾值;
步驟603,輸出層將隱含層的所有輸出和對(duì)應(yīng)的權(quán)值相乘后進(jìn)行累加,并將所有的局部態(tài)勢(shì)判決結(jié)果進(jìn)行融合;
步驟604,把本次融合后的結(jié)果和前一次融合后輸出層的結(jié)果進(jìn)行比較,獲得學(xué)習(xí)誤差;
步驟605,根據(jù)獲得的學(xué)習(xí)誤差調(diào)整每一個(gè)神經(jīng)元的權(quán)值和閾值;如果學(xué)習(xí)誤差為正值,則按照比例減小權(quán)值和閾值;如果學(xué)習(xí)誤差為負(fù)值,則按照比例增大權(quán)值和閾值;
步驟606,判斷學(xué)習(xí)誤差是否在預(yù)設(shè)的可接受的范圍之內(nèi)或者是否達(dá)到學(xué)習(xí)的最大次數(shù);如果是,輸出安全態(tài)勢(shì)判決結(jié)果。
一種基于神經(jīng)網(wǎng)絡(luò)和大數(shù)據(jù)的網(wǎng)絡(luò)安全態(tài)勢(shì)分析系統(tǒng)包括數(shù)據(jù)采集模塊、數(shù)據(jù)分析模塊和態(tài)勢(shì)預(yù)測(cè)模塊,如圖7所示為本發(fā)明系統(tǒng)的邏輯圖。
所述數(shù)據(jù)采集模塊用于在Flume組件上實(shí)現(xiàn)分布式的大數(shù)據(jù)采集。
在所述數(shù)據(jù)分析模塊處理數(shù)據(jù)前,對(duì)采集的原始數(shù)據(jù)采用基于MapReduce并行化計(jì)算框架的方式進(jìn)行數(shù)據(jù)清洗預(yù)處理,原始數(shù)據(jù)以一行一行的記錄形式保存,其中包含許多的流量特征,由于在后續(xù)的處理中主要針對(duì)的是數(shù)字形式的特征處理,因此數(shù)據(jù)清洗預(yù)處理的第一步就是把每一條記錄中的流量特征數(shù)字化,第二步把記錄中的一些與特征無(wú)關(guān)的符號(hào)清洗去除掉。數(shù)據(jù)清洗預(yù)處理之后進(jìn)行數(shù)據(jù)清洗的第一步為減少數(shù)據(jù)的維度,數(shù)據(jù)降維采用特征分解算法。特征分解算法主要求解的是協(xié)方差矩陣的特征向量和特征值,對(duì)于每一個(gè)特征值和特征向量,可以根據(jù)算法中的公式推導(dǎo),從而得到相應(yīng)的特征矩陣,并實(shí)現(xiàn)樣本數(shù)據(jù)的降維。進(jìn)行數(shù)據(jù)分析首先要根據(jù)數(shù)據(jù)的特征進(jìn)行聚類(lèi)匯總,相關(guān)的數(shù)據(jù)記錄在一個(gè)類(lèi)別中,便于發(fā)現(xiàn)后續(xù)規(guī)律,因此數(shù)據(jù)清洗的第二步就是進(jìn)行數(shù)據(jù)的聚類(lèi)分析。具體的,所述聚類(lèi)分析采用歐氏距離來(lái)判斷,把每一條記錄屬于哪一個(gè)類(lèi)別進(jìn)行劃分。進(jìn)一步的,數(shù)據(jù)分析模塊基于MapReduce并行化計(jì)算框架實(shí)現(xiàn)大數(shù)據(jù)的分布式處理,包括關(guān)聯(lián)規(guī)則的挖掘和基于時(shí)間維度的初步態(tài)勢(shì)預(yù)測(cè)。具體的,采用并行頻繁項(xiàng)集挖掘算法來(lái)發(fā)現(xiàn)每一條記錄之間的關(guān)聯(lián)規(guī)則,算法分為2個(gè)階段,第一階段,通過(guò)掃描所有的數(shù)據(jù)生成蘊(yùn)含所有頻繁項(xiàng)集的FP樹(shù),第二階段對(duì)已經(jīng)生成的FP樹(shù)進(jìn)行挖掘關(guān)聯(lián)規(guī)則和頻繁項(xiàng)集,存儲(chǔ)安全狀況和危險(xiǎn)狀況下的記錄特征,數(shù)據(jù)記錄的采集有時(shí)間先后,在算法中把數(shù)據(jù)按照時(shí)間段進(jìn)行分片,劃分時(shí)間段后,通過(guò)對(duì)比前一個(gè)時(shí)間段和當(dāng)前時(shí)間段數(shù)據(jù)記錄的安全狀況和危險(xiǎn)狀況進(jìn)行初步的預(yù)測(cè)。
如上所述的所述數(shù)據(jù)采集模塊和數(shù)據(jù)分析模塊包含在神經(jīng)網(wǎng)絡(luò)的輸入層中,數(shù)據(jù)集切分后的每一個(gè)分片交給神經(jīng)網(wǎng)絡(luò)輸入層的一個(gè)神經(jīng)元處理,得到的一個(gè)初步的態(tài)勢(shì)預(yù)測(cè)結(jié)果就是輸入層向隱含層傳遞的輸出值。各層神經(jīng)元之間實(shí)現(xiàn)全連接,隱含層中的每一個(gè)神經(jīng)元都會(huì)收到輸入層的所有輸出,輸入層和隱含層之間的每一個(gè)連接都有一個(gè)權(quán)值,把對(duì)應(yīng)的輸入值和權(quán)值相乘后進(jìn)行匯總再和該神經(jīng)元的閾值比較,得出隱含層的輸出值,通過(guò)隱含層對(duì)輸入層數(shù)據(jù)的這種融合處理方式把初步結(jié)果傳送給輸出層。輸入層中的每一個(gè)神經(jīng)元處理的是整個(gè)數(shù)據(jù)中的一個(gè)局部記錄,因此通過(guò)隱含層的匯總后得到的是一個(gè)局部的態(tài)勢(shì)判決結(jié)果輸出層通過(guò)和隱含層一樣的方法把所有的局部態(tài)勢(shì)結(jié)果融合處理,得出總體的安全態(tài)勢(shì)分析預(yù)測(cè)情況,將這些有價(jià)值的數(shù)據(jù)存儲(chǔ)在HBASE數(shù)據(jù)庫(kù)中方便后續(xù)查詢和展示。
進(jìn)一步的,如圖8所示為本發(fā)明系統(tǒng)的架構(gòu)圖,包括:Flume數(shù)據(jù)采集組件801、HDFS分布式文件系統(tǒng)802、Hive數(shù)據(jù)倉(cāng)庫(kù)803、MapReduce并行化計(jì)算框架804、Zookeeper組件805和HBASE數(shù)據(jù)庫(kù)806。具體的,F(xiàn)lume組建一個(gè)分布式的數(shù)據(jù)采集模塊,基于多臺(tái)數(shù)據(jù)服務(wù)器進(jìn)行并行化的數(shù)據(jù)收集。采集到的數(shù)據(jù)是雜亂的包含很多無(wú)效信息的原始數(shù)據(jù),存儲(chǔ)在HDFS中,便于集群中的所有節(jié)點(diǎn)對(duì)原始數(shù)據(jù)進(jìn)行清洗等。得到有效的數(shù)據(jù)從HDFS中將數(shù)據(jù)裝載入數(shù)據(jù)倉(cāng)庫(kù)Hive中等待MapReduce計(jì)算框架進(jìn)行下一步的處理。對(duì)裝載的數(shù)據(jù)進(jìn)行分析,在MapReduce框架中完成了態(tài)勢(shì)的分析得到有價(jià)值的數(shù)據(jù)存儲(chǔ)在HBASE數(shù)據(jù)庫(kù)中,應(yīng)用程序端通過(guò)HBASE查詢數(shù)據(jù)并展現(xiàn),Zookeeper實(shí)現(xiàn)平臺(tái)的配置和系統(tǒng)進(jìn)程的協(xié)調(diào)工作。
如圖9所示為圖8所示系統(tǒng)的工作流程圖,在本發(fā)明的系統(tǒng)中Zookeeper組件起著至關(guān)重要的作用,與FLUME服務(wù)器的交互,寫(xiě)入FLUME配置與讀取HDFS配置信息,F(xiàn)LUME根據(jù)HDFS的配置信息將數(shù)據(jù)寫(xiě)入到HDFS中;與Hadoop集群的交互,Hadoop集群將HDFS的配置信息寫(xiě)入到Zookeeper;與Hive服務(wù)器的交互,Hive服務(wù)器讀取HDFS的配置,讀取HBASE的配置;與HBASE K/V分布式數(shù)據(jù)庫(kù)的交互,把HBASE配置信息寫(xiě)入Zookeeper。Zookeeper充當(dāng)一個(gè)配置管理的角色;FLUME一般部署在業(yè)務(wù)服務(wù)器上。Zookeeper是一個(gè)核心組件,協(xié)調(diào)控制整個(gè)系統(tǒng)。
工作流程的具體步驟如下:
步驟901,啟動(dòng)系統(tǒng),等待接收數(shù)據(jù);
步驟902,啟動(dòng)ZooKeeper組件,對(duì)FLUME、HDFS、MapReduce、Hive、HBase的配置信息進(jìn)行交互;
步驟903,接收采集數(shù)據(jù),并向HDFS中存儲(chǔ)數(shù)據(jù);
步驟904,存儲(chǔ)原始數(shù)據(jù)和步驟905中處理的中間數(shù)據(jù);
步驟905,讀取存儲(chǔ)在HDFS中的數(shù)據(jù),并進(jìn)行數(shù)據(jù)數(shù)據(jù)分析處理;
步驟906,從HDFS中讀取處理的中間結(jié)果,并對(duì)中間結(jié)果進(jìn)行分析;
步驟907,將最終的計(jì)算結(jié)果中有價(jià)值的部分?jǐn)?shù)據(jù)寫(xiě)入在HBase中;
步驟908,用戶通過(guò)接口讀取存儲(chǔ)在HBase中的預(yù)測(cè)結(jié)果。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。