用于處理時間序列的方法和裝置的制造方法
【技術領域】
[0001] 本發明的各實施方式涉及時間序列(TimeSeries),更具體地,涉及用于處理時間 序列的方法和裝置。
【背景技術】
[0002] 隨著計算機、數據通信以及實時監控等技術的發展,時間序列數據庫(Time SeriesDatabase)已經被廣泛應用于例如設備監控、生產線管理、金融分析等諸多方面。時 間序列是指按照時間順序排列的測量值的集合,在此可以將存儲測量值的節點稱為數據點 (DataPoint)或者數據事件(DataEvent)。時間序列數據庫是指用于存儲這些測量值的數 據庫。測量值可以包括各種數據,例如在監控橋梁安全性的應用環境中,被采集數據可以包 括由特定傳感器采集的壓力數據和/或壓強數據;在天氣預報應用環境中,被采集數據可 以包括溫度、濕度、壓力、風力(例如,包括大小和方向),等等。
[0003] 相似性搜索(SimilaritySearch)是指在時間序列中搜索相類似的子序列。時間 序列通常包括海量數據,并且該時間序列可能會不斷地由新近的測量值來實時地更新。例 如,在監控橋梁安全性的應用環境中,在橋梁上可能部署有分別用于實時地測量各處的壓 力的數萬個傳感器。例如,當以1秒甚至更高的頻率來更新數據庫時,將產生巨大的數據 量。
[0004] 應當注意,在相似性搜索中并不要求各個子序列之間的完全匹配,而是在各個子 序列之間可以具有一定的差異,例如,差異邊界可以是e。相似性搜索中的一個重要方面是 在時間序列中搜索motif。簡言之,motif是指時間序列中的子序列(subsequence),該子 序列長度為m并且在差異邊界為e的情況下在時間序列中曾經出現至少s次。在時間序列 數據庫中,motif?是用于后期處理(例如,獲取關聯規則、聚類和分類等)的一個重要基礎。
[0005] 目前,已經開發出用于加速相似性搜索的技術方案。然而在這些技術方案中,由于 數據計算量太大而不能實時地處理采集到的時間序列、或者由于僅能夠實時地處理在長度 有限的滑動窗口范圍內的時間序列,還存在諸多缺陷。因而,如何在數據量急速膨脹的時間 序列中進行搜索,例如如何找到出現次數最多的前k個(可以指定k的具體數值)motif,成 為目前時間序列數據庫領域的一個研究熱點。
【發明內容】
[0006] 因而,期望開發一種能夠有效地處理時間序列的技術方案,還期望開發一種能夠 在時間序列中進行高效搜索的技術方案。進一步,期望上述技術方案可以隨著時間序列的 更新而實時地進行處理和搜索。
[0007] 根據本發明的一個方面,提供了一種處理時間序列的方法,包括:按照時間將時間 序列劃分為多個窗口,針對多個窗口中的當前窗口執行如下處理:從當前窗口中提取相似 子序列的至少一個分組;以及基于至少一個分組中的每個分組中的相似子序列與候選列表 中的k個特征子序列的比較,更新候選列表,其中k個特征子序列是在時間序列的至少已處 理部分中出現次數最多的k個特征子序列。
[0008] 根據本發明的一個方面,一種用于處理時間序列的裝置,包括:劃分模塊,配置用 于按照時間將時間序列劃分為多個窗口;提取模塊,配置用于針對多個窗口中的當前窗口 執行如下處理:從當前窗口中提取相似子序列的至少一個分組;以及更新模塊,配置用于 基于至少一個分組中的每個分組中的相似子序列與候選列表中的k個特征子序列的比較, 更新候選列表,其中k個特征子序列是在時間序列的至少已處理部分中出現次數最多的k 個特征子序列。
[0009] 在本發明的一個實施方式中,提供了在時間序列中進行搜索的方法,包括:響應于 接收到搜索請求,返回候選列表以作為搜索結果,其中候選列表是基于本發明的方法中的 候選列表。
[0010] 在本發明的一個實施方式中,提供了一種用于在時間序列中進行搜索的裝置,包 括:搜索模塊,配置用于響應于接收到搜索請求,返回候選列表以作為搜索結果,其中所述 候選列表是根據本發明所述的裝置中的候選模塊。
[0011] 采用本發明所述的方法和裝置,可以大大減少搜索期間的計算復雜度,進而實現 高效的搜索。
【附圖說明】
[0012] 通過結合附圖對本公開示例性實施方式進行更詳細的描述,本公開的上述以及其 他目的、特征和優勢將變得更加明顯,其中,在本公開示例性實施方式中,相同的參考標號 通常代表相同部件。
[0013] 圖1示意性示出了適于用來實現本發明實施方式的示例性計算機系統/服務器12 的框圖;
[0014] 圖2示意性示出了在時間序列數據庫中進行搜索的示意圖;
[0015] 圖3示意性示出了根據本發明一個實施方式的用于處理時間序列的技術方案的 架構圖;
[0016] 圖4示意性示出了根據本發明一個實施方式的用于處理時間序列的方法的流程 圖;
[0017] 圖5示意性示出了根據本發明一個實施方式的候選列表中的節點的示意圖;
[0018] 圖6示意性示出了根據本發明一個實施方式的更新候選列表的方法的流程圖;
[0019] 圖7示意性示出了根據本發明一個實施方式的劃分窗口的示意圖;以及
[0020] 圖8示意性示出了根據本發明一個實施方式的用于處理時間序列的裝置的框圖。
【具體實施方式】
[0021] 下面將參照附圖更詳細地描述本公開的優選實施方式。雖然附圖中顯示了本公開 的優選實施方式,然而應該理解,可以以各種形式實現本公開而不應被這里闡述的實施方 式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠將本公開的 范圍完整地傳達給本領域的技術人員。
[0022] 圖1示出了適于用來實現本發明實施方式的示例性計算機系統/服務器12的框 圖。圖1顯示的計算機系統/服務器12僅僅是一個示例,不應對本發明實施方式的功能和 使用范圍帶來任何限制。
[0023] 如圖1所示,計算機系統/服務器12以通用計算設備的形式表現。計算機系統 /服務器12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統存儲器 28,連接不同系統組件(包括系統存儲器28和處理單元16)的總線18。
[0024] 總線18表示幾類總線結構中的一種或多種,包括存儲器總線或者存儲器控制器, 外圍總線,圖形加速端口,處理器或者使用多種總線結構中的任意總線結構的局域總線。舉 例來說,這些體系結構包括但不限于工業標準體系結構(ISA)總線,微通道體系結構(MAC) 總線,增強型ISA總線、視頻電子標準協會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0025] 計算機系統/服務器12典型地包括多種計算機系統可讀介質。這些介質可以是 任何能夠被計算機系統/服務器12訪問的可用介質,包括易失性和非易失性介質,可移動 的和不可移動的介質。
[0026] 系統存儲器28可以包括易失性存儲器形式的計算機系統可讀介質,例如隨機存 取存儲器(RAM) 30和/或高速緩存存儲器32。計算機系統/服務器12可以進一步包括其 他可移動/不可移動的、易失性/非易失性計算機系統存儲介質。僅作為舉例,存儲系統34 可以用于讀寫不可移動的、非易失性磁介質(圖1未顯示,通常稱為"硬盤驅動器")。盡管 圖1中未示出,可以提供用于對可移動非易失性磁盤(例如"軟盤")讀寫的磁盤驅動器, 以及對可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其他光介質)讀寫的光盤驅動器。 在這些情況下,每個驅動器可以通過一個或者多個數據介質接口與總線18相連。存儲器28 可以包括至少一個程序產品,該程序產品具有一組(例如至少一個)程序模塊,這些程序模 塊被配置以執行本發明各實施方式的功能。
[0027] 具有一組(至少一個)程序模塊42的程序/實用工具40,可以存儲在例如存儲器 28中,這樣的程序模塊42包括--但不限于--操作系統、一個或者多個應用程序、其他 程序模塊以及程序數據,這些示例中的每一個或某種組合中可能包括網絡環境的實現。程 序模塊42通常執行本發明所描述的實施方式中的功能和/或方法。
[0028] 計算機系統/服務器12也可以與一個或多個外部設備14 (例如鍵盤、指向設備、 顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機系統/服務器12交互的 設備通信,和/或與使得該計算機系統/服務器12能與一個或多個其他計算設備進行通信 的任何設備(例如網卡,調制解調器等等)通信。這種通信可以通過輸入/輸出(I/O)接 口 22進行。并且,計算機系統/服務器12還可以通過網絡適配器20與一個或者多個網絡 (例如局域網(LAN),廣域網(WAN)和/或公共網絡,例如因特網)通信。如圖所示,網絡適 配器20通過總線18與計算機系統/服務器12的其他模塊通信。應當明白,盡管圖中未示 出,可以結合計算機系統/服務器12使用其他硬件和/或軟件模塊,包括但不限于:微代 碼、設備驅動器、冗余處理單元、外部磁盤驅動陣列、RAID系統、磁帶驅動器以及數據備份存 儲系統等。
[0029] 圖2示意性示出了在時間序列數據庫中進行搜索的示意圖200。圖2示出了時間 序列數據庫中的一個時間序列220,該時間序列220表示