[發(fā)明專(zhuān)利]鍵值KV存儲(chǔ)方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201611262977.6 | 申請(qǐng)日: | 2016-12-30 |
| 公開(kāi)(公告)號(hào): | CN107066498B | 公開(kāi)(公告)日: | 2020-04-14 |
| 發(fā)明(設(shè)計(jì))人: | 黃飛騰;任波;高波 | 申請(qǐng)(專(zhuān)利權(quán))人: | 成都華為技術(shù)有限公司 |
| 主分類(lèi)號(hào): | G06F16/22 | 分類(lèi)號(hào): | G06F16/22 |
| 代理公司: | 北京三高永信知識(shí)產(chǎn)權(quán)代理有限責(zé)任公司 11138 | 代理人: | 羅振安 |
| 地址: | 610041 四川省成*** | 國(guó)省代碼: | 四川;51 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 鍵值 kv 存儲(chǔ) 方法 裝置 | ||
1.一種鍵值KV存儲(chǔ)方法,其特征在于,所述方法包括:
在存儲(chǔ)目標(biāo)鍵值KV時(shí),存儲(chǔ)所述目標(biāo)鍵值KV中的值Value至存儲(chǔ)型內(nèi)存SCM中的不定長(zhǎng)頁(yè)面;
更新主索引和映射表,所述主索引中包括已存儲(chǔ)的KV中的Key和邏輯地址之間的映射關(guān)系;所述映射表中包括已存儲(chǔ)的KV的邏輯地址和物理地址之間的映射關(guān)系;
在滿足第一合并條件時(shí),合并不定長(zhǎng)頁(yè)面中的Value至所述SCM中的定長(zhǎng)頁(yè)面;更新所述映射表;
在滿足第二合并條件時(shí),合并定長(zhǎng)頁(yè)面中的Value至固態(tài)硬盤(pán)SSD中的塊頁(yè)面;
再次更新所述映射表。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述更新映射表,包括:
獲取所述目標(biāo)鍵值KV的目標(biāo)邏輯地址以及在所述不定長(zhǎng)頁(yè)面中的目標(biāo)物理地址;
獲取所述映射表中所述目標(biāo)邏輯地址所對(duì)應(yīng)的初始物理地址;
生成物理地址鏈,所述物理地址鏈中包括所述目標(biāo)物理地址以及設(shè)置在所述目標(biāo)物理地址的預(yù)設(shè)位置處的指示信息,所述預(yù)設(shè)位置包括所述目標(biāo)物理地址之前或者之后的位置,所述指示信息用于指向所述初始物理地址;
將所述映射表中的所述初始物理地址更新為所述物理地址鏈。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述在滿足第一合并條件時(shí),合并不定長(zhǎng)頁(yè)面中的Value至所述SCM中的定長(zhǎng)頁(yè)面,包括:
在所述物理地址鏈滿足預(yù)設(shè)條件時(shí),將所述物理地址鏈所指向的物理地址中的Value合并至所述SCM中的定長(zhǎng)頁(yè)面;所述預(yù)設(shè)條件包括:所述物理地址鏈的長(zhǎng)度達(dá)到預(yù)設(shè)長(zhǎng)度,或者,所述物理地址鏈所對(duì)應(yīng)的不定長(zhǎng)頁(yè)面的個(gè)數(shù)達(dá)到預(yù)設(shè)個(gè)數(shù)。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述獲取所述映射表中所述目標(biāo)邏輯地址所對(duì)應(yīng)的初始物理地址,包括:
若所述映射表中不存在所述目標(biāo)邏輯地址所對(duì)應(yīng)的物理地址,則將所述初始物理地址確定為空。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在滿足第一合并條件時(shí),合并不定長(zhǎng)頁(yè)面中的Value至所述SCM中的定長(zhǎng)頁(yè)面,包括:
在所述SCM中不定長(zhǎng)頁(yè)面的剩余資源低于第一閾值時(shí),合并不定長(zhǎng)頁(yè)面中的Value至所述SCM中的定長(zhǎng)頁(yè)面。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在滿足第二合并條件時(shí),合并定長(zhǎng)頁(yè)面中的Value至SSD中的塊頁(yè)面,包括:
在相鄰的定長(zhǎng)頁(yè)面的個(gè)數(shù)達(dá)到預(yù)設(shè)個(gè)數(shù)時(shí),合并所述預(yù)設(shè)個(gè)數(shù)的定長(zhǎng)頁(yè)面中的Value至所述塊頁(yè)面;所述相鄰的定長(zhǎng)頁(yè)面是指存儲(chǔ)的Value所對(duì)應(yīng)的Key的取值范圍連續(xù)的頁(yè)面;
或者,
在所述SCM中的定長(zhǎng)頁(yè)面的空閑資源低于第二閾值時(shí),合并所述定長(zhǎng)頁(yè)面中的Value至所述塊頁(yè)面。
7.根據(jù)權(quán)利要求1至6任一所述的方法,其特征在于,所述方法還包括:
在存儲(chǔ)所述目標(biāo)鍵值KV中的Value至所述不定長(zhǎng)頁(yè)面之后,更新臨時(shí)索引,所述臨時(shí)索引中包括已存儲(chǔ)的KV中的Key和Value在不定長(zhǎng)頁(yè)面中的物理地址之間的映射關(guān)系;
所述更新主索引和映射表,包括:
在提交所述目標(biāo)KV之后,根據(jù)所述臨時(shí)索引更新所述主索引和所述映射表。
8.一種鍵值KV存儲(chǔ)裝置,其特征在于,所述裝置包括:
存儲(chǔ)單元,用于在存儲(chǔ)目標(biāo)鍵值KV時(shí),存儲(chǔ)所述目標(biāo)鍵值KV中的值Value至存儲(chǔ)型內(nèi)存SCM中的不定長(zhǎng)頁(yè)面;
更新單元,用于更新主索引和映射表,所述主索引中包括已存儲(chǔ)的KV中的Key和邏輯地址之間的映射關(guān)系;所述映射表中包括已存儲(chǔ)的KV的邏輯地址和物理地址之間的映射關(guān)系;
合并單元,用于在滿足第一合并條件時(shí),合并不定長(zhǎng)頁(yè)面中的Value至所述SCM中的定長(zhǎng)頁(yè)面;
所述更新單元,還用于更新所述映射表;
所述合并單元,還用于在滿足第二合并條件時(shí),合并定長(zhǎng)頁(yè)面中的Value至固態(tài)硬盤(pán)SSD中的塊頁(yè)面;
所述更新單元,還用于再次更新所述映射表。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于成都華為技術(shù)有限公司,未經(jīng)成都華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611262977.6/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 上一篇:一種水相防銹清洗劑
- 下一篇:適配器、連接器及由它們形成的用于雨刮器的組件
- 一種鍵盤(pán)糾錯(cuò)方法及裝置
- 鍵值搜索方法、鍵值搜索裝置及芯片
- 一種注冊(cè)表鍵值的獲取方法及裝置
- 一種基于1553B總線電路燒寫(xiě)鍵值的方法及裝置
- 一種報(bào)文查找鍵值的生成方法及裝置
- 一種用于虛擬現(xiàn)實(shí)的自適應(yīng)鍵值顯示輸入系統(tǒng)
- 一種數(shù)據(jù)關(guān)聯(lián)方法及系統(tǒng)
- 數(shù)據(jù)前綴添加的方法、裝置、電子設(shè)備及介質(zhì)
- 空調(diào)控制方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種組合鍵識(shí)別方法,裝置,設(shè)備和可讀存取介質(zhì)
- 高電壓技術(shù)實(shí)訓(xùn)場(chǎng)
- 大型風(fēng)電場(chǎng)升壓變壓器系統(tǒng)
- 一種多電壓等級(jí)的大容量試驗(yàn)回路
- 一種多電壓等級(jí)的大容量試驗(yàn)回路
- 光伏發(fā)電多級(jí)匯集電網(wǎng)區(qū)域模型的自動(dòng)生成方法
- 一種500kV變電站220kV側(cè)含源供電網(wǎng)絡(luò)動(dòng)態(tài)無(wú)功需求評(píng)估測(cè)試系統(tǒng)
- 一種500kV變電站輻射狀供電網(wǎng)絡(luò)動(dòng)態(tài)無(wú)功需求評(píng)估測(cè)試系統(tǒng)
- 抑制電網(wǎng)單相短路電流的方法
- 應(yīng)用于輸電線路的混壓四回雙分支鋼管桿
- 一種電力傳輸系統(tǒng)
- 動(dòng)態(tài)存儲(chǔ)管理裝置及方法
- 一種存儲(chǔ)方法、服務(wù)器及存儲(chǔ)控制器
- 一種基于存儲(chǔ)系統(tǒng)的控制方法及裝置
- 一種信息的存儲(chǔ)控制方法
- 一種數(shù)據(jù)存儲(chǔ)方法及裝置
- 數(shù)據(jù)存儲(chǔ)方法、裝置、計(jì)算機(jī)設(shè)備以及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)存儲(chǔ)控制方法及裝置
- 存儲(chǔ)設(shè)備、存儲(chǔ)系統(tǒng)及存儲(chǔ)方法
- 物料存儲(chǔ)方法及系統(tǒng)
- 基于雙芯智能電表的數(shù)據(jù)分類(lèi)存儲(chǔ)方法和裝置
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





