[發明專利]基于Redis的數據存儲方法、讀取方法及裝置有效
| 申請號: | 201810274998.2 | 申請日: | 2018-03-30 |
| 公開(公告)號: | CN108509592B | 公開(公告)日: | 2022-11-29 |
| 發明(設計)人: | 韋吉云;李曉鵬;張云;楊陽 | 申請(專利權)人: | 貴陽朗瑪信息技術股份有限公司 |
| 主分類號: | G06F16/13 | 分類號: | G06F16/13;G06F16/174 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 550022 貴州省貴陽市貴陽國家高新技術產業*** | 國省代碼: | 貴州;52 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 redis 數據 存儲 方法 讀取 裝置 | ||
本發明屬于數據存儲技術領域,具體涉及到基于Redis的數據存儲方法、讀取方法及裝置。該數據存儲方法包括:設置第Ⅰ單位時間ts的值,并設置該第Ⅰ單位時間內統計數據的最大值;將位圖劃分成m個連續的有一定位寬的數據段;讀取統計數據過程中當前時間的時間戳ct,并根據fn=[(ct?st)/ts]*L+LS+LT,計算得出統計數據過程中當前時間的時間戳ct對應的偏移量fn;根據計算得出的偏移量fn,將統計數據過程中當前時間的時間戳ct對應的當前統計數值v的二進制數據累加到與偏移量fn對應的數據段內的數值上等。該存儲方法可用于對大量統計數據的實時存儲等。
技術領域
本發明屬于數據存儲技術領域,具體涉及到基于Redis的數據存儲方法、讀取方法及裝置。
背景技術
現有技術中,對統計數據的存儲采用的是單文件存儲或者多文件存儲。使用單文件存儲:文件占用空間增長速度快,海量數據檢索不方便,Map/Reduce操作也麻煩;使用多文件存儲:需要對文件進行分割,文件量過大。無論是單文件存儲還是多文件存儲,都存在文件占用空間較大、讀取或檢索數據不方便等問題。
發明內容
為了解決上述技術問題,本發明提供基于Redis的數據存儲方法、讀取方法及裝置,該存儲方法可用于對大量統計數據的實時存儲等,其占用存儲空間小、存儲位置與時間相關聯、存儲效率高、更方便后續的讀取。
本發明提供如下技術方案:
一方面,本發明實施例中提供一種基于Redis的數據存儲方法,其包括以下步驟:
設置第Ⅰ單位時間ts的值,并設置該第Ⅰ單位時間內統計數據的最大值;
將位圖劃分成m個連續的有一定位寬的數據段;m為大于或等于3的整數;其中,第一個數據段的位寬為LS,第二個數據段的位寬為LT;第一個數據段的偏移量f1為0,第二個數據段的偏移量f2為LS,第n個數據段的偏移量fn=[(ct-st)/ts]*L+LS+LT;其中,L為第三個及其之后的數據段的位寬,且L為大于或等于1的整數,且位寬為L的數據段可存取的最大數據大于或等于所述第Ⅰ單位時間內統計數據的最大值;ct為統計數據過程中當前時間的時間戳,且ct是隨時間變化而變化的,st為統計數據開始時間的時間戳,ct≥st,ct、st、ts的時間單位一致,且(ct-st)/ts為向下整除運算,n為大于或等于3的整數;
讀取統計數據開始時間的時間戳st,并將統計開始時間的時間戳st的二進制數據存儲到與偏移量f1對應的數據段內;
讀取統計數據過程中當前時間的時間戳ct,并根據fn=[(ct-st)/ts]*L+LS+LT,計算得出統計數據過程中當前時間的時間戳ct對應的偏移量fn;
根據計算得出的偏移量fn,將統計數據過程中當前時間的時間戳ct對應的當前統計數值v的二進制數據累加到與偏移量fn對應的數據段內的數值上;
將統計數據過程中當前時間的時間戳ct對應的當前統計數值v的二進制數據累加到與偏移量f2對應的數據段內的數值上。
本發明還提供一種基于Redis的數據讀取方法,其包括以下步驟:
S101:確定位圖中需要提取的數據所處的時間的時間戳at;
S102:判斷at是否小于st或者at是否大于所述位圖中偏移量最大的數據段對應的時間,st為統計數據開始時間的時間戳;
S103:如果at小于st或者at大于所述位圖中偏移量最大的數據段對應的時間,則讀取的值為0;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于貴陽朗瑪信息技術股份有限公司,未經貴陽朗瑪信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810274998.2/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





