[發(fā)明專利]基于LSM-Tree的壓縮日志緩存方法及裝置有效
| 申請?zhí)枺?/td> | 202010589115.4 | 申請日: | 2020-06-24 |
| 公開(公告)號: | CN111737261B | 公開(公告)日: | 2023-09-22 |
| 發(fā)明(設(shè)計(jì))人: | 賈智平;黃克誠;劉珂;吳海偉 | 申請(專利權(quán))人: | 山東大學(xué);國網(wǎng)江蘇省電力有限公司;國家電網(wǎng)有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/174 |
| 代理公司: | 濟(jì)南圣達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 37221 | 代理人: | 李琳 |
| 地址: | 266237 *** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 lsm tree 壓縮 日志 緩存 方法 裝置 | ||
1.一種基于LSM-Tree的壓縮日志緩存方法,其特征在于,包括:
當(dāng)一次壓縮被觸發(fā)且挑選出目標(biāo)層的有序表和下一層的重疊有序表時(shí),將其以有序表為單位加入到對應(yīng)層預(yù)設(shè)的緩存區(qū)中;當(dāng)緩存區(qū)的數(shù)據(jù)到達(dá)預(yù)設(shè)閾值時(shí),進(jìn)入下一步;
挑選緩存區(qū)的有序表作為壓縮過程的輸入進(jìn)行多路并歸操作,輸出的有序表作為寫入磁盤的數(shù)據(jù)層成員,回收緩存區(qū)剩余的有序表;
在有序表被加入緩存區(qū)的同時(shí),生成對應(yīng)的存儲(chǔ)在內(nèi)存Log單元中的所述有序表的元信息;
所述Log單元在內(nèi)存中設(shè)置,用于維護(hù)緩存區(qū)內(nèi)有序表的元信息以及維護(hù)其有序性;
所述元信息為LevelDB原有的元信息和權(quán)重信息;所述LevelDB原有的元信息包括文件編號、引用數(shù)和關(guān)鍵字范圍;
所述挑選緩存區(qū)的有序表作為壓縮過程的輸入的具體方法步驟包括:
當(dāng)?shù)趇層對應(yīng)的緩存區(qū)的數(shù)據(jù)到達(dá)預(yù)設(shè)閾值時(shí),優(yōu)先選擇第i-1層內(nèi)的有序表進(jìn)行篩選,選擇第i-1層內(nèi)綜合權(quán)重最大的有序表,并根據(jù)所述有序表選出第i層與當(dāng)前有序表關(guān)鍵字重疊的表,將所有選中的有序表權(quán)重相加,得出本次壓縮的第一備選權(quán)重;
第i層權(quán)重最大的有序表和第i+1層關(guān)鍵字范圍與其重合的有序表的總權(quán)重作為第二備選權(quán)重;
比較第一備選權(quán)重與第二備選權(quán)重,選擇更大的權(quán)重作為本次壓縮的權(quán)重,相應(yīng)的有序表作為多路歸并操作的輸入;
或者,壓縮權(quán)重的計(jì)算方式還包括根據(jù)用戶數(shù)據(jù)流調(diào)整、根據(jù)不同的需求策略調(diào)整和根據(jù)寫操作設(shè)置。
2.如權(quán)利要求1所述的一種基于LSM-Tree的壓縮日志緩存方法,其特征在于,在每層數(shù)據(jù)層中均預(yù)設(shè)一個(gè)緩存區(qū)和所述緩存區(qū)的閾值,各數(shù)據(jù)層的緩存區(qū)的預(yù)設(shè)閾值與相應(yīng)數(shù)據(jù)層的大小成固定比例。
3.如權(quán)利要求1所述的一種基于LSM-Tree的壓縮日志緩存方法,其特征在于,所述Log單元以二維數(shù)組的方式實(shí)現(xiàn),所述Log單元每一維代表一層數(shù)據(jù)層的緩存區(qū)有序表元數(shù)據(jù);
讀操作訪問所述Log單元時(shí)依次對每層內(nèi)的有序表元數(shù)據(jù)進(jìn)行判斷,得出目標(biāo)有序表進(jìn)行實(shí)際讀取。
4.如權(quán)利要求1所述的一種基于LSM-Tree的壓縮日志緩存方法,其特征在于,所述被挑選為緩存區(qū)的有序表作為壓縮過程的輸入的概率與所述權(quán)重信息成正比。
5.如權(quán)利要求1所述的一種基于LSM-Tree的壓縮日志緩存方法,其特征在于,對讀操作邏輯進(jìn)行優(yōu)化,優(yōu)化后的基于分層日志緩存的LSM-tree讀取次序?yàn)閮?nèi)存寫緩存、內(nèi)存只讀緩存、Log單元和tablecache、blockcache、磁盤內(nèi)具體的數(shù)據(jù)塊。
6.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中存儲(chǔ)有多條指令,其特征在于,所述指令適于由終端設(shè)備的處理器加載并執(zhí)行如權(quán)利要求1-5任一項(xiàng)所述的一種基于LSM-Tree的壓縮日志緩存方法。
7.一種終端設(shè)備,其包括處理器和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),處理器用于實(shí)現(xiàn)各指令;計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)用于存儲(chǔ)多條指令,其特征在于,所述指令適于由處理器加載并執(zhí)行如權(quán)利要求1-5任一項(xiàng)所述的一種基于LSM-Tree的壓縮日志緩存方法。
8.一種基于LSM-Tree的壓縮日志緩存裝置,其特征在于,實(shí)現(xiàn)如權(quán)利要求1-5任一項(xiàng)所述的一種基于LSM-Tree的壓縮日志緩存方法,包括:依次連接的有序表轉(zhuǎn)移模塊和有序表壓縮模塊;
所述有序表轉(zhuǎn)移模塊,用于當(dāng)一次壓縮被觸發(fā)且挑選出目標(biāo)層的有序表和下一層的重疊有序表時(shí),將其以有序表為單位加入到對應(yīng)層預(yù)設(shè)的緩存區(qū)中;
所述有序表壓縮模塊,用于當(dāng)緩存區(qū)的數(shù)據(jù)到達(dá)預(yù)設(shè)閾值時(shí),挑選緩存區(qū)的有序表作為壓縮過程的輸入進(jìn)行多路并歸操作,輸出的有序表作為寫入磁盤的數(shù)據(jù)層成員,回收緩存區(qū)剩余的有序表。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于山東大學(xué);國網(wǎng)江蘇省電力有限公司;國家電網(wǎng)有限公司,未經(jīng)山東大學(xué);國網(wǎng)江蘇省電力有限公司;國家電網(wǎng)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010589115.4/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 圓形極化無輻射介質(zhì)波導(dǎo)
- 一種固體氧化物燃料電池電極及其制備工藝
- LSM樹的建立方法、LSM樹的數(shù)據(jù)讀取方法和服務(wù)器
- 一種LSM樹的優(yōu)化方法、裝置及計(jì)算機(jī)設(shè)備
- 一種數(shù)據(jù)存儲(chǔ)方法、裝置及設(shè)備
- 基于LSM樹的Oracle數(shù)據(jù)庫數(shù)據(jù)處理方法
- 一種LSM樹數(shù)據(jù)處理方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)介質(zhì)
- 用于液體狀態(tài)機(jī)的神經(jīng)網(wǎng)絡(luò)架構(gòu)自動(dòng)搜索方法、系統(tǒng)及介質(zhì)
- 一種硬件感知的液體狀態(tài)機(jī)網(wǎng)絡(luò)生成方法及系統(tǒng)
- 一種基于LSM來實(shí)現(xiàn)動(dòng)態(tài)的系統(tǒng)調(diào)用劫持的方法
- 用于提高數(shù)據(jù)庫系統(tǒng)中的高速緩存性能的壓縮方案
- 可信執(zhí)行環(huán)境可擴(kuò)展計(jì)算裝置接口
- 一種基于LSM-Tree結(jié)構(gòu)的日志文件系統(tǒng)的構(gòu)建方法
- 一種任務(wù)數(shù)據(jù)同步的方法和系統(tǒng)
- 使用潔凈室供應(yīng)來尋址可信執(zhí)行環(huán)境
- 計(jì)算系統(tǒng),傳送受保護(hù)數(shù)據(jù)的方法和可讀存儲(chǔ)介質(zhì)
- 一種Tag-Tree編碼的實(shí)現(xiàn)系統(tǒng)及方法
- 基于進(jìn)化R-tree的知識(shí)圖譜存儲(chǔ)和相似性檢索方法
- 一種紅外小目標(biāo)檢測跟蹤及識(shí)別方法
- 基于格網(wǎng)索引和球樹的傾斜模型和激光點(diǎn)云融合方法





