本發明涉及計算機實時任務調度,具體為一種面向硬實時任務調度的多維數據索引方法及相關設備。
背景技術:
1、計算機中的任務調度與遷移一般由任務調度系統實現。面向嵌入式應用中,大規模、線性的數據處理負載和硬實時的數據處理需求,任務調度系統需要重新設計。傳統任務調度原則面向系統整體性能、功耗等因素,以資源余量、時間信息與任務優先級作為調度原則進行。當任務調度過程較慢時,可能造成數據處理不及時,超出應用場景對數據處理的時間限制,產生災難性后果。
2、現有技術的針對任務調度的硬實時保障需求,采用數據驅動的任務調度系統設計。在調度任務時,首先對系統待處理數據對象進行遍歷,確定數據優先級順序,再按照數據優先級由高到低,依次對數據對象進行索引,關聯出對應的任務清單以及任務相關的其它數據塊信息,最后按照數據對象優先級由高到低的原則依次執行對應的任務。
3、在以上任務調度過程中,需要頻繁檢索所管理的大量數據對象,其核心是實現對大量數據對象的緩存與高效檢索。數據對象與任務的關系一般采用數據庫維護。數據庫技術是信息系統的核心技術之一,主要研究如何組織和存儲數據,如何高效地獲取和處理數據。其中,數據的索引結構與方法直接影響數據獲取效率。
4、索引效率與數據本身的分布有較大關系。待處理數據維度較低時,可以采用鏈表、數組、哈希表等基本數據結構進行管理,當數據維度升高到一定閾值(例如:?6維及以上)后,如何高效地索引和管理數據庫成為影響實時性的主要問題。
5、針對多維數據的管理,目前主流技術是基于r-樹、sr-樹、k-d-樹、k-d-b-樹等多維索引結構。這些索引結構的基本原理是數據剖分,即根據數據分布,把整個數據空間剖分為多個小塊,然后組織為一個從粗到細的樹狀結構用于檢索。數據剖分的好處是理論上具備構造平衡樹的條件,因此在優化條件下樹的深度較淺,檢索性能好。但是,由于構造平衡樹需要全局數據分布信息,數據的插入與刪除算法復雜度極高,無法在真實應用場景使用。真實應用的插入刪除算法采用動態規劃優化,不能保證獲得全局最優解,因此有可能導致索引結構退化。索引結構退化導致系統的最差性能無法預測,系統資源需求的上界無法估計,因此無法應用于較強實時性要求的嵌入式應用中。同時,基于動態規劃的插入刪除算法計算量大,對嵌入式應用場景也不友好。
技術實現思路
1、為了克服上述現有技術存在的缺陷,本發明的目的在于提供一種面向硬實時任務調度的多維數據索引方法及相關設備,以解決現有技術中如何提高任務調度的實時性需求的技術問題。
2、本發明是通過以下技術方案來實現:
3、第一方面,本發明提供了一種面向硬實時任務調度的多維數據索引方法,包括:
4、接收應用請求中的任務清單與數據隊列;
5、對數據隊列中的數據對象進行優先級排序;
6、依次對排序后的數據對象進行數據索引,將索引后的數據對象與所接收的任務清單進行關聯,完成多維數據索引工作。
7、優選的,接收應用請求中的任務清單與數據隊列的步驟中,所述數據隊列的數據對象包括但不限于傳感器類型、優先級、時間范圍、空間位置以及目標顏色數值的多維語義信息。
8、優選的,對數據隊列中的數據對象進行優先級排序的步驟中,按照數據對象為x_1、數據對象為x_2至數據對象為x_m的順序優先級從高至低排列設置。
9、優選的,依次對排序后的數據對象進行數據索引的步驟中,采用空間剖分與trie結構相結合的方式對排序后的數據對象進行數據索引。
10、進一步的,空間剖分采用格結構進行空間剖分,所述trie結構基于定制化trie樹結構進行數據索引,并在添加新數據對象、刪除已有數據對象的過程中不發生結構退化,用于保證索引操作時間上界可預測;在trie結構下,索引、插入、刪除操作的最差時間復雜度均為o(n),其中n為數據的維度大小,同時等于trie結構的級數。
11、更進一步的,采用trie結構進行索引時,每一級代表空間的一個維度方向,每個致密格空間包腔為一個trie結構索引的末端節點,并指向對應的任務清單,并通過壓縮算法對trie結構進行壓縮,用于降低構建trie所需的存儲空間。
12、更進一步的,將索引后的數據對象與所接收的任務清單進行關聯的步驟中,每個致密格空間包腔單獨關聯一個任務清單,當多個致密格空間包腔對應相同的任務清單時,則對相同任務清單的相鄰致密格空間包腔進行合并,并相應調整trie結構的映射關系。
13、第二方面,本發明還提供了一種面向硬實時任務調度的多維數據索引系統,包括:
14、數據接收模塊,用于接收應用請求中的任務清單與數據隊列;
15、數據排序模塊,用于對數據隊列中的數據對象進行優先級排序;
16、數據索引模塊,用于依次對排序后的數據對象進行數據索引,將索引后的數據對象與所接收的任務清單進行關聯,完成多維數據索引工作。
17、第三方面,本發明還提供了一種移動終端,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述所述面向硬實時任務調度的多維數據索引方法的步驟。
18、第四方面,本發明還提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,所述計算機程序被處理器執行時實現如上述所述面向硬實時任務調度的多維數據索引方法的步驟。
19、與現有技術相比,本發明具有以下有益的技術效果:
20、本發明提供了一種面向硬實時任務調度的多維數據索引方法,通過接收應用請求中的任務清單與數據隊列,對數據隊列中的數據對象進行優先級排序;依次對排序后的數據對象進行數據索引,關聯任務清單。本發明能夠確保高優先級數據得到及時處理,滿足了數據處理應用中,任務調度過程的硬實時需求。
1.一種面向硬實時任務調度的多維數據索引方法,其特征在于,包括:
2.根據權利要求1所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,所述接收應用請求中的任務清單與數據隊列的步驟中,所述數據隊列的數據對象包括但不限于傳感器類型、優先級、時間范圍、空間位置以及目標顏色數值的多維語義信息。
3.根據權利要求1所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,所述對數據隊列中的數據對象進行優先級排序的步驟中,按照數據對象為x_1、數據對象為x_2至數據對象為x_m的順序優先級從高至低排列設置。
4.根據權利要求1所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,所述依次對排序后的數據對象進行數據索引的步驟中,采用空間剖分與trie結構相結合的方式對排序后的數據對象進行數據索引。
5.根據權利要求4所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,所述空間剖分采用格結構進行空間剖分,所述trie結構基于定制化trie樹結構進行數據索引,并在添加新數據對象、刪除已有數據對象的過程中不發生結構退化,用于保證索引操作時間上界可預測;在trie結構下,索引、插入、刪除操作的最差時間復雜度均為o(n),其中n為數據的維度大小,同時等于trie結構的級數。
6.根據權利要求5所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,采用trie結構進行索引時,每一級代表空間的一個維度方向,每個致密格空間包腔為一個trie結構索引的末端節點,并指向對應的任務清單,并通過壓縮算法對trie結構進行壓縮,用于降低構建trie所需的存儲空間。
7.根據權利要求6所述的一種面向硬實時任務調度的多維數據索引方法,其特征在于,所述將索引后的數據對象與所接收的任務清單進行關聯的步驟中,每個致密格空間包腔單獨關聯一個任務清單,當多個致密格空間包腔對應相同的任務清單時,則對相同任務清單的相鄰致密格空間包腔進行合并,并相應調整trie結構的映射關系。
8.一種面向硬實時任務調度的多維數據索引系統,其特征在于,包括:
9.一種移動終端,包括存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現如權利要求1-7任一項所述面向硬實時任務調度的多維數據索引方法的步驟。
10.一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1-7任一項所述面向硬實時任務調度的多維數據索引方法的步驟。