本技術(shù)涉及數(shù)據(jù)處理,特別涉及一種流式數(shù)據(jù)異常檢測(cè)方法、裝置及集群。
背景技術(shù):
1、眾多應(yīng)用場(chǎng)景會(huì)產(chǎn)生流式數(shù)據(jù)。通過(guò)對(duì)流式數(shù)據(jù)進(jìn)行異常檢測(cè),可以及時(shí)發(fā)現(xiàn)異常。例如,在制造流程的場(chǎng)景中,對(duì)反映機(jī)床運(yùn)行狀態(tài)的流式數(shù)據(jù)進(jìn)行異常檢測(cè),可以及時(shí)發(fā)現(xiàn)機(jī)床的異常。再例如,對(duì)反映患者生命體征的流式數(shù)據(jù)進(jìn)行異常檢測(cè),可以及時(shí)發(fā)現(xiàn)患者生命體征的異常。
2、隨著時(shí)間的流逝,流式數(shù)據(jù)的數(shù)據(jù)特征可能會(huì)發(fā)生變化。因此,難以采用固定不變的標(biāo)準(zhǔn)或模型,檢測(cè)不同時(shí)間段產(chǎn)生的數(shù)據(jù)是否異常。目前,利用全量歷史數(shù)據(jù)或近期歷史數(shù)據(jù),對(duì)最近產(chǎn)生的數(shù)據(jù)進(jìn)行檢測(cè)。由于,數(shù)據(jù)是隨著時(shí)間推移不斷生成的,并且全量歷史數(shù)據(jù)或近期歷史數(shù)據(jù)的數(shù)據(jù)量大。這導(dǎo)致數(shù)據(jù)的異常檢測(cè)需要頻繁、大量地對(duì)數(shù)據(jù)庫(kù)或內(nèi)存進(jìn)行查詢操作,嚴(yán)重消耗了數(shù)據(jù)庫(kù)或內(nèi)存的性能。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提出了一種流式數(shù)據(jù)異常檢測(cè)方法、裝置及集群,可以在較少消耗數(shù)據(jù)庫(kù)或內(nèi)存的性能的情況下,使得異常檢測(cè)模型適應(yīng)流式數(shù)據(jù)不斷變化的數(shù)據(jù)特征,保障異常檢測(cè)模型對(duì)后續(xù)數(shù)據(jù)點(diǎn)的檢測(cè)準(zhǔn)確性。
2、第一方面,提供了一種流式數(shù)據(jù)異常檢測(cè)方法,該方法應(yīng)用于檢測(cè)裝置,檢測(cè)裝置存儲(chǔ)有流式數(shù)據(jù)的數(shù)據(jù)特征,流式數(shù)據(jù)包括按時(shí)間順序產(chǎn)生的數(shù)據(jù)點(diǎn),該方法包括:獲取流式數(shù)據(jù)的第一數(shù)據(jù)點(diǎn);利用異常檢測(cè)模型,檢測(cè)第一數(shù)據(jù)點(diǎn)是否為異常數(shù)據(jù),其中,異常檢測(cè)模型是基于數(shù)據(jù)特征得到的;在第一數(shù)據(jù)點(diǎn)不為異常數(shù)據(jù)的情況下,基于第一數(shù)據(jù)點(diǎn),更新數(shù)據(jù)特征;基于更新后的數(shù)據(jù)特征,更新異常檢測(cè)模型;獲取流式數(shù)據(jù)的第二數(shù)據(jù)點(diǎn),第二數(shù)據(jù)點(diǎn)的產(chǎn)生時(shí)刻在第一數(shù)據(jù)點(diǎn)的產(chǎn)生時(shí)刻之后;利用更新后的異常檢測(cè)模型,檢測(cè)第二數(shù)據(jù)點(diǎn)是否為異常數(shù)據(jù)。
3、如此,每當(dāng)檢測(cè)到正常數(shù)據(jù)點(diǎn)時(shí),可以利用正常數(shù)據(jù)點(diǎn)更新流式數(shù)據(jù)的數(shù)據(jù)特征,并基于更新后的數(shù)據(jù)特征,更新異常檢測(cè)模型。也就是說(shuō),可以隨著數(shù)據(jù)點(diǎn)的檢測(cè),不斷更新異常檢測(cè)模型,使得異常檢測(cè)模型的更新和流式數(shù)據(jù)的數(shù)據(jù)特征的更新同步,即使得異常檢測(cè)模型和流式數(shù)據(jù)新的數(shù)據(jù)特征相適應(yīng)。從而實(shí)現(xiàn)了無(wú)需在查詢、保存全量歷史數(shù)據(jù)點(diǎn)以及固定時(shí)間窗口中的數(shù)據(jù)點(diǎn)的情況下,使得異常檢測(cè)模型和流式數(shù)據(jù)新的數(shù)據(jù)特征相適應(yīng)。
4、在異常檢測(cè)模型更新后,可利用更新后的異常檢測(cè)模型,用于檢測(cè)后續(xù)產(chǎn)生的數(shù)據(jù)點(diǎn)。如上所述,更新后的異常檢測(cè)模型和流式數(shù)據(jù)新的數(shù)據(jù)特征相適應(yīng),利用更新后的異常檢測(cè)模型檢測(cè)后續(xù)產(chǎn)生的數(shù)據(jù)點(diǎn),可提高檢測(cè)的準(zhǔn)確性,保障檢測(cè)效果。
5、在一種可能的實(shí)現(xiàn)方式中,檢測(cè)裝置存儲(chǔ)有流式數(shù)據(jù)的m個(gè)峰值數(shù)據(jù)點(diǎn),數(shù)據(jù)特征包括m個(gè)峰值數(shù)據(jù)點(diǎn)中的k個(gè)峰值數(shù)據(jù)點(diǎn),k為大于或等于1的正整數(shù),m為大于或等于k的正整數(shù);基于第一數(shù)據(jù)點(diǎn),更新數(shù)據(jù)特征,包括:將m個(gè)峰值數(shù)據(jù)點(diǎn)中的第三數(shù)據(jù)點(diǎn),替換為第一數(shù)據(jù)點(diǎn),得到更新后的m個(gè)峰值數(shù)據(jù)點(diǎn);基于更新后的m個(gè)峰值數(shù)據(jù)點(diǎn),更新k個(gè)峰值數(shù)據(jù)點(diǎn)。
6、在該實(shí)現(xiàn)方式中,從m個(gè)峰值數(shù)據(jù)點(diǎn)中,得到用作流式數(shù)據(jù)的數(shù)據(jù)特征的k個(gè)數(shù)據(jù)點(diǎn),其中,m可以大于k,如此,可以保障更新后的k個(gè)數(shù)據(jù)點(diǎn)能夠準(zhǔn)確地反映流式數(shù)據(jù)的實(shí)際數(shù)據(jù)特征。
7、在一種可能的實(shí)現(xiàn)方式中,將m個(gè)峰值數(shù)據(jù)點(diǎn)中的第三數(shù)據(jù)點(diǎn),替換為第一數(shù)據(jù)點(diǎn),包括:當(dāng)?shù)谌龜?shù)據(jù)點(diǎn)的生命周期超時(shí)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn)。
8、該實(shí)現(xiàn)方式中,可以為檢測(cè)裝置存儲(chǔ)的峰值數(shù)據(jù)點(diǎn)設(shè)置生命周期,當(dāng)有峰值數(shù)據(jù)點(diǎn)的生命周期超時(shí)時(shí),使用最近檢測(cè)到的正常數(shù)據(jù)點(diǎn)替換生命周期超時(shí)的峰值數(shù)據(jù)點(diǎn),如此,可保障檢測(cè)裝置存儲(chǔ)的峰值數(shù)據(jù)點(diǎn)能夠反映流式數(shù)據(jù)新的數(shù)據(jù)特征。
9、在一種可能的實(shí)現(xiàn)方式中,將m個(gè)峰值數(shù)據(jù)點(diǎn)中的第三數(shù)據(jù)點(diǎn),替換為第一數(shù)據(jù)點(diǎn),包括:當(dāng)峰值數(shù)據(jù)點(diǎn)為最大峰數(shù)據(jù)點(diǎn),且第一數(shù)據(jù)點(diǎn)大于第三數(shù)據(jù)點(diǎn)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn)。
10、在該實(shí)現(xiàn)方式中,第一數(shù)據(jù)點(diǎn)大于第三數(shù)據(jù)點(diǎn),說(shuō)明相比第三數(shù)據(jù)點(diǎn),第一數(shù)據(jù)點(diǎn)能更準(zhǔn)確地反映流式數(shù)據(jù)的數(shù)據(jù)特征,如此將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn),使得檢測(cè)裝置存儲(chǔ)的峰值數(shù)據(jù)點(diǎn)能夠更正確地反映流式數(shù)據(jù)的實(shí)際數(shù)據(jù)特征。
11、在一種可能的實(shí)現(xiàn)方式中,將m個(gè)峰值數(shù)據(jù)點(diǎn)中的第三數(shù)據(jù)點(diǎn),替換為第一數(shù)據(jù)點(diǎn),包括:當(dāng)峰值數(shù)據(jù)點(diǎn)為最小峰數(shù)據(jù)點(diǎn),且第一數(shù)據(jù)點(diǎn)小于第三數(shù)據(jù)點(diǎn)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn)。
12、在該實(shí)現(xiàn)方式中,第一數(shù)據(jù)點(diǎn)小于第三數(shù)據(jù)點(diǎn),說(shuō)明相比第三數(shù)據(jù)點(diǎn),第一數(shù)據(jù)點(diǎn)能更準(zhǔn)確地反映流式數(shù)據(jù)的數(shù)據(jù)特征,如此將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn),使得檢測(cè)裝置存儲(chǔ)的峰值數(shù)據(jù)點(diǎn)能夠更正確地反映流式數(shù)據(jù)的實(shí)際數(shù)據(jù)特征。
13、在一種可能的實(shí)現(xiàn)方式中,該方法還包括:在第一數(shù)據(jù)點(diǎn)為異常數(shù)據(jù)的情況下,輸出第一數(shù)據(jù)點(diǎn)的檢測(cè)結(jié)果,檢測(cè)結(jié)果用于表示第一數(shù)據(jù)點(diǎn)為異常數(shù)據(jù)。
14、在該實(shí)現(xiàn)方式中,當(dāng)檢測(cè)到異常數(shù)據(jù)點(diǎn)時(shí),輸出檢測(cè)結(jié)果,以使得用戶獲知流式數(shù)據(jù)出現(xiàn)了異常。
15、在一種可能的實(shí)現(xiàn)方式中,數(shù)據(jù)特征是基于流式數(shù)據(jù)的n個(gè)數(shù)據(jù)點(diǎn)得到的;其中,n個(gè)數(shù)據(jù)點(diǎn)的生成時(shí)刻早于第一數(shù)據(jù)點(diǎn)的生成時(shí)刻,n為大于1的正整數(shù)。
16、在該實(shí)現(xiàn)方式中,可以基于流式數(shù)據(jù)的多個(gè)數(shù)據(jù)點(diǎn),得到流式數(shù)據(jù)的數(shù)據(jù)特征。檢測(cè)裝置存儲(chǔ)流式數(shù)據(jù)的數(shù)據(jù)特征,而非存儲(chǔ)該n個(gè)數(shù)據(jù)點(diǎn),從而可以節(jié)省檢測(cè)裝置的存儲(chǔ)空間。
17、第二方面,提供了一種流式數(shù)據(jù)異常檢測(cè)裝置,其特征在于,裝置存儲(chǔ)有流式數(shù)據(jù)的數(shù)據(jù)特征,流式數(shù)據(jù)包括按時(shí)間順序產(chǎn)生的數(shù)據(jù)點(diǎn),裝置包括:獲取模塊,用于獲取流式數(shù)據(jù)的第一數(shù)據(jù)點(diǎn);檢測(cè)模塊,用于利用異常檢測(cè)模型,檢測(cè)第一數(shù)據(jù)點(diǎn)是否為異常數(shù)據(jù),其中,異常檢測(cè)模型是基于數(shù)據(jù)特征得到的;第一更新模塊,用于在第一數(shù)據(jù)點(diǎn)不為異常數(shù)據(jù)的情況下,基于第一數(shù)據(jù)點(diǎn),更新數(shù)據(jù)特征;第二更新模塊,用于基于更新后的數(shù)據(jù)特征,更新異常檢測(cè)模型。
18、在一種可能的實(shí)現(xiàn)方式中,檢測(cè)裝置存儲(chǔ)有流式數(shù)據(jù)的m個(gè)峰值數(shù)據(jù)點(diǎn),數(shù)據(jù)特征包括m個(gè)峰值數(shù)據(jù)點(diǎn)中的k個(gè)峰值數(shù)據(jù)點(diǎn),k為大于或等于1的正整數(shù),m為大于或等于k的正整數(shù);第一更新模塊用于:將m個(gè)峰值數(shù)據(jù)點(diǎn)中的第三數(shù)據(jù)點(diǎn),替換為第一數(shù)據(jù)點(diǎn),得到更新后的m個(gè)峰值數(shù)據(jù)點(diǎn);基于更新后的m個(gè)峰值數(shù)據(jù)點(diǎn),更新k個(gè)峰值數(shù)據(jù)點(diǎn)。
19、在一種可能的實(shí)現(xiàn)方式中,第一更新模塊用于:當(dāng)?shù)谌龜?shù)據(jù)點(diǎn)的生命周期超時(shí)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn);或者,當(dāng)峰值數(shù)據(jù)點(diǎn)為最大峰數(shù)據(jù)點(diǎn),且第一數(shù)據(jù)點(diǎn)大于第三數(shù)據(jù)點(diǎn)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn);或者,當(dāng)峰值數(shù)據(jù)點(diǎn)為最小峰數(shù)據(jù)點(diǎn),且第一數(shù)據(jù)點(diǎn)小于第三數(shù)據(jù)點(diǎn)時(shí),將第三數(shù)據(jù)點(diǎn)替換為第一數(shù)據(jù)點(diǎn)。
20、在一種可能的實(shí)現(xiàn)方式中,裝置還包括:輸出模塊,用于在第一數(shù)據(jù)點(diǎn)為異常數(shù)據(jù)的情況下,輸出第一數(shù)據(jù)點(diǎn)的檢測(cè)結(jié)果,檢測(cè)結(jié)果用于表示第一數(shù)據(jù)點(diǎn)為異常數(shù)據(jù)。
21、在一種可能的實(shí)現(xiàn)方式中,數(shù)據(jù)特征是基于流式數(shù)據(jù)的n個(gè)數(shù)據(jù)點(diǎn)得到的;其中,n個(gè)數(shù)據(jù)點(diǎn)的生成時(shí)刻早于第一數(shù)據(jù)點(diǎn)的生成時(shí)刻,n為大于1的正整數(shù)。
22、第三方面,提供了一種計(jì)算設(shè)備集群,包括至少一個(gè)計(jì)算設(shè)備,每個(gè)計(jì)算設(shè)備包括處理器和存儲(chǔ)器;至少一個(gè)計(jì)算設(shè)備的處理器用于執(zhí)行至少一個(gè)計(jì)算設(shè)備的存儲(chǔ)器中存儲(chǔ)的指令,以使得計(jì)算設(shè)備集群執(zhí)行第一方面提供的方法。
23、第四方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),包括計(jì)算機(jī)程序指令,當(dāng)計(jì)算機(jī)程序指令由計(jì)算設(shè)備集群執(zhí)行時(shí),計(jì)算設(shè)備集群執(zhí)行第一方面提供的方法。
24、第五方面,提供了一種包含指令的計(jì)算機(jī)程序產(chǎn)品,當(dāng)指令被計(jì)算機(jī)設(shè)備集群運(yùn)行時(shí),使得計(jì)算機(jī)設(shè)備集群執(zhí)行第一方面提供的方法。
25、第二方面至第五方面的有益效果可參考上文對(duì)第一方面的有益效果的介紹,在此不再贅述。