[發(fā)明專利]數(shù)據(jù)存儲方法及NVMe存儲系統(tǒng)有效
| 申請?zhí)枺?/td> | 201811064683.1 | 申請日: | 2018-09-12 |
| 公開(公告)號: | CN109213772B | 公開(公告)日: | 2021-03-26 |
| 發(fā)明(設(shè)計)人: | 翁楚良;儲佳佳;涂云山;張耀 | 申請(專利權(quán))人: | 華東師范大學(xué) |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F12/02 |
| 代理公司: | 上海百一領(lǐng)御專利代理事務(wù)所(普通合伙) 31243 | 代理人: | 王奎宇;甘章乖 |
| 地址: | 200333 上*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 存儲 方法 nvme 存儲系統(tǒng) | ||
1.一種基于NVMe存儲系統(tǒng)的數(shù)據(jù)存儲方法,其中,所述NVMe存儲系統(tǒng)包括處理器、內(nèi)存和NVMe存儲設(shè)備,所述NVMe存儲設(shè)備支持非易失性內(nèi)存主機控制器接口規(guī)范并保存有元數(shù)據(jù)文件,且包含用于存儲用戶數(shù)據(jù)的關(guān)系表存儲空間,該方法包括:
在NVMe存儲系統(tǒng)啟動時,處理器將所述元數(shù)據(jù)文件中的元數(shù)據(jù)信息加載到內(nèi)存中,其中,所述元數(shù)據(jù)信息包括Root信息、預(yù)分配塊的管理信息、索引信息和關(guān)系表的結(jié)構(gòu)信息;
處理器接收客戶端的數(shù)據(jù)寫入請求;
處理器根據(jù)所述數(shù)據(jù)寫入請求中待寫入數(shù)據(jù)和內(nèi)存中元數(shù)據(jù)信息,確定所述待寫入數(shù)據(jù)在關(guān)系表存儲空間中的位置信息;
處理器根據(jù)所述位置信息,直接將所述待寫入數(shù)據(jù)寫入對應(yīng)的關(guān)系表存儲空間,其中,所述直接將所述待寫入數(shù)據(jù)寫入對應(yīng)的關(guān)系表存儲空間包括處理器采用就地更新的方式將所述待寫入數(shù)據(jù)寫入對應(yīng)的關(guān)系表存儲空間,所述就地更新的方式包括處理器繞過操作系統(tǒng)內(nèi)核、不將待寫入數(shù)據(jù)存入緩存而是將待寫入數(shù)據(jù)立即寫入NVMe設(shè)備;
若數(shù)據(jù)寫入成功,處理器根據(jù)所述待寫入數(shù)據(jù)的寫入結(jié)果對元數(shù)據(jù)信息進行更新。
2.根據(jù)權(quán)利要求1所述的方法,其中,處理器將所述元數(shù)據(jù)文件中的元數(shù)據(jù)信息加載到內(nèi)存中,包括:
處理器根據(jù)預(yù)設(shè)的元數(shù)據(jù)文件存放目錄,查找元數(shù)據(jù)文件;
處理器讀取并解析所述元數(shù)據(jù)文件,獲取元數(shù)據(jù)信息;
處理器將所述元數(shù)據(jù)信息加載到內(nèi)存中。
3.根據(jù)權(quán)利要求1所述的方法,其中,處理器根據(jù)所述待寫入數(shù)據(jù)的寫入結(jié)果對元數(shù)據(jù)信息進行更新,包括:
處理器根據(jù)所述待寫入數(shù)據(jù)對應(yīng)的數(shù)據(jù)塊寫入信息,更新元數(shù)據(jù)信息中的預(yù)分配塊的管理信息;
處理器根據(jù)所述待寫入數(shù)據(jù)的主鍵信息,更新元數(shù)據(jù)信息中的索引信息。
4.根據(jù)權(quán)利要求1所述的方法,其中,處理器根據(jù)所述數(shù)據(jù)寫入請求中待寫入數(shù)據(jù)和內(nèi)存中元數(shù)據(jù)信息,確定所述待寫入數(shù)據(jù)在關(guān)系表存儲空間中的位置信息,包括:
處理器根據(jù)所述數(shù)據(jù)寫入請求中待寫入數(shù)據(jù)的主鍵信息和內(nèi)存中元數(shù)據(jù)信息的預(yù)分配塊的管理信息,確定所述待寫入數(shù)據(jù)在關(guān)系表存儲空間中的位置信息。
5.根據(jù)權(quán)利要求1所述的方法,其中,處理器根據(jù)所述數(shù)據(jù)寫入請求中待寫入數(shù)據(jù)和內(nèi)存中元數(shù)據(jù)信息,確定所述待寫入數(shù)據(jù)在關(guān)系表存儲空間中的位置信息之后,還包括:
處理器根據(jù)所述位置信息,獲取對應(yīng)的關(guān)系表存儲空間存儲的第一數(shù)據(jù);
處理器根據(jù)所述第一數(shù)據(jù),生成與第一數(shù)據(jù)對應(yīng)的Undo日志信息。
6.根據(jù)權(quán)利要求5所述的方法,其中,該方法還包括:
若數(shù)據(jù)寫入成功,處理器將對應(yīng)所述第一數(shù)據(jù)的Undo日志信息標(biāo)記為失效;
若數(shù)據(jù)寫入失敗,處理器獲取與所述第一數(shù)據(jù)對應(yīng)的Undo日志信息,并將所述Undo日志信息中的第一數(shù)據(jù)寫入對應(yīng)的關(guān)系表存儲空間。
7.根據(jù)權(quán)利要求6所述的方法,其中,所述Undo日志信息保存在非易失性緩存區(qū)中,且標(biāo)記為失效的Undo日志信息定期被清除。
8.根據(jù)權(quán)利要求1所述的方法,其中,該方法還包括:
處理器接收客戶端的數(shù)據(jù)讀取請求;處理器根據(jù)所述數(shù)據(jù)讀取請求中待讀取數(shù)據(jù)的主鍵信息,在數(shù)據(jù)緩存中查詢并獲取查詢結(jié)果;若所述查詢結(jié)果為未命中,則處理器根據(jù)所述主鍵信息獲取待讀取數(shù)據(jù)在關(guān)系表存儲空間中的位置信息,并根據(jù)所述位置信息獲取待讀取數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的方法,其中,處理器根據(jù)所述位置信息獲取待讀取數(shù)據(jù)之后,還包括:
處理器根據(jù)所述待讀取數(shù)據(jù)和預(yù)設(shè)數(shù)據(jù)緩存更新策略,更新數(shù)據(jù)緩存。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華東師范大學(xué),未經(jīng)華東師范大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811064683.1/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





