一種基於數據湖的時序數據分析方法及裝置與流程
2024-04-12 19:40:05 2
1.本技術涉及數據分析領域,尤其涉及一種基於數據湖的時序數據分析方法及裝置。
背景技術:
2.隨著物聯網技術的發展和存儲成本的降低和數據人才隊伍的壯大,企業在數位化轉型過程中,越來越青睞於將原數據平臺從傳統集中式數據倉庫架構轉為更加開放式數據湖架構,在這過程中,數據的越來越多樣化為企業數據治理工作帶來巨大的壓力,而其中相當大一部分又來自物聯網設備的時序類型數據。
3.目前基於時序數據的分析都是針對性的定製開發,例如針對股票交易的實時圖分析,就只能用於分析股票交易;而定製開發過程往往要經歷完整的項目開發生命周期,嚴重阻礙了企業的數位化轉型的進展。而且時序數據分析一般都需依賴有經驗的專業人士進行分析,導致普通用戶分析時序數據的難度較大。
技術實現要素:
4.為了解決上述技術問題或者至少部分地解決上述技術問題,本技術提供了一種基於數據湖的時序數據分析方法及裝置。
5.根據本技術實施例的一個方面,提供了一種基於數據湖的時序數據分析方法,包括:獲取待分析的目標數據集合,其中,所述目標數據集合是從數據湖中獲取的;利用預設函數對所述目標數據集合中的數據進行轉化,得到所述目標數據集合對應的時序數據;基於所述時序數據生成相應的可視化數據,並按照預設分析條件對所述可視化數據進行分析,得到所述時序數據對應的數據規律。
6.進一步的,所述獲取待分析的目標數據集合,包括:獲取當前輸入的元數據信息,其中,所述元數據信息包括至少一個數據描述信息;從所述數據湖中查詢與所述數據描述信息相匹配的原始數據集合;獲取數據分析條件,並利用所述原始數據集合中滿足所述數據分析條件的原始數據,構建所述目標數據集合。
7.進一步的,所述數據分析條件至少包括過濾條件以及採樣條件;所述利用所述原始數據集合中滿足所述數據分析條件的原始數據,構建所述目標數據集合,包括:將所述原始數據集合中滿足所述過濾條件的原始數據確定為候選數據;按照所述採樣條件所指示的顆粒度對所述候選數據進行取樣,得到目標數據;基於所述目標數據構建所述目標數據集合。
8.進一步的,所述基於所述時序數據生成相應的可視化數據,包括:
獲取所述目標數據集合對應的屬性信息,並查詢所述屬性信息對應的至少一種可視化類型;從至少一種可視化類型中獲取與預設可視化需求相匹配的目標可視化類型;將所述時序數據按照所述目標可視化類型生成所述可視化數據。
9.進一步的,所述按照預設分析條件對所述可視化數據進行分析,得到所述時序數據對應的數據規律,包括:檢測所述可視化數據是否平穩,得到檢測結果;獲取所述檢測結果對應的分析策略,並利用所述分析策略對所述可視化數據進行分析,得到所述數據規律。
10.進一步的,所述利用所述分析策略對所述可視化數據進行分析,得到所述數據規律,包括:在所述檢測結果為第一結果的情況下,檢測所述可視化數據是否存在白噪聲數據,其中,所述第一結果用於表示所述可視化數據平穩;在所述可視化數據存在白噪聲數據的情況下,檢測所述可視化數據對應的平穩類型;將所述平穩類型確定為所述數據規律。
11.進一步的,所述利用所述分析策略對所述可視化數據進行分析,得到所述數據規律,包括:在所述檢測結果為第二結果的情況下,基於所述可視化數據執行差分運算,得到運算結果,其中,所述第二結果用於表示所述可視化數據平穩;按照預設維度檢測所述運算結果,得到每個預設維度對應的趨勢信息,其中,所述預設維度包括:線性維度、曲線維度以及周期維度;將所述預設維度對應的趨勢信息確定為所述數據規律。
12.根據本技術實施例的再一個方面,還提供了一種基於數據湖的時序數據分析裝置,包括:獲取模塊,用於獲取待分析的目標數據集合,其中,所述目標數據集合是從數據湖中獲取的;轉化模塊,用於利用預設函數對所述目標數據集合中的數據進行轉化,得到所述目標數據集合對應的時序數據;生成模塊,用於基於所述時序數據生成相應的可視化數據,並按照預設分析條件對所述可視化數據進行分析,得到所述時序數據對應的數據規律。
13.根據本技術實施例的另一方面,還提供了一種存儲介質,該存儲介質包括存儲的程序,程序運行時執行上述的步驟。
14.根據本技術實施例的另一方面,還提供了一種電子裝置,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;其中:存儲器,用於存放電腦程式;處理器,用於通過運行存儲器上所存放的程序來執行上述方法中的步驟。
15.本技術實施例還提供了一種包含指令的電腦程式產品,當其在計算機上運行時,使得計算機執行上述方法中的步驟。
16.本技術實施例提供的上述技術方案與現有技術相比具有如下優點:本技術實施例提供的方法通過自動將目標數據集合轉換成時序數據,用戶可直接配置相應的分析條件,利用分析條件對時序數據進行分析,從而歸納提煉出時序數據的規律,以此實現了根據用戶的需求進行數據分析,無需憑藉專業的分析人員進行分析,降低了普通用戶數據分析的難度。
附圖說明
17.此處的附圖被併入說明書中並構成本說明書的一部分,示出了符合本技術的實施例,並與說明書一起用於解釋本技術的原理。
18.為了更清楚地說明本技術實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,對於本領域普通技術人員而言,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
19.圖1為本技術實施例提供的一種基於數據湖的時序數據分析方法的流程圖;圖2為本技術實施例提供的一種元數據信息的示意圖;圖3為本技術實施例提供的一種處理時序數據的示意圖;圖4為本技術實施例提供的一種基於數據湖的時序數據分析裝置的框圖;圖5為本技術實施例提供的一種電子設備的結構示意圖。
具體實施方式
20.為使本技術實施例的目的、技術方案和優點更加清楚,下面將結合本技術實施例中的附圖,對本技術實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本技術的一部分實施例,而不是全部的實施例,本技術的示意性實施例及其說明用於解釋本技術,並不構成對本技術的不當限定。基於本技術中的實施例,本領域普通技術人員在沒有做出創造性勞動的前提下所獲得的所有其他實施例,都屬於本技術保護的範圍。
21.需要說明的是,在本文中,諸如「第一」和「第二」等之類的關係術語僅僅用來將一個實體或者操作與另一個類似的實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。而且,術語「包括」、「包含」或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句「包括一個
……」
限定的要素,並不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
22.本技術實施例提供了一種基於數據湖的時序數據分析方法及裝置。本發明實施例所提供的方法可以應用於任意需要的電子設備,例如,可以為伺服器、終端等電子設備,在此不做具體限定,為描述方便,後續簡稱為電子設備。
23.根據本技術實施例的一方面,提供了一種基於數據湖的時序數據分析方法的方法實施例。圖1為本技術實施例提供的一種基於數據湖的時序數據分析方法的流程圖,如圖1所示,該方法包括:步驟s11,獲取待分析的目標數據集合,其中,目標數據集合是從數據湖中獲取的。
24.本技術實施例提供的方法應用於數據處理設備,數據處理設備可以是智慧型手機、
電腦以及ipad等等。數據處理設備用於接收用戶的數據分析請求,根據數據分析請求選擇相應的原始數據生成時序數據,並分析該時序數據的數據規律。
25.具體的,獲取待分析的目標數據集合,包括以下步驟a1-a3:步驟a1,獲取當前輸入的元數據信息,其中,元數據信息包括至少一個數據描述信息。
26.在本技術實施例中,數據處理設備可以接收用戶觸發的數據分析請求,例如:用戶基於點擊顯示界面的分析按鈕,數據處理設備基於該數據分析請求顯示相應的輸入界面,獲取用戶基於輸入界面輸入的元數據信息。如圖2所示,元數據信息中包括的數據描述信息可以是:名稱,數據源,時序表以及字表等等,其中,名稱可以是業務名稱,數據源可以是資料庫。
27.步驟a2,從數據湖中查詢與數據描述信息相匹配的原始數據集合。
28.在本技術實施例中,利用元數據查詢信息查詢原始數據集合的過程是:首先從數據湖中確定數據源,並從數據源中獲取該業務名稱對應的時序表。其次查詢該時序表是否存在多個子表,如果存在多個子表,則獲取篩選條件,篩選條件為是否使用全部子表中的數據作為原始數據集合。最終根據篩選條件從時序表中選擇相應的子表,並利用該子表中的數據構建原始數據集合。
29.步驟a3,獲取數據分析條件,並利用原始數據集合中滿足數據分析條件的原始數據,構建目標數據集合。
30.在本技術實施例中,數據分析條件至少包括過濾條件以及採樣條件。數據分析條件可以是用戶基於數據處理設備預先設置的。
31.在本技術實施例中,步驟a3,利用原始數據集合中滿足數據分析條件的原始數據,構建目標數據集合,包括以下步驟b1-b3:步驟b1,將原始數據集合中滿足過濾條件的原始數據確定為候選數據。
32.在本技術實施例中,過濾條件包括數據過濾類別、時間過濾範圍、標籤過濾數據等等。數據過濾類別可以包括一個數據類別,時間過濾範圍可以包括一個開始時間和一個結束時間,標籤過濾數據可以指示要獲取的一個或多個設備標籤所在的表項,即標籤用於表明監測對象的屬性信息。比如一個數據採集端的生廠日期、生產廠商、型號等,它往往不隨著時間的變化而變化。一個標籤由標籤id和標籤值組成,標籤id也可稱為標籤名稱。
33.步驟b2,按照採樣條件所指示的顆粒度對候選數據進行取樣,得到目標數據;步驟b3,基於目標數據構建所述目標數據集合。
34.在本技術實施例中,採樣條件包括:採樣時間範圍,採樣顆粒度以及採樣周期,其中,採樣顆粒度可以表示為數據之間的時間粒度。例如:採樣時間範圍為8:00—20:00,採樣周期為1小時,採樣顆粒度為10分鐘。基於此,在採樣過程中,首先從候選數據中獲取落入採樣時間範圍內的候選數據,其次,對落入採樣範圍內的候選數據按照採樣周期劃分,得到多個區間數據,最終從區間數據中按照採樣顆粒度採集目標數據。最終基於每個區間數據內的目標數據構建目標數據集合。
35.步驟s12,利用預設函數對目標數據集合中的數據進行轉化,得到目標數據集合對應的時序數據。
36.在本技術實施例中,用戶可以基於數據處理設備設置用於轉化時序數據的預設函
數,然後利用預設函數對目標數據集合中每個目標數據進行轉換,得到目標數據集合對應的時序數據。
37.在本技術實施例中,在得到時序數據之後還需要判斷時序數據是否滿足用戶當前的分析條件,分析條件包括:用戶對時序數據要求的顆粒度,降採樣算法等等。具體的,首先確定時序數據的顆粒度,例如:時序數據之間的時間間隔為10min,用戶要求的顆粒度為30min,此時時序數據的顆粒度小於用於所指示的顆粒度,則需要對時序數據進行降採樣操作,得到目標數據。另外,如圖3所示,如果在降採樣操作中出現數據缺失的情況,用戶可以基於數據處理設備設置缺失數據。最終通過對候選數據進行降採樣得到的數據以及設置的缺失數據得到最終的時序數據。
38.需要說明的是,時序數據是在時間上基於一定頻率持續產生的一系列監測指標的數據。比如每隔1 分鐘採集一次監測對象的溫度、功率值等,進而產生的一系列數據。如股票價格、氣溫變化、網站的瀏覽訪問數據、個人健康數據、工業傳感器數據、業務伺服器的系統監控數據等都可以是時序數據。降採樣是針對一個時間序列在時間維度上對一個監測指標的多個監測數據的採樣,例如,一個小時內傳感器採集的60個溫度的平均值、最大值等。
39.步驟s13,基於時序數據生成相應的可視化數據,並按照預設分析條件對可視化數據進行分析,得到時序數據對應的數據規律。
40.在本技術實施例中,基於時序數據生成相應的可視化數據,包括以下步驟c1-c3:步驟c1,獲取目標數據集合對應的屬性信息,並查詢屬性信息對應的至少一種可視化類型。
41.步驟c2,從至少一種可視化類型中獲取與預設可視化需求相匹配的目標可視化類型。
42.步驟c3,將時序數據按照目標可視化類型生成可視化數據。
43.在本技術實施例中,為了便於用戶更直觀的了解時序數據的變化情況,針對不同的屬性信息設置了不同的可視化類型,例如:目標數據的屬性信息為層級結構的數據(例如:不同產品類別的銷售數據)的情況下,可視化類型為簇狀柱形圖,條形圖等等。目標數據的屬性信息為常規數值(例如:網站瀏覽數據)的情況下,可視化類型可以是簇狀柱形圖或者折線圖等等。
44.在本技術實施例中,數據處理設備將獲取到的目標數據集合對應屬性信息的可視化類型進行顯示,同時還可以獲取用戶輸入的預設可視化需求,例如:預設可視化需求可以是數量增減變化,數據的對比情況等等。在預設可視化需求是數據增減變化的情況下,與該數據增減變化相匹配的目標可視化類型為折線圖。或者在預設可視化需求為分類對比的情況下,與該分類對比相匹配的目標可視化類型為簇狀柱形圖。
45.在本技術實施例中,按照預設分析條件對可視化數據進行分析,得到時序數據對應的數據規律,包括以下步驟d1-d2:步驟d1,檢測可視化數據是否平穩,得到檢測結果。
46.在本技術實施例中,檢測可視化數據是否平穩的過程如下:從可視化數據中隨機抽取兩個任意數據p和q,利用以下公式判斷可視化數據是否平穩,,式中,x為隨機變量,t為時刻。將p
和q輸入上述公式,如果上述公式成立,則說明可視化數據平穩,此時檢測結果為第一結果。相反,如果上述公式不成立,則說明可視化數據不平穩,此時檢測結果為第二結果。
47.步驟d2,獲取檢測結果對應的分析策略,並利用分析策略對可視化數據進行分析,得到數據規律。
48.在本技術實施例中,利用分析策略對可視化數據進行分析,得到數據規律,包括:在檢測結果為第一結果的情況下,檢測可視化數據是否存在白噪聲數據,其中,第一結果用於表示可視化數據平穩;在可視化數據存在白噪聲數據的情況下,檢測可視化數據對應的平穩類型,其中,平穩類型包括:嚴平穩以及寬平穩。最終,將平穩類型確定為數據規律。
49.需要要說明的是,嚴平穩是指:時間序列數據的均值、方差和自相關係數不隨時間變化。寬平穩是指:時間序列數據的均值可以隨時間變化,但是方差以及自相關係數不會隨時間變化。本技術實施例提供的方法通過可視化區分嚴平穩和寬平穩,可以從曲線的形態上來看,嚴格平穩的曲線呈直線形態,而寬平穩的曲線則會有一些波動。
50.在本技術實施例中,利用分析策略對可視化數據進行分析,得到數據規律,包括:在檢測結果為第二結果的情況下,基於可視化數據執行差分運算,得到運算結果,其中,第二結果用於表示可視化數據平穩。需要說明的是,差分運算是通過計算t時刻的數據減去t-1時刻的數據,以此來便于衡量t時刻數據相對於t-1時刻的變化情況。
51.其次,按照預設維度檢測運算結果,得到每個預設維度對應的趨勢信息,其中,預設維度包括:線性維度、曲線維度以及周期維度;將預設維度對應的趨勢信息確定為數據規律。
52.在本技術實施例中,按照預設維度檢測運算結果,得到每個預設維度對應的趨勢信息的過程如下:首先,基於時序數據生成一個圖表,其次,檢測觀察圖標中曲線的變化趨勢。例如:如果發現數據具有線性趨勢,則可以通過直線來表徵這一趨勢。如果是周期性的話,則可以通過正弦波或者其他周期性的函數來表徵這一趨勢。最後,通過對圖像上的數據點和所畫出來的函數之間的差異和誤差來評估識別出來的時序數據是否真正存在這樣一個特定的趨勢或者周期性。
53.在本技術實施例中,利用計算機對序列特徵進行觀察的方式,使用異步方式對時間序列進行自動標註。機器觀察首先時間序列是否屬於平穩或非平穩,對序列打上標籤,平穩則繼續檢測是否白噪聲,如是,則打上白噪聲標籤,同時檢測是嚴平穩還是寬平穩,打上對應標籤。如非平穩序列,執行差分運算,檢測序列的線性趨勢、曲線趨勢、周期趨勢,並打上對應標籤。
54.作為一個示例,以智能電錶電壓採樣值為例,普通家用電器電壓值設定都是按照國家標準220v設計,但實際到電器端的電壓未必能這麼精確控制,會有上下起伏的範圍,假設需要設計一個不同臺區電壓穩定度評估的分析模型,我們就需要先對已有的數據進行分析探索。那麼我們首先要在數據湖中找到電壓數據的存儲位置。然後從其中抽樣出幾個不同地區的電錶數據,進行對比。如果是原始數據可能是15分鐘採樣一次,我們可以進行降採樣處理,如降到1小時一次的數據。通過對比和反覆觀察數據可視化曲線,我們能對這些臺區的大致電壓情況有了初步的認識,如上下極值範圍情況、周期性規律等。
55.本技術實施例提供的方法通過自動將目標數據集合轉換成時序數據,用戶可直接配置相應的分析條件,利用分析條件對時序數據進行分析,從而歸納提煉出時序數據的規
architecture,簡稱eisa)總線等。該通信總線可以分為地址總線、數據總線、控制總線等。為便於表示,圖中僅用一條粗線表示,但並不表示僅有一根總線或一種類型的總線。
67.通信接口用於上述終端與其他設備之間的通信。
68.存儲器可以包括隨機存取存儲器(random accessmemory,簡稱ram),也可以包括非易失性存儲器(non-volatilememory),例如至少一個磁碟存儲器。可選的,存儲器還可以是至少一個位於遠離前述處理器的存儲裝置。
69.上述的處理器可以是通用處理器,包括中央處理器(centralprocessing unit,簡稱cpu)、網絡處理器(network processor,簡稱np)等;還可以是數位訊號處理器(digital signalprocessing,簡稱dsp)、專用集成電路(application specificintegrated circuit,簡稱asic)、現場可編程門陣列(field-programmablegate array,簡稱fpga)或者其他可編程邏輯器件、分立門或者電晶體邏輯器件、分立硬體組件。
70.在本技術提供的又一實施例中,還提供了一種計算機可讀存儲介質,該計算機可讀存儲介質中存儲有指令,當其在計算機上運行時,使得計算機執行上述實施例中任一所述的基於數據湖的時序數據分析方法。
71.在本技術提供的又一實施例中,還提供了一種包含指令的電腦程式產品,當其在計算機上運行時,使得計算機執行上述實施例中任一所述的基於數據湖的時序數據分析方法。
72.在上述實施例中,可以全部或部分地通過軟體、硬體、固件或者其任意組合來實現。當使用軟體實現時,可以全部或部分地以電腦程式產品的形式實現。所述電腦程式產品包括一個或多個計算機指令。在計算機上加載和執行所述電腦程式指令時,全部或部分地產生按照本技術實施例所述的流程或功能。所述計算機可以是通用計算機、專用計算機、計算機網絡、或者其他可編程裝置。所述計算機指令可以存儲在計算機可讀存儲介質中,或者從一個計算機可讀存儲介質向另一個計算機可讀存儲介質傳輸,例如,所述計算機指令可以從一個網站站點、計算機、伺服器或數據中心通過有線(例如同軸電纜、光纖、數字用戶線)或無線(例如紅外、無線、微波等)方式向另一個網站站點、計算機、伺服器或數據中心進行傳輸。所述計算機可讀存儲介質可以是計算機能夠存取的任何可用介質或者是包含一個或多個可用介質集成的伺服器、數據中心等數據存儲設備。所述可用介質可以是磁性介質,(例如,軟盤、硬碟、磁帶)、光介質(例如,dvd)、或者半導體介質(例如固態硬碟solid state disk)等。
73.以上所述僅為本技術的較佳實施例而已,並非用於限定本技術的保護範圍。凡在本技術的精神和原則之內所作的任何修改、等同替換、改進等,均包含在本技術的保護範圍內。
74.以上所述僅是本技術的具體實施方式,使本領域技術人員能夠理解或實現本技術。對這些實施例的多種修改對本領域的技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本技術的精神或範圍的情況下,在其它實施例中實現。因此,本技術將不會被限制於本文所示的這些實施例,而是要符合與本文所申請的原理和新穎特點相一致的最寬的範圍。