?申明: 未經(jīng)許可,禁止以任何形式轉(zhuǎn)載,若要引用,請(qǐng)標(biāo)注鏈接地址。 全文共計(jì)3077字,閱讀大概需要3分鐘
??更多學(xué)習(xí)內(nèi)容, 歡迎??關(guān)注??【文末】我的個(gè)人微信公眾號(hào):不懂開(kāi)發(fā)的程序猿
個(gè)人網(wǎng)站:https://jerry-jy.co/
引言
本篇博客是我在做基于Spark/Flink大數(shù)據(jù)環(huán)境下網(wǎng)絡(luò)入侵檢測(cè)的小論文過(guò)程中,閱讀的一些參考文獻(xiàn),并把我認(rèn)為對(duì)我有用的地方記錄下來(lái),希望也能打開(kāi)你的研究思路
16 Distributed Abnormal Behavior Detection Approach Based on Deep Belief Network and Ensemble SVM Using Spark
N. Marir, H. Wang, G. Feng, B. Li and M. Jia, “Distributed Abnormal Behavior Detection Approach Based on Deep Belief Network and Ensemble SVM Using Spark,” in IEEE Access, vol. 6, pp. 59657-59671, 2018, doi: 10.1109/ACCESS.2018.2875045.
選擇支持向量機(jī)作為多層集成學(xué)習(xí)的基分類器。與其他機(jī)器學(xué)習(xí)算法相比,它具有良好的泛化性能。特別是,SVM可以解決網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)中的二元分類問(wèn)題。然而,SVM 對(duì)于高維網(wǎng)絡(luò)流量數(shù)據(jù)來(lái)說(shuō)是一種高成本且耗時(shí)的模型,并且對(duì)于不平衡數(shù)據(jù)中的少數(shù)類別表現(xiàn)不佳。
17 Spark configurations to optimize decision tree classification on UNSW-NB15
Bagui, Sikha, et al. “Spark configurations to optimize decision tree classification on UNSW-NB15.” Big data and cognitive computing 6.2 (2022): 38.
本文研究了使用大型數(shù)據(jù)集(UNSW-NB15 數(shù)據(jù)集)更改 Spark 配置參數(shù)對(duì)機(jī)器學(xué)習(xí)算法的影響。研究了優(yōu)化分類過(guò)程的環(huán)境條件。要構(gòu)建智能入侵檢測(cè)系統(tǒng),需要深入了解環(huán)境參數(shù)。具體來(lái)說(shuō),重點(diǎn)關(guān)注以下環(huán)境參數(shù):執(zhí)行器內(nèi)存、執(zhí)行器數(shù)量、每個(gè)執(zhí)行器的核心數(shù)量、執(zhí)行時(shí)間以及對(duì)統(tǒng)計(jì)指標(biāo)的影響。因此,目標(biāo)是使用 Spark 優(yōu)化資源使用并最大限度地減少?zèng)Q策樹(shù)分類的處理時(shí)間。這表明額外的資源是否會(huì)提高性能、縮短處理時(shí)間并優(yōu)化計(jì)算資源。UNSW-NB15 數(shù)據(jù)集是一個(gè)大型數(shù)據(jù)集,提供足夠的數(shù)據(jù)和復(fù)雜度來(lái)查看Spark中計(jì)算資源配置的變化。主成分分析用于預(yù)處理數(shù)據(jù)集。結(jié)果表明,缺乏執(zhí)行器和核心會(huì)導(dǎo)致資源浪費(fèi)和處理時(shí)間過(guò)長(zhǎng)。過(guò)多的資源分配并沒(méi)有改善處理時(shí)間。環(huán)境調(diào)整有顯著的影響
圖 3展示了本工作中使用的總體方法的流程圖。雖然每次都做PCA乍一看有些多余,但由于使用了SparkUI,所以每次都必須完全離開(kāi)Spark環(huán)境。因此,每次都必須重新進(jìn)行PCA
總體結(jié)論是,隨著聲明的執(zhí)行程序內(nèi)存增加,執(zhí)行時(shí)間減少,但核心數(shù)量保持不變。最后,Spark并行環(huán)境上的決策樹(shù)算法在分類時(shí)間、準(zhǔn)確率和誤報(bào)率方面表現(xiàn)更好。
本文提出了一種基于機(jī)器學(xué)習(xí)算法、基于特征重要性的特征選擇方法和Spark框架相結(jié)合的分布式攻擊檢測(cè)系統(tǒng),該系統(tǒng)選擇了最優(yōu)的特征子集,保證了更高的準(zhǔn)確率。提議的方法將在新南威爾士大學(xué)-NB 15數(shù)據(jù)集上進(jìn)行測(cè)試和評(píng)價(jià)。
我們的工作的主要貢獻(xiàn)可歸納如下:
- 將網(wǎng)絡(luò)數(shù)據(jù)集的維數(shù)降到最小,同時(shí)保證了較好的入侵檢測(cè)精度。
- 克服了現(xiàn)有解決方案的不足,如不支持海量數(shù)據(jù),限制了Apache SPark的可選性(很少選擇),同時(shí)也保證了現(xiàn)有大多數(shù)ID由于不分布式而缺乏的高可用性。
- 與現(xiàn)有工程相比,我們提出的方法更有效、更合適。
為此目的,本文組織如下。在第二節(jié)中,我們介紹了有關(guān)ML、FS和ApacheSPark在IDS中的應(yīng)用的相關(guān)工作。在第三節(jié)中,在描述了所選擇的數(shù)據(jù)集(UNSW-NB 15)后,我們介紹了所提出的方法,并對(duì)該方法的每一步進(jìn)行了描述。最后,我們總結(jié)了我們的工作,并在第五節(jié)中描述了今后的工作。
18 A dynamic spark-based classification framework for imbalanced big data
Abdel-Hamid, Nahla B., et al. “A dynamic spark-based classification framework for imbalanced big data.” Journal of Grid Computing 16 (2018): 607-626.
Synthetic Minority Over-Sampling TEchnique (SMOTE)
在過(guò)去的十年中,不平衡大數(shù)據(jù)的分類引起了許多研究人員的廣泛考慮。標(biāo)準(zhǔn)分類方法對(duì)少數(shù)類樣本的診斷效果不佳。人們提出了幾種方法來(lái)解決大數(shù)據(jù)中的類不平衡問(wèn)題,以增強(qiáng)分類的泛化能力。然而,這些方法大多忽略了邊界樣本對(duì)分類性能的影響;高影響邊界樣本可能會(huì)出現(xiàn)錯(cuò)誤分類。本文提出了一種基于 Spark 的挖掘框架(SBMF)來(lái)解決數(shù)據(jù)不平衡問(wèn)題。為此目的設(shè)計(jì)了兩個(gè)主要模塊。第一個(gè)是邊界處理模塊 (BHM),它對(duì)低影響的多數(shù)邊界實(shí)例進(jìn)行欠采樣,并對(duì)少數(shù)類實(shí)例進(jìn)行過(guò)采樣。第二個(gè)模塊是選擇性邊界實(shí)例采樣(SBI)模塊,它增強(qiáng)了 BHM 模塊的輸出。對(duì) SBMF 框架的性能進(jìn)行了評(píng)估,并與其他最新系統(tǒng)進(jìn)行了比較。使用具有不同不平衡比的中等和大數(shù)據(jù)集進(jìn)行了許多實(shí)驗(yàn)。與最近的工作相比,從 SBMF 框架獲得的結(jié)果顯示了不同數(shù)據(jù)集和分類器的更好性能。
為了緩解班級(jí)不平衡的問(wèn)題,人們做了很多嘗試。合成抽樣技術(shù)SMOTE [4]是為解決不平衡數(shù)據(jù)集的分類問(wèn)題而發(fā)展起來(lái)的一種過(guò)采樣方法,它通過(guò)創(chuàng)建合成的少數(shù)類樣本來(lái)處理。Smote通過(guò)綜合少數(shù)民族類的新的樣本,[5]提出了改進(jìn)SMOTET性能的邊界-平滑算法,比較了多數(shù)類的實(shí)例數(shù)和邊界實(shí)例的相鄰少數(shù)類的數(shù)目,然后對(duì)少數(shù)民族類的邊界樣本進(jìn)行了過(guò)采樣處理,即在適當(dāng)?shù)膮^(qū)域內(nèi)進(jìn)行插值,證明了邊界平滑比平滑更好。隨著大型數(shù)據(jù)的出現(xiàn),對(duì)類不平衡提出了不同的挑戰(zhàn)。本文提出了一種基于火花的挖掘框架(SBMF)來(lái)解決不平衡的大數(shù)據(jù)問(wèn)題。SMACK[6]是一個(gè)對(duì)大數(shù)據(jù)進(jìn)行分布式操作的快速集群計(jì)算平臺(tái),它加快了數(shù)據(jù)分析的過(guò)程。
在本節(jié)中,我們提出了一種基于Spark的MiningFramework SBMF,它充分利用了大數(shù)據(jù)集的全部特性,而無(wú)需犧牲常規(guī)順序處理方法中使用的部分?jǐn)?shù)據(jù),從而釋放了SPark的計(jì)算能力。SPark提供的分布式計(jì)算優(yōu)勢(shì)允許充分利用所有數(shù)據(jù)集中隱藏的信息,從而有助于提高分類性能。如圖2所示,所提議的SBMF框架由以下五個(gè)主要層組成:
預(yù)處理層處理原始數(shù)據(jù)集中可能出現(xiàn)的噪聲或缺失數(shù)據(jù),通過(guò)一致性檢查模塊檢查數(shù)據(jù)一致性,檢測(cè)和統(tǒng)計(jì)每個(gè)類中的實(shí)例數(shù)。另外,將多類數(shù)據(jù)集轉(zhuǎn)換為二進(jìn)制類,確定數(shù)據(jù)集的不平衡比率,并將類存儲(chǔ)在寄存器類存儲(chǔ)庫(kù)中。
采樣應(yīng)用程序?qū)訖z測(cè)邊界上的實(shí)例并識(shí)別它們的類,這一層將在下一節(jié)中詳細(xì)討論。
數(shù)據(jù)分類層:設(shè)置期望分類器,對(duì)模型進(jìn)行訓(xùn)練和建模,SBMF可以對(duì)大、小、不平衡的數(shù)據(jù)集進(jìn)行采樣和分類。SBMF利用輔助選擇器模塊從支持向量機(jī)(SVM)、樸素貝葉斯(NB)、判別分析(DA)和隨機(jī)森林(RF)四種不同的分類器中進(jìn)行選擇。在選擇分類器后,在這一層對(duì)模型進(jìn)行訓(xùn)練和驗(yàn)證。
性能預(yù)測(cè)層:進(jìn)行數(shù)據(jù)分類并對(duì)預(yù)測(cè)結(jié)果進(jìn)行評(píng)價(jià)。在這一層中,通過(guò)創(chuàng)建一個(gè)混淆矩陣來(lái)評(píng)估分類器的性能,該矩陣的行顯示實(shí)際類的實(shí)例數(shù),而olumns則顯示預(yù)測(cè)類的實(shí)例數(shù)。在此基礎(chǔ)上,計(jì)算了接收機(jī)工作特性曲線(AUC)、G-均值和f-測(cè)度下的面積,并對(duì)其進(jìn)行了評(píng)價(jià).預(yù)測(cè)的類也被存儲(chǔ)。
19 A review of big data in network intrusion detection system: Challenges, approaches, datasets, and tools
Alshamy, Reem, and Mossa Ghurab. “A review of big data in network intrusion detection system: Challenges, approaches, datasets, and tools.” Journal of Computer Sciences and Engineering 8.7 (2020): 62-74.
?侵檢測(cè)是指披露試圖損害資源的機(jī)密性、完整性或可?性的?為[4]。?侵檢測(cè)系統(tǒng)(IDS)是?絡(luò)安全最基本的考慮因素,可以在攻擊之前和/或之后檢測(cè)?侵。第?個(gè)使? IDS 術(shù)語(yǔ)的是 20 世紀(jì) 70 年代末和 80 年代初的 James Anderson[5]。 IDS可以定義為?種?侵檢測(cè)過(guò)程,旨在發(fā)現(xiàn)計(jì)算機(jī)?絡(luò)中違反安全策略的事件,它通常位于?絡(luò)內(nèi)部以監(jiān)視所有內(nèi)部流量[6]。
20 A feature selection method for intrusion detection based on parallel sparrow search algorithm
Chen, Hongwei, Xin Ma, and Song Huang. “A feature selection method for intrusion detection based on parallel sparrow search algorithm.” 2021 16th International Conference on Computer Science & Education (ICCSE). IEEE, 2021.
21 Features dimensionality reduction approaches for machine learning based network intrusion detection
Abdulhammed, Razan, et al. “Features dimensionality reduction approaches for machine learning based network intrusion detection.” Electronics 8.3 (2019): 322.
22 A comparison of two hybrid ensemble techniques for network anomaly detection in TEspark distributed environment
Kaur, Gagandeep. “A comparison of two hybrid ensemble techniques for network anomaly detection in TEspark distributed environment.” Journal of Information Security and Applications 55 (2020): 102601.
23 Real-time network intrusion detection system based on deep learning
Dong, Yuansheng, Rong Wang, and Juan He. “Real-time network intrusion detection system based on deep learning.” 2019 IEEE 10th International Conference on Software Engineering and Service Science (ICSESS). IEEE, 2019.
24 Online Internet Traffic Monitoring and DDoS Attack Detection Using Big Data Frameworks
B. Zhou, J. Li, Y. Ji and M. Guizani, “Online Internet Traffic Monitoring and DDoS Attack Detection Using Big Data Frameworks,” 2018 14th International Wireless Communications & Mobile Computing Conference (IWCMC), Limassol, Cyprus, 2018, pp. 1507-1512, doi: 10.1109/IWCMC.2018.8450335.
隨著互聯(lián)網(wǎng)流量的增長(zhǎng),傳統(tǒng)的單機(jī)網(wǎng)絡(luò)分析方法已經(jīng)不再適用?,F(xiàn)有方法利用大數(shù)據(jù)框架來(lái)提高處理效率。然而,這些方法主要集中于離線數(shù)據(jù)分析。在本文中,我們提出了一種利用 Spark Streaming 和 Flink 的在線互聯(lián)網(wǎng)流量監(jiān)控框架。具體來(lái)說(shuō),我們基于我們的系統(tǒng)實(shí)現(xiàn)了兩個(gè)典型的用例,即TCP性能監(jiān)控和DDoS攻擊檢測(cè)。我們證明了互聯(lián)網(wǎng)測(cè)量和監(jiān)控可以被視為流分析問(wèn)題,并且可以通過(guò)流處理平臺(tái)進(jìn)行處理。
大量的實(shí)驗(yàn)結(jié)果表明,當(dāng)輸入流速率較低時(shí),F(xiàn)link 的處理速度比 Spark Streaming 更快,但吞吐量也較低。我們可以通過(guò)增加批量大小來(lái)增加 Spark Streaming 的最大吞吐量。
本文提出了流處理入侵檢測(cè)解決方案概念的一種新方法,該解決方案允許集成各種組件。它是我們先前工作[15]的擴(kuò)展。解決方案能夠在Kafka主題中創(chuàng)建流,并實(shí)現(xiàn)許多機(jī)器學(xué)習(xí)算法中的一種,提供適當(dāng)?shù)木瘓?bào)或視圖/可視化,然后將結(jié)果傳輸?shù)綌?shù)據(jù)庫(kù)中。使用基于NetFlow的特性具有許多優(yōu)點(diǎn),例如減少執(zhí)行網(wǎng)絡(luò)入侵檢測(cè)所需的處理負(fù)載。NetFlow還提供了比深度包檢查更大的隱私。NetFlow還提供網(wǎng)絡(luò)數(shù)據(jù)包的全面覆蓋。
25 Machine Learning Solutions for Investigating Streams Data using Distributed Frameworks: Literature Review
Kumar, Kunal, Neeraj Anand Sharma, and ABM Shawkat Ali. “Machine Learning Solutions for Investigating Streams Data using Distributed Frameworks: Literature Review.” 2021 IEEE Asia-Pacific Conference on Computer Science and Data Engineering (CSDE). IEEE, 2021.
流數(shù)據(jù)是一個(gè)術(shù)語(yǔ),指的是視頻、文本、圖像等各種來(lái)源的實(shí)時(shí)數(shù)據(jù)源。近年來(lái),由于對(duì)主動(dòng)預(yù)測(cè)和緩解醫(yī)療狀況、網(wǎng)絡(luò)攻擊、交通擁堵、道路事故等基本問(wèn)題的需求不斷增長(zhǎng),流數(shù)據(jù)獲得了很大的吸引力。流數(shù)據(jù)使用機(jī)器學(xué)習(xí)和統(tǒng)計(jì)方法提供實(shí)時(shí)數(shù)據(jù)分析,以識(shí)別和緩解時(shí)間敏感且關(guān)鍵的問(wèn)題。流數(shù)據(jù)使系統(tǒng)能夠分析傳入的數(shù)據(jù)并立即做出關(guān)鍵預(yù)測(cè)。流數(shù)據(jù)通常是實(shí)時(shí)攝取的,但會(huì)小批量處理,足以訓(xùn)練機(jī)器學(xué)習(xí)模型。
Apache Spark 是處理大數(shù)據(jù)最流行的分布式框架之一。它由加州大學(xué)伯克利分校的 AMPLab 于 2009 年創(chuàng)建,并作為開(kāi)源 Apache 項(xiàng)目部署。Apache Spark,通常稱為 Spark。這是 Hadoop MapReduce 框架的巨大發(fā)展,處理速度大幅提高。在內(nèi)存中執(zhí)行時(shí),Spark 處理數(shù)據(jù)的速度比 MapReduce 快一百倍,在磁盤(pán)上執(zhí)行時(shí)則快十倍。Spark 的主要優(yōu)點(diǎn)是能夠執(zhí)行內(nèi)存計(jì)算,從而大大減少數(shù)據(jù)查找時(shí)間。它還將數(shù)據(jù)轉(zhuǎn)換為彈性分布式數(shù)據(jù)集(RDD)它抽象了要并行處理的數(shù)據(jù)集。Spark 還采用有向無(wú)環(huán)圖來(lái)確保高效的數(shù)據(jù)處理。Spark 最初構(gòu)建在 Yarn 之上,作為更快地執(zhí)行 MapReduce 作業(yè)的工具。然而,Spark 并不限于 Hadoop 和 Yarn,因?yàn)樗梢宰鳛楠?dú)立應(yīng)用程序部署,并可以與其他資源管理器(例如 Mesos)結(jié)合使用。Spark 擁有一個(gè)包含 Spark 引擎、Spark Streaming、機(jī)器學(xué)習(xí)庫(kù)和用于可視化的 GraphX 的生態(tài)系統(tǒng)。
26 A comprehensive survey of anomaly detection techniques for high dimensional big data
Thudumu, Srikanth, et al. “A comprehensive survey of anomaly detection techniques for high dimensional big data.” Journal of Big Data 7 (2020): 1-30.
檢測(cè)高維空間中的異常的傳統(tǒng)技術(shù)很復(fù)雜,因?yàn)楫惓:苌僖?jiàn),并且通常出現(xiàn)在維度子集或子空間的分?jǐn)?shù)視圖中[27 ]。Aggarwal 也建議了這一點(diǎn) [ 28] 幾乎所有基于鄰近概念的異常檢測(cè)算法在高維空間中都會(huì)出現(xiàn)質(zhì)量下降;因此,重新定義算法是必要的。此外,隨著維度的增加,傳統(tǒng)方法變得越來(lái)越?jīng)]有意義,因?yàn)樗鼈兪褂玫牟呗詫?duì)數(shù)據(jù)相對(duì)較低的維度做出某些假設(shè)[ 29 ]。此外,對(duì)于高維數(shù)據(jù)集來(lái)說(shuō),可能只有一小部分?jǐn)?shù)據(jù)點(diǎn)提供信息[ 28 ]。
解決高維問(wèn)題的異常檢測(cè)可以應(yīng)用于在線或離線模式。在離線模式下,在歷史數(shù)據(jù)集中檢測(cè)異常,稱為“批處理”。這與大數(shù)據(jù)的“體量”特征有關(guān)。相比之下,在在線模式下,在檢測(cè)異常情況時(shí)不斷引入新的數(shù)據(jù)點(diǎn)(稱為“數(shù)據(jù)流”)。這與大數(shù)據(jù)的“速度”特性有關(guān)。許多現(xiàn)有的調(diào)查和評(píng)論強(qiáng)調(diào)了機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘等各個(gè)領(lǐng)域的高維問(wèn)題。
高維是指可用于分析的數(shù)據(jù)中具有大量自變量、組件、特征或?qū)傩缘臄?shù)據(jù)集[ 41 ]。數(shù)據(jù)分析的復(fù)雜性隨著維度數(shù)量的增加而增加,需要更復(fù)雜的方法來(lái)處理數(shù)據(jù)。數(shù)據(jù)集的樣本大小n不斷增長(zhǎng),但維度m不斷增長(zhǎng)。同時(shí),在大數(shù)據(jù)時(shí)代,m通常被誤解為高維,因?yàn)閿?shù)千維是很常見(jiàn)的。如果一個(gè)數(shù)據(jù)集有n個(gè)樣本和m個(gè)維度(或特征),那么該數(shù)據(jù)可以稱為m-維度。一般來(lái)說(shuō),當(dāng)維數(shù)為m導(dǎo)致“維數(shù)災(zāi)難”效應(yīng)時(shí),數(shù)據(jù)集可以稱為高維數(shù)據(jù)集
“維數(shù)災(zāi)難”一詞首先由貝爾曼[ 58 ]引入,用于描述因維數(shù)或輸入變量數(shù)量增加而引起的問(wèn)題。當(dāng)數(shù)據(jù)維數(shù)增加時(shí),數(shù)據(jù)規(guī)模也成比例增加,導(dǎo)致數(shù)據(jù)稀疏,稀疏數(shù)據(jù)難以分析。維度的詛咒會(huì)影響異常檢測(cè)技術(shù),因?yàn)橄鄬?duì)于維度增加的異常性質(zhì)的水平可能會(huì)被不必要的屬性所掩蓋甚至隱藏[ 27 ]。由于異常值被定義為稀疏區(qū)域中的數(shù)據(jù)實(shí)例,因此在高維空間的幾乎同樣稀疏的位置中觀察到了不充分的判別區(qū)域[ 28 ]。
維度的增加使得數(shù)據(jù)點(diǎn)分散和孤立,并且難以找到數(shù)據(jù)集的全局最優(yōu)值。添加到數(shù)據(jù)集中的維度越多,它就會(huì)變得越復(fù)雜,因?yàn)槊總€(gè)添加的維度都會(huì)帶來(lái)大量的誤報(bào)[ 42 ]。圖 3說(shuō)明了一維、二維和三維投影時(shí)數(shù)據(jù)的稀疏性。維數(shù)災(zāi)難是指在高維空間中分析和組織數(shù)據(jù)時(shí)出現(xiàn)的許多情況。這些現(xiàn)象的本質(zhì)是,每當(dāng)維度增加時(shí),空間體積就會(huì)成比例增加,從而導(dǎo)致所有其他數(shù)據(jù)點(diǎn)變得稀疏。這種稀疏性對(duì)于任何需要統(tǒng)計(jì)值的技術(shù)來(lái)說(shuō)都是一個(gè)挑戰(zhàn)。此外,它還會(huì)產(chǎn)生與其他噪聲水平相關(guān)的許多復(fù)雜情況,這些噪聲水平可能是不相關(guān)的特征或不必要的屬性,這可能會(huì)使數(shù)據(jù)實(shí)例復(fù)雜化甚至隱藏[ 29]]。這是許多算法難以處理高維數(shù)據(jù)的主要原因。隨著維數(shù)的增加,諸如距離測(cè)量之類的統(tǒng)計(jì)方法變得不太有用,因?yàn)橛捎诰S數(shù)災(zāi)難,點(diǎn)彼此之間幾乎等距。
高維數(shù)據(jù)需要大量的計(jì)算內(nèi)存并帶來(lái)巨大的計(jì)算負(fù)擔(dān)。對(duì)于高維數(shù)據(jù),識(shí)別有用的見(jiàn)解或模式變得復(fù)雜且具有挑戰(zhàn)性。處理高維問(wèn)題的最簡(jiǎn)單方法是最小化特征,并且可以通過(guò)研究數(shù)據(jù)集的內(nèi)在維數(shù)或嵌入維數(shù)來(lái)更好地理解特征。理解內(nèi)在維度和嵌入維度之間的細(xì)微差別至關(guān)重要。內(nèi)在維度是覆蓋數(shù)據(jù)完整表示的最小特征種類;嵌入維數(shù)是整個(gè)數(shù)據(jù)空間的特征或列的數(shù)量的表示。
隨著世界變得越來(lái)越數(shù)據(jù)驅(qū)動(dòng),并且沒(méi)有通用的大數(shù)據(jù)異常檢測(cè)方法,高維問(wèn)題在許多應(yīng)用領(lǐng)域是不可避免的。此外,隨著數(shù)據(jù)量的增加,準(zhǔn)確性的損失更大,計(jì)算也更復(fù)雜。識(shí)別具有高維問(wèn)題的大型數(shù)據(jù)集中的異常數(shù)據(jù)點(diǎn)是一項(xiàng)研究挑戰(zhàn)。本次調(diào)查全面概述了與數(shù)據(jù)量和速度等大數(shù)據(jù)特征相關(guān)的異常檢測(cè)技術(shù),并具有:研究了解決高維問(wèn)題的策略。顯然,需要進(jìn)一步研究和評(píng)估解決高維問(wèn)題的大數(shù)據(jù)異常檢測(cè)策略。為了解決這個(gè)研究問(wèn)題,我們提出了構(gòu)建一個(gè)新穎的框架的未來(lái)研究方向,該框架能夠在具有高維問(wèn)題的大量數(shù)據(jù)中識(shí)別異常數(shù)據(jù)點(diǎn)。主要貢獻(xiàn)將是改善高維問(wèn)題大數(shù)據(jù)異常檢測(cè)的性能和準(zhǔn)確性之間的平衡。
27 Multi-job Merging Framework and Scheduling Optimization for Apache Flink
Ji, Hangxu, et al. “Multi-job Merging Framework and Scheduling Optimization for Apache Flink.” Database Systems for Advanced Applications: 26th International Conference, DASFAA 2021, Taipei, Taiwan, April 11–14, 2021, Proceedings, Part I 26. Springer International Publishing, 2021.
隨著大數(shù)據(jù)技術(shù)的普及,分布式計(jì)算系統(tǒng)不斷發(fā)展和成熟,為海量數(shù)據(jù)的查詢和分析做出了實(shí)質(zhì)性的貢獻(xiàn)。然而,系統(tǒng)資源利用率不足是分布式計(jì)算引擎固有的問(wèn)題。特別是,當(dāng)更多作業(yè)導(dǎo)致執(zhí)行阻塞時(shí),即使集群中還有許多剩余資源,系統(tǒng)也會(huì)按照先來(lái)先執(zhí)行(FCFE)的原則調(diào)度多個(gè)作業(yè)。因此,資源利用的優(yōu)化是提高多作業(yè)執(zhí)行效率的關(guān)鍵。我們研究了多作業(yè)執(zhí)行優(yōu)化領(lǐng)域,設(shè)計(jì)了多作業(yè)合并框架和調(diào)度優(yōu)化算法,并在最新一代分布式計(jì)算系統(tǒng) Apache Flink 中實(shí)現(xiàn)。綜上所述,我們工作的優(yōu)點(diǎn)突出如下:(1)該框架使Flink能夠支持多作業(yè)收集、合并和執(zhí)行順序的動(dòng)態(tài)調(diào)整,并且這些功能的選擇是可定制的。(2)通過(guò)多作業(yè)合并和優(yōu)化,總運(yùn)行時(shí)間比傳統(tǒng)順序執(zhí)行可減少31%。(3)多作業(yè)調(diào)度優(yōu)化算法可帶來(lái)28%的性能提升,平均情況下可減少集群閑置資源61%。與傳統(tǒng)順序執(zhí)行相比,總運(yùn)行時(shí)間可減少31%。(3)多作業(yè)調(diào)度優(yōu)化算法可帶來(lái)28%的性能提升,平均情況下可減少集群閑置資源61%。與傳統(tǒng)順序執(zhí)行相比,總運(yùn)行時(shí)間可減少31%。(3)多作業(yè)調(diào)度優(yōu)化算法可帶來(lái)28%的性能提升,平均情況下可減少集群閑置資源61%。
Apache Flink [ 2 ]是最新一代的分布式計(jì)算系統(tǒng),在處理海量數(shù)據(jù)時(shí)表現(xiàn)出高吞吐量和低延遲。它可以緩存中間數(shù)據(jù)并使用自己的優(yōu)化器支持增量迭代。由于Flink的眾多優(yōu)勢(shì),許多基于Flink的實(shí)驗(yàn)研究、優(yōu)化技術(shù)和應(yīng)用平臺(tái)不斷涌現(xiàn)。例如,在Flink誕生初期,大部分研究都集中在Flink和Spark的比較[10,11,15 ] ,并指出Flink更適合未來(lái)的數(shù)據(jù)計(jì)算。隨著Flink的流行,最近的研究包括基于Flink的測(cè)試工具[ 9 ]、多查詢優(yōu)化技術(shù)[16 ]、推薦系統(tǒng)[ 5 ]等。
然而,大多數(shù)分布式計(jì)算系統(tǒng)都存在硬件資源利用率不足的問(wèn)題。雖然 Flink 通過(guò)引入 TaskSlot 隔離內(nèi)存來(lái)最大化資源利用率,但由于傳統(tǒng)順序執(zhí)行時(shí)部分 Operator 并行度較低,因此也存在空閑資源。此外,當(dāng)用戶提交多個(gè)作業(yè)時(shí),F(xiàn)link 僅以先到先執(zhí)行(FCFE)的方式運(yùn)行它們,這無(wú)法使作業(yè)共享 Slots。更糟糕的情況是,如果作業(yè)A正在執(zhí)行,之后的作業(yè)B因剩余資源不足而不滿足執(zhí)行條件,那么即使作業(yè)B之后的作業(yè)C滿足執(zhí)行條件,作業(yè)C也無(wú)法提前執(zhí)行,造成嚴(yán)重的后果。資源浪費(fèi)。這些運(yùn)行多個(gè)作業(yè)的 FCFE 策略只能確保作業(yè)級(jí)別的公平性,但不是用戶想要的。在大多數(shù)情況下,用戶只需要所有作業(yè)的最小總執(zhí)行時(shí)間。通過(guò)同時(shí)執(zhí)行多個(gè)作業(yè),動(dòng)態(tài)調(diào)整作業(yè)執(zhí)行順序,使?jié)M足執(zhí)行條件的作業(yè)提前執(zhí)行,可以解決上述問(wèn)題。
在本次研究中,我們回顧了由于Flink不支持多個(gè)作業(yè)同時(shí)執(zhí)行以及執(zhí)行順序優(yōu)化而導(dǎo)致的系統(tǒng)資源利用不足的問(wèn)題,然后重點(diǎn)研究了增加Slot占用所帶來(lái)的多作業(yè)效率提升速度。其基本思想是通過(guò)多作業(yè)合并實(shí)現(xiàn)同時(shí)執(zhí)行,并通過(guò)多作業(yè)調(diào)度動(dòng)態(tài)調(diào)整執(zhí)行順序,本文的貢獻(xiàn)總結(jié)如下。
(1)
我們提出了一個(gè)突破性的框架,可以支持 Flink 中的多作業(yè)合并和調(diào)度。它可以收集并解析多個(gè)待執(zhí)行的作業(yè),并通過(guò)多作業(yè)合并和調(diào)度兩種優(yōu)化方法生成新的作業(yè)執(zhí)行計(jì)劃,并提交給 Flink 執(zhí)行。
(2)
為了同時(shí)執(zhí)行多個(gè)作業(yè),我們提出了基于子圖同構(gòu)和啟發(fā)式策略的多作業(yè)合并算法,以使多個(gè)作業(yè)能夠共享槽。兩種算法在實(shí)驗(yàn)過(guò)程中都能提高效率并適應(yīng)不同的工作場(chǎng)景。
(3)
為了動(dòng)態(tài)調(diào)整作業(yè)執(zhí)行順序,我們提出了基于最大并行度的多作業(yè)調(diào)度算法,使?jié)M足剩余資源的作業(yè)提前執(zhí)行。實(shí)驗(yàn)結(jié)果表明,該算法能夠提高效率并減少空閑資源。
28 Machine learning based network intrusion detection for data streaming IoT applications
Yahyaoui, Aymen, et al. “Machine learning based network intrusion detection for data streaming IoT applications.” 2021 21st ACIS International Winter Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD-Winter). IEEE, 2021.
在本文中,我們?yōu)槲锫?lián)網(wǎng)流應(yīng)用程序設(shè)計(jì)了一種入侵檢測(cè)系統(tǒng)架構(gòu)。該系統(tǒng)基于我們使用機(jī)器學(xué)習(xí)技術(shù)開(kāi)發(fā)的檢測(cè)組件。我們將我們的系統(tǒng)的部署與大數(shù)據(jù)領(lǐng)域兩個(gè)領(lǐng)先的流處理框架(Apache Flink 和 Apache Spark Streaming)進(jìn)行測(cè)試和比較。前者帶來(lái)了相當(dāng)大的吞吐量(每秒處理超過(guò) 196,000 個(gè)數(shù)據(jù)包)。此外,我們獲得了很高的檢測(cè)精度(超過(guò)99.9%)。我們這項(xiàng)工作主要關(guān)注異常網(wǎng)絡(luò)入侵。然而,我們的解決方案可以處理其他類型的異常。我們使用兩個(gè)不同的數(shù)據(jù)集比較不同機(jī)器學(xué)習(xí)算法的性能。此外,我們還將我們的結(jié)果與最近的研究工作進(jìn)行比較。結(jié)果證明了我們系統(tǒng)的效率。
該系統(tǒng)的主要目的是實(shí)時(shí)分析來(lái)自物聯(lián)網(wǎng)節(jié)點(diǎn)的傳入流量,并在大數(shù)據(jù)環(huán)境中高精度檢測(cè)異常情況(在我們的例子中為入侵)。考慮到這一目標(biāo),我們?cè)O(shè)計(jì)了如圖1所示的三層架構(gòu)IDS,由數(shù)據(jù)采集層、流處理層以及存儲(chǔ)和可視化層組成。
首先,數(shù)據(jù)包被發(fā)布到 MQTT 代理。MQTT 協(xié)議并不是為高可擴(kuò)展性而設(shè)計(jì)的,這就是為什么我們使用其插件 Kafka connect 將其與 Kafka 消息傳遞框架配對(duì)的原因。其次,捕獲的流量被發(fā)送到流處理框架,該框架將提取特征并使用已經(jīng)訓(xùn)練的 ML 模型對(duì)接收到的流量的性質(zhì)進(jìn)行預(yù)測(cè)。然后,流處理引擎將結(jié)果發(fā)送到數(shù)據(jù)庫(kù),網(wǎng)絡(luò)活動(dòng)的統(tǒng)計(jì)數(shù)據(jù)可以在儀表板上可視化。
流處理層以數(shù)據(jù)流的形式接收來(lái)自Kafka集群的數(shù)據(jù)并進(jìn)行實(shí)時(shí)分析。大多數(shù)繁重的處理都是在這一層完成的:特征提取、數(shù)據(jù)訓(xùn)練、模型生成以及更新和預(yù)測(cè)。因此,一旦數(shù)據(jù)分析速度更快,該層就負(fù)責(zé)最大限度地減少延遲。有不同的流處理框架。最著名的是 Apache Flink、Apache Spark Streaming、Apache Storm、Apache Heron、Akka 和 Samza [15]。在這項(xiàng)工作中,我們考慮比較兩個(gè)領(lǐng)先的框架:Apache Flink 和 Apache Spark Streaming。
對(duì)于Flink流處理,我們使用Java編程和Weka 3.6.10來(lái)實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法。我們?cè)趩喂?jié)點(diǎn)設(shè)置環(huán)境中使用 Apache Flink 1.10.0,使用 flink-kafka 連接器和 Apache Kafka 2.4.1。對(duì)于 Spark Streaming,我們使用 python 編程語(yǔ)言(pyspark)和 MLlib 庫(kù)來(lái)實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法。我們?cè)趩喂?jié)點(diǎn)設(shè)置環(huán)境中使用spark-2.4.4,使用spark-streaming-kafka-0-8- assembly 2.11-2.1.0連接器和Apache Kafka 2.4.1。對(duì)于這兩種解決方案,均使用 Cassandra 3.11.6.1 和 Grafana 6.7.3 來(lái)構(gòu)建存儲(chǔ)和可視化層
在這項(xiàng)工作中,我們?cè)O(shè)計(jì)了一個(gè)架構(gòu),開(kāi)發(fā)并部署了一個(gè)基于機(jī)器學(xué)習(xí)算法的物聯(lián)網(wǎng)流應(yīng)用程序的入侵檢測(cè)系統(tǒng)(IDS)。我們根據(jù)不同的特征數(shù)量、機(jī)器學(xué)習(xí)算法、機(jī)器性能進(jìn)行了多次測(cè)試,并報(bào)告了兩個(gè)指標(biāo):準(zhǔn)確性和吞吐量。與 Apache Spark Streaming 相比,Apache Flink 流引擎提供了高吞吐量。與兩個(gè)相關(guān)工作系統(tǒng)相比,IDS 被證明是高效的。作為未來(lái)的工作,我們的目標(biāo)是使用其他指標(biāo)來(lái)評(píng)估其他流處理引擎。此外,我們還將推廣這項(xiàng)工作以檢測(cè)其他類型的異常,這些異??赡苁怯腥さ氖录约熬W(wǎng)絡(luò)攻擊。
29 Multiple submodels parallel support vector machine on spark
Liu, Chang, et al. “Multiple submodels parallel support vector machine on spark.” 2016 IEEE International Conference on Big Data (Big Data). IEEE, 2016.
支持向量機(jī)(SVM)是一種經(jīng)典的分類算法,有著廣泛的應(yīng)用。通過(guò)核函數(shù),SVM可以處理在原始特征空間中不可線性分離的數(shù)據(jù)集,使其在實(shí)際使用中比線性模型更加靈活。然而,其訓(xùn)練的復(fù)雜性是大規(guī)模數(shù)據(jù)集處理的障礙。本文提出了 Spark 上的多子模型并行 SVM(MSM-SvM),以利用計(jì)算機(jī)集群加速非線性 SVM 的訓(xùn)練。利用SVM的模型理論,引入基于聚類的數(shù)據(jù)分割方法,以實(shí)現(xiàn)并行訓(xùn)練過(guò)程并用多個(gè)局部子模型逼近全局解。我們還通過(guò)“一對(duì)一”策略涵蓋多分類。實(shí)驗(yàn)表明,MSM-SVM不僅在二分類上表現(xiàn)良好,而且在多類分類上也表現(xiàn)良好。在預(yù)測(cè)二進(jìn)制情況的準(zhǔn)確性方面,它優(yōu)于 Spark MLlib 中的 SVM With MiniBatch SGD 工具。對(duì)于我們幾乎所有的實(shí)驗(yàn)數(shù)據(jù)集,MSM-SVM 提供了與 LIBSVM 相似的預(yù)測(cè)性能,同時(shí)花費(fèi)的時(shí)間少得多。
30 Apache Flink 概要
Apache Flink 是一個(gè)框架和分布式處理引擎,用于在無(wú)邊界和有邊界數(shù)據(jù)流上進(jìn)行有狀態(tài)的計(jì)算。Flink 能在所有常見(jiàn)集群環(huán)境中運(yùn)行,并能以內(nèi)存速度和任意規(guī)模進(jìn)行計(jì)算。
1、處理無(wú)界和有界數(shù)據(jù)
Apache Flink 擅長(zhǎng)處理無(wú)界和有界數(shù)據(jù)集 精確的時(shí)間控制和狀態(tài)化使得 Flink 的運(yùn)行時(shí)(runtime)能夠運(yùn)行任何處理無(wú)界流的應(yīng)用。有界流則由一些專為固定大小數(shù)據(jù)集特殊設(shè)計(jì)的算法和數(shù)據(jù)結(jié)構(gòu)進(jìn)行內(nèi)部處理,產(chǎn)生了出色的性能。數(shù)據(jù)集是有界流,網(wǎng)絡(luò)實(shí)時(shí)處理是無(wú)界流,未來(lái)展望中
2、部署應(yīng)用到任意地方
Apache Flink 是一個(gè)分布式系統(tǒng),它需要計(jì)算資源來(lái)執(zhí)行應(yīng)用程序。Flink 集成了所有常見(jiàn)的集群資源管理器,例如 Hadoop YARN、 Apache Mesos 和 Kubernetes,但同時(shí)也可以作為獨(dú)立集群運(yùn)行。
3、運(yùn)行任意規(guī)模應(yīng)用
Flink 旨在任意規(guī)模上運(yùn)行有狀態(tài)流式應(yīng)用。因此,應(yīng)用程序被并行化為可能數(shù)千個(gè)任務(wù),這些任務(wù)分布在集群中并發(fā)執(zhí)行。所以應(yīng)用程序能夠充分利用無(wú)盡的 CPU、內(nèi)存、磁盤(pán)和網(wǎng)絡(luò) IO。而且 Flink 很容易維護(hù)非常大的應(yīng)用程序狀態(tài)。其異步和增量的檢查點(diǎn)算法對(duì)處理延遲產(chǎn)生最小的影響,同時(shí)保證精確一次狀態(tài)的一致性。
4、利用內(nèi)存性能
有狀態(tài)的 Flink 程序針對(duì)本地狀態(tài)訪問(wèn)進(jìn)行了優(yōu)化。任務(wù)的狀態(tài)始終保留在內(nèi)存中,如果狀態(tài)大小超過(guò)可用內(nèi)存,則會(huì)保存在能高效訪問(wèn)的磁盤(pán)數(shù)據(jù)結(jié)構(gòu)中。任務(wù)通過(guò)訪問(wèn)本地(通常在內(nèi)存中)狀態(tài)來(lái)進(jìn)行所有的計(jì)算,從而產(chǎn)生非常低的處理延遲。Flink 通過(guò)定期和異步地對(duì)本地狀態(tài)進(jìn)行持久化存儲(chǔ)來(lái)保證故障場(chǎng)景下精確一次的狀態(tài)一致性。
在Flink中,由于處理時(shí)間比較簡(jiǎn)單,早期版本默認(rèn)的時(shí)間語(yǔ)義是處理時(shí)間(系統(tǒng)時(shí)間);而考慮到事件時(shí)間在實(shí)際應(yīng)用中更為廣泛,從Flink1.12版本開(kāi)始,F(xiàn)link已經(jīng)將事件時(shí)間作為默認(rèn)的時(shí)間語(yǔ)義了。如果按照處理時(shí)間,數(shù)據(jù)到達(dá)時(shí)可能不是按序到達(dá)的,網(wǎng)絡(luò)傳輸存在亂序的情況,因此,后面的Flink版本改為按事件時(shí)間處理數(shù)據(jù)
一般的實(shí)時(shí)流處理場(chǎng)景中,事件時(shí)間基本與處理時(shí)間同步,只是略微延遲
由于不同的slot在計(jì)算資源上是物理隔離的,所以Flink能管理的狀態(tài)在并行任務(wù)間是無(wú)法共享的,每個(gè)狀態(tài)只能針對(duì)當(dāng)前子任務(wù)的實(shí)例有效
Flink需要用戶進(jìn)行初始資源配置,該配置在作業(yè)開(kāi)始后不再改變,除非重啟任務(wù)
31 Research on Parallel SVM Algorithm Based on Cascade SVM
Cheng, Yi. “Research on Parallel SVM Algorithm Based on Cascade SVM.” arXiv preprint arXiv:2203.05768 (2022).
級(jí)聯(lián)SVM(CSVM)可以并行對(duì)數(shù)據(jù)集進(jìn)行分組并訓(xùn)練子集,從而大大減少了訓(xùn)練時(shí)間和內(nèi)存消耗。但使用該方法得到的模型精度與直接訓(xùn)練相比存在一定誤差。為了減少誤差,我們分析分組訓(xùn)練中出現(xiàn)誤差的原因,總結(jié)出理想條件下無(wú)誤差的分組。提出一種平衡級(jí)聯(lián)支持向量機(jī)(BCSVM)算法,平衡分組后子集中的樣本比例,保證子集中的樣本比例與原始數(shù)據(jù)集相同。同時(shí)證明BCSVM算法得到的模型精度高于CSVM。最后使用兩個(gè)常見(jiàn)的數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)驗(yàn)證,文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-675351.html
–end–文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-675351.html
到了這里,關(guān)于如何使用Spark/Flink等分布式計(jì)算引擎做網(wǎng)絡(luò)入侵檢測(cè)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!