System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及數據壓縮處理的,更具體地說,涉及一種時序數據的自適應壓縮處理方法及裝置。
技術介紹
1、時序數據是按照時間順序排列的數據序列,通常具有高頻率采樣和連續性的特點。時序數據可能包含大量冗余信息、周期性模式、漸變趨勢等。
2、在時序數據處理和存儲領域,時序數據壓縮技術的出現是為了解決大規模時序數據的存儲和傳輸問題。
3、但是,現有通過時序數據壓縮技術對時序數據進行壓縮的過程中,面對不同類型的時序數據,只通過某些固定的方式,如無損壓縮方式對時序數據進行壓縮,并不是所有類型的時序數據都適合該壓縮算法,導致對時序數據壓縮的適應性差,也降低了壓縮率。
4、因此,如何提高對時序數據壓縮的適應性和壓縮率,是本申請亟需解決的問題。
技術實現思路
1、有鑒于此,本申請公開了一種時序數據的自適應壓縮處理方法及裝置,旨在提高對時序數據壓縮的適應性和壓縮率。
2、為了實現上述目的,其公開的技術方案如下:
3、本申請第一方面公開了一種時序數據的自適應壓縮處理方法,所述方法包括:
4、獲取待壓縮的時序數據,并將所述時序數據寫入內存;
5、在內存中對所述時序數據進行預處理,得到數據集合;
6、確定所述數據集合中時序數據的實際狀態,并根據所述實際狀態選擇對應的壓縮方式;所述實際狀態由數據類型和數據分布方式確定;
7、在所述內存中根據所述壓縮方式對所述時序數據進行壓縮,得到多個數據塊;
8、
9、通過預設壓縮算法對所述目標數據塊進行壓縮,得到時序數據文件。
10、優選的,所述在內存中對所述時序數據進行預處理,得到數據集合,包括:
11、在內存中通過滑動窗口對所述時序數據進行預處理,得到預處理后的時序數據;所述預處理至少包括去重操作和排序操作;
12、根據所述預處理后的時序數據形成數據集合。
13、優選的,所述確定所述數據集合中時序數據的實際狀態,并根據所述實際狀態選擇對應的壓縮方式,包括:
14、確定所述數據集合中時序數據的數據類型;所述數據類型至少包括時間數據類型、整型數據類型、浮點型數據類型、布爾型數據類型、字符串類型或數組類型;
15、若所述時序數據的數據類型為所述時間數據類型,確定時間數據類型的時序數據所對應的數據分布方式,根據所述數據分布方式選擇對應的時間數據壓縮方式;所述數據分布方式至少包括等差數列分布方式和非等差數列分布方式;
16、若所述時序數據的數據類型為所述整型數據類型,確定整型數據類型的時序數據所對應的數據分布方式,根據所述數據分布方式選擇對應的整型數據壓縮方式;
17、若所述時序數據的數據類型為所述浮點型數據類型,根據浮點型數據類型選擇對應的數據壓縮方式;
18、若所述時序數據的數據類型為所述布爾型數據類型,根據布爾型數據類型選擇對應的數據壓縮方式;
19、若所述時序數據的數據類型為所述字符串類型或所述數組類型,選擇字符串壓縮方式。
20、優選的,所述預設合并方式包括第一合并方式和第二合并方式,所述按照預設合并方式將符合預設合并條件的多個數據塊進行合并處理,得到目標數據塊,包括:
21、從多個數據塊中確定各個同一屬性的數據塊;所述同一屬性的數據塊為符合預設合并條件的數據塊;
22、通過所述第一合并方式將各個同一屬性的數據塊在內存中進行合并,并將合并后的數據塊寫入磁盤數據文件;其中,所述第一合并方式由預設時間周期或預設內存數據容量確定;
23、讀取磁盤數據文件中的各個數據塊,并通過所述第二合并方式將磁盤數據文件中的各個數據塊進行合并,得到磁盤文件中的目標數據塊;其中,所述第二合并方式用于確保數據塊的大小一致,無重復數據和無亂序數據。
24、優選的,還包括:
25、當監測到數據讀取應用向時序數據庫發起數據查詢請求時,對所述數據查詢請求進行解析,得到目標屬性編碼、目標屬性對應的查詢數據類型和查詢時間范圍;
26、根據所述目標屬性編碼、所述查詢數據類型和所述查詢時間范圍,確定對應的時序數據庫中的待解壓數據塊;
27、根據待解壓數據塊的壓縮標識位確定對應的解壓方式,并根據所述解壓方式對所述待解壓數據塊進行解壓。
28、本申請第二方面公開了一種時序數據的自適應壓縮處理裝置,所述裝置包括:
29、獲取單元,用于獲取待壓縮的時序數據,并將所述時序數據寫入內存;
30、預處理單元,用于在內存中對所述時序數據進行預處理,得到數據集合;
31、第一確定單元,用于確定所述數據集合中時序數據的實際狀態,并根據所述實際狀態選擇對應的壓縮方式;所述實際狀態由數據類型和數據分布方式確定;
32、第一壓縮單元,用于在所述內存中根據所述壓縮方式對所述時序數據進行壓縮,得到多個數據塊;
33、合并處理單元,用于按照預設合并方式將符合預設合并條件的多個數據塊進行合并處理,得到目標數據塊;所述目標數據塊存儲于磁盤數據文件中;
34、第二壓縮單元,用于通過預設壓縮算法對所述目標數據塊進行壓縮,得到時序數據文件。
35、優選的,所述預處理單元,包括:
36、預處理模塊,用于在內存中通過滑動窗口對所述時序數據進行預處理,得到預處理后的時序數據;所述預處理至少包括去重操作和排序操作;
37、形成模塊,用于根據所述預處理后的時序數據形成數據集合。
38、優選的,所述第一確定單元,包括:
39、第一確定模塊,用于確定所述數據集合中時序數據的數據類型;所述數據類型至少包括時間數據類型、整型數據類型、浮點型數據類型、布爾型數據類型、字符串類型或數組類型;
40、第一確定選擇模塊,用于若所述時序數據的數據類型為所述時間數據類型,確定時間數據類型的時序數據所對應的數據分布方式,根據所述數據分布方式選擇對應的時間數據壓縮方式;所述數據分布方式至少包括等差數列分布方式和非等差數列分布方式;
41、第二確定選擇模塊,用于若所述時序數據的數據類型為所述整型數據類型,確定整型數據類型的時序數據所對應的數據分布方式,根據所述數據分布方式選擇對應的整型數據壓縮方式;
42、第一選擇模塊,用于若所述時序數據的數據類型為所述浮點型數據類型,根據浮點型數據類型選擇對應的數據壓縮方式;
43、第二選擇模塊,用于若所述時序數據的數據類型為所述字符串類型或所述數組類型,選擇字符串壓縮方式;
44、第三選擇模塊,用于若所述時序數據的數據類型為所述字符串類型或所述數組類型,選擇字符串壓縮方式。
45、優選的,預設合并方式包括第一合并方式和第本文檔來自技高網...
【技術保護點】
1.一種時序數據的自適應壓縮處理方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述在內存中對所述時序數據進行預處理,得到數據集合,包括:
3.根據權利要求1所述的方法,其特征在于,所述確定所述數據集合中時序數據的實際狀態,并根據所述實際狀態選擇對應的壓縮方式,包括:
4.根據權利要求1所述的方法,其特征在于,所述預設合并方式包括第一合并方式和第二合并方式,所述按照預設合并方式將符合預設合并條件的多個數據塊進行合并處理,得到目標數據塊,包括:
5.根據權利要求1所述的方法,其特征在于,還包括:
6.一種時序數據的自適應壓縮處理裝置,其特征在于,所述裝置包括:
7.根據權利要求6所述的裝置,其特征在于,所述預處理單元,包括:
8.根據權利要求6所述的裝置,其特征在于,所述第一確定單元,包括:
9.根據權利要求6所述的裝置,其特征在于,預設合并方式包括第一合并方式和第二合并方式,所述合并處理單元,包括:
10.根據權利要求6所述的裝置,其特征在于,還
...【技術特征摘要】
1.一種時序數據的自適應壓縮處理方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述在內存中對所述時序數據進行預處理,得到數據集合,包括:
3.根據權利要求1所述的方法,其特征在于,所述確定所述數據集合中時序數據的實際狀態,并根據所述實際狀態選擇對應的壓縮方式,包括:
4.根據權利要求1所述的方法,其特征在于,所述預設合并方式包括第一合并方式和第二合并方式,所述按照預設合并方式將符合預設合并條件的多個數據塊進行合并處理,得到目標數據...
【專利技術屬性】
技術研發人員:牛冰茹,王飛劍,張幸,姚玉娟,
申請(專利權)人:和利時卡優倍科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。