[發明專利]一種壓縮敏感的數據庫文件存儲方法及系統有效
| 申請號: | 202011476834.1 | 申請日: | 2020-12-15 |
| 公開(公告)號: | CN112579597B | 公開(公告)日: | 2023-03-21 |
| 發明(設計)人: | 張瓊 | 申請(專利權)人: | 西安郵電大學 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22 |
| 代理公司: | 西安通大專利代理有限責任公司 61200 | 代理人: | 張海平 |
| 地址: | 710121 陜西*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 壓縮 敏感 數據庫文件 存儲 方法 系統 | ||
本發明公開了一種壓縮敏感的數據庫文件存儲方法及系統,存儲方法包括以下步驟:步驟一、統計數據庫數據在行方向和列方向數據的重復度;步驟二、選擇重復度高的方向進行數據存儲。存儲系統包括:重復度統計模塊,用于統計數據庫數據在行方向和列方向數據的重復度;以及存儲方向選擇及存儲模塊,用于選擇重復度高的方向進行數據存儲。本發明能夠提高數據庫文件的數據壓縮比,降低數據存儲空間。
技術領域
本發明屬于計算機數據庫領域,具體涉及一種壓縮敏感的數據庫文件存儲方法及系統。
背景技術
物聯網技術背景下眾多設備產生的海量數據存儲為數據庫系統造成了巨大壓力,如何有效存儲這些數據是計算機數據庫領域一直研究的問題。海量的數據存儲對數據的存儲設備容量提出了極高的要求,為了減少數據存儲空間,現有數據庫開始采用數據無損壓縮技術對數據進行壓縮以減少數據存儲空間。在ORC(Optimized Row Columnar)文件存儲格式中,通常采用列優先的方式對數據進行存儲。列存儲的基本思想是由于同一個字段的數據類型相同,因而出現重復數據的概率更大,更有利于壓縮。但是在物聯網背景下,數據庫中存儲的字段類型絕大多數為整型數據或者浮點型數據,采用列式存儲不一定能夠提高數據重復的概率。物聯網背景下,數據庫中各個字段的數據之間存在較大的關聯性,例如辦公區環境監測應用中,在非工作時間,絕大多數傳感器的數據都處于平穩狀態;而在工作時間,傳感器數據開始變化。在這種情況下,數據行之間的重復率會增大,行優先存儲反而更加有利于壓縮。
發明內容
本發明目的在于針對上述現有技術中海量數據存儲占用存儲空間較多的問題,提供一種壓縮敏感的數據庫文件存儲方法及系統,提高數據庫文件的數據壓縮比,降低數據存儲空間。
為了實現上述目的,本發明有如下的技術方案:
一種壓縮敏感的數據庫文件存儲方法,包括以下步驟:
步驟一、統計數據庫數據在行方向和列方向數據的重復度;
步驟二、選擇重復度高的方向進行數據存儲。
作為本發明數據庫文件存儲方法的一種優選方案,步驟一將待存儲的數據按照行列在內存中構成二維矩陣,按照預定義的塊大小從左到右、從上到下進行切塊。
作為本發明數據庫文件存儲方法的一種優選方案,每一個塊內數據按照行優先遍歷一次,統計行數據變化次數,如果上一個數與當前數不同,則變化次數加一。
作為本發明數據庫文件存儲方法的一種優選方案,每一個塊內數據按照列優先遍歷一次,統計列數據變化次數,如果上一個數與當前數不同,則變化次數加一。
作為本發明數據庫文件存儲方法的一種優選方案,步驟二對比行數據變化次數和列數據變化次數,如果行數據變化次數少,則按照行優先的方式對數據進行存儲;如果列數據變化次數少,則按照列優先的方式對數據進行存儲。
作為本發明數據庫文件存儲方法的一種優選方案,動態統計數據庫數據在行方向和列方向數據的重復度,并且動態選擇重復度高的方向進行數據存儲。
本發明還提供一種壓縮敏感的數據庫文件存儲系統,包括:
重復度統計模塊,用于統計數據庫數據在行方向和列方向數據的重復度;
存儲方向選擇及存儲模塊,用于選擇重復度高的方向進行數據存儲。
相較于現有技術,本發明具有如下的有益效果:通過統計數據庫存入數據的行方向的重復度和列方向的重復度,選擇重復度高的方向存儲數據庫數據,使數據在后續壓縮過程中壓縮比更高,使得所存儲數據更有利于后續壓縮,從而提高數據庫文件的數據壓縮比,降低數據存儲空間。與ORC比較,本發明壓縮敏感的數據庫文件存儲方法壓縮比更高。
附圖說明
圖1實施例1行存儲更有利于壓縮的對比示意圖;
- 上一篇:車輛信息處理方法、裝置、設備和存儲介質
- 下一篇:一種船舶停靠用拋錨裝置





