[發(fā)明專利]向緩存寫入數(shù)據(jù)的方法及裝置有效
| 申請?zhí)枺?/td> | 201510568241.0 | 申請日: | 2015-09-08 |
| 公開(公告)號: | CN105117351B | 公開(公告)日: | 2018-07-03 |
| 發(fā)明(設(shè)計)人: | 黃福堂 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號: | G06F12/0802 | 分類號: | G06F12/0802 |
| 代理公司: | 深圳市深佳知識產(chǎn)權(quán)代理事務所(普通合伙) 44285 | 代理人: | 王仲凱 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 元數(shù)據(jù) 寫入 待寫入數(shù)據(jù) 緩存 寫入數(shù)據(jù) 元數(shù)據(jù)塊 元數(shù)據(jù)組 隊列 全局 | ||
本發(fā)明實施例公開了一種向緩存中寫入數(shù)據(jù)的方法及裝置,方法包括:接收寫入IO請求命令,該寫入IO請求命令包括待寫入數(shù)據(jù)的元數(shù)據(jù);在全局的伙伴隊列中獲取第一伙伴組,判斷第一伙伴組中是否能夠?qū)懭氪龑懭霐?shù)據(jù)的全部元數(shù)據(jù);若是,則向第一伙伴組中寫入待寫入數(shù)據(jù)的全部元數(shù)據(jù),并向與第一伙伴組所屬的元數(shù)據(jù)組對應的元數(shù)據(jù)塊中寫入待寫入數(shù)據(jù)的全部元數(shù)據(jù)。本發(fā)明可以解決頻繁向Flash中寫入元數(shù)據(jù),而影響Flash的壽命的問題。
技術(shù)領(lǐng)域
本發(fā)明實施例涉及數(shù)據(jù)存儲領(lǐng)域,尤其涉及一種向緩存中寫入數(shù)據(jù)的方法及裝置。
背景技術(shù)
在業(yè)界現(xiàn)有的讀寫緩存(Cache)中,一般采用的存儲介質(zhì)都是基于非易失性記憶體(A Non-Volatile Dual In-line Memory Module,NVDIMM)或者非易失性隨機訪問存儲器(Non-Volatile Random Access Memory,NVRAM),然而基于上述設(shè)備,寫Cache的容量通常比較小,難以應對大量隨機寫壓力的場景。
現(xiàn)有技術(shù)中,采用閃存(Flash)設(shè)備作為Cache。由于要保證數(shù)據(jù)的安全性,每一次寫請求都需要2次的IO,一次是寫數(shù)據(jù)IO,另一次是寫元數(shù)據(jù)IO。而Flash的壽命跟寫的次數(shù)直接相關(guān),例如,多層單元閃存(Multi-Level Cell,MLC)通常只有5000-10000次左右。而元數(shù)據(jù)的大小一般是30B-64B之間,如果每個元數(shù)據(jù)按照元數(shù)據(jù)的大小直接IO,則不能充分發(fā)揮Flash的性能,如果元數(shù)據(jù)按照4K對齊的大小下IO,則可能存在寫放大的問題,對整個Flash的壽命會大大的影響。
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種向緩存中寫入數(shù)據(jù)的方法及裝置,可以解決頻繁向Flash中寫入元數(shù)據(jù),而影響Flash的壽命的問題。
第一方面,本發(fā)明實施例提供了一種向緩存Cache中寫入數(shù)據(jù)的方法,所述Cache的閃存Flash的存儲區(qū)域包括多個存儲塊chunk,一個所述chunk包括一個chunk元數(shù)據(jù)區(qū)和一個chunk數(shù)據(jù)區(qū),所述一個chunk元數(shù)據(jù)區(qū)包括至少一個元數(shù)據(jù)塊,所述一個chunk數(shù)據(jù)區(qū)包括與所述至少一個元數(shù)據(jù)塊對應的至少一個數(shù)據(jù)區(qū),所述元數(shù)據(jù)塊包括多個元數(shù)據(jù),所述數(shù)據(jù)區(qū)包括多個數(shù)據(jù)塊,所述元數(shù)據(jù)塊與所述數(shù)據(jù)區(qū)一一對應,所述元數(shù)據(jù)與所述數(shù)據(jù)塊一一對應,所述方法包括:
接收寫入IO請求命令,所述寫入IO請求命令包括待寫入數(shù)據(jù)的元數(shù)據(jù);
在全局的伙伴隊列中獲取當前正在處理的伙伴組為第一伙伴組,每個伙伴組包含內(nèi)存中的多個緩存塊,每個伙伴組屬于一個元數(shù)據(jù)組,一個所述元數(shù)據(jù)組對應一個所述元數(shù)據(jù)塊;
判斷所述第一伙伴組中是否有剩余緩存塊且剩余緩存塊能夠?qū)懭胨龃龑懭霐?shù)據(jù)的全部元數(shù)據(jù);
當所述第一伙伴組中有剩余緩存塊且剩余緩存塊能夠?qū)懭胨龃龑懭霐?shù)據(jù)的全部元數(shù)據(jù)時,向所述第一伙伴組的剩余緩存塊中寫入所述待寫入數(shù)據(jù)的全部元數(shù)據(jù),并向與所述第一伙伴組所屬的元數(shù)據(jù)組對應的元數(shù)據(jù)塊中寫入所述待寫入數(shù)據(jù)的全部元數(shù)據(jù)。
結(jié)合第一方面,在第一方面的第一種實施方式中,當所述第一伙伴組中沒有剩余緩存塊或剩余緩存塊不能夠?qū)懭胨龃龑懭霐?shù)據(jù)的全部元數(shù)據(jù)時,則判斷所述第一伙伴組所屬的元數(shù)據(jù)組的伙伴隊列中是否有剩余緩存塊能夠?qū)懭胨龃龑懭霐?shù)據(jù)的全部元數(shù)據(jù)的第二伙伴組,若有,則在所述第一伙伴組所屬的元數(shù)據(jù)組的伙伴隊列中獲取所述第二伙伴組,向所述第二伙伴組的剩余緩存塊中寫入所述待寫入數(shù)據(jù)的全部元數(shù)據(jù),并向與所述第二伙伴組所屬的元數(shù)據(jù)組對應的元數(shù)據(jù)塊中寫入所述待寫入數(shù)據(jù)的全部元數(shù)據(jù),所述全局的伙伴隊列中包括所有元數(shù)據(jù)組的伙伴隊列中包括的伙伴組。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510568241.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 元數(shù)據(jù)存取控制系統(tǒng)及其方法、以及接收裝置、發(fā)送裝置
- 一種云存儲客戶端的低延遲元數(shù)據(jù)訪問方法
- 熱點元數(shù)據(jù)訪問控制方法和服務器
- 在多個階段高效地存儲和檢索數(shù)據(jù)和元數(shù)據(jù)的方法和系統(tǒng)
- 元數(shù)據(jù)節(jié)點集群的擴容方法、系統(tǒng)、設(shè)備和存儲介質(zhì)
- 一種元數(shù)據(jù)緩存管理方法和裝置
- 元數(shù)據(jù)管理方法、裝置、計算機設(shè)備及存儲介質(zhì)
- 一種元數(shù)據(jù)管理方法及裝置、設(shè)備、存儲介質(zhì)
- 用于存儲管理的方法、設(shè)備和計算機程序產(chǎn)品
- 論文元數(shù)據(jù)的檢測方法及裝置
- 一種數(shù)據(jù)的備份方法及裝置
- 數(shù)據(jù)存儲方法、裝置和非易失性存儲器
- 數(shù)據(jù)寫入、壓縮和讀取方法、數(shù)據(jù)處理方法及裝置
- 存儲設(shè)備及其數(shù)據(jù)寫入方法、存儲裝置
- 數(shù)據(jù)寫入方法及裝置、存儲介質(zhì)、電子設(shè)備
- 數(shù)據(jù)寫入方法、裝置、存儲介質(zhì)及電子設(shè)備
- 面向數(shù)據(jù)監(jiān)管的區(qū)塊鏈網(wǎng)絡(luò)的共識監(jiān)管方法及其監(jiān)管系統(tǒng)
- 數(shù)據(jù)處理方法及系統(tǒng)
- 數(shù)據(jù)處理方法、裝置、設(shè)備及存儲介質(zhì)
- 數(shù)據(jù)寫入方法、系統(tǒng)和存儲介質(zhì)





