[發明專利]一種SSD的數據儲存方法、裝置、計算機設備及存儲介質在審
| 申請號: | 201810574733.4 | 申請日: | 2018-06-06 |
| 公開(公告)號: | CN108920096A | 公開(公告)日: | 2018-11-30 |
| 發明(設計)人: | 吳嫻 | 申請(專利權)人: | 深圳憶聯信息系統有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 深圳市精英專利事務所 44242 | 代理人: | 馮筠 |
| 地址: | 518067 廣東省深圳市南山區*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 邏輯區塊地址 緩存空間 數據儲存 數據信息 計算機設備 存儲介質 寫入 垃圾回收 使用壽命 有效減少 原有的 排布 空閑 存儲 放大 | ||
本發明公開了一種SSD的數據儲存方法、裝置、計算機設備及存儲介質,其中,方法包括以下步驟:獲取待寫入的邏輯區塊地址以及對應的數據信息;判斷SSD是否存在空閑的緩存空間;若是,則根據邏輯區塊地址在緩存空間內的存儲情況,對所有待寫入邏輯區塊地址以及對應的數據信息進行處理;若否,則對原有的邏輯區塊地址以及對應的數據信息進行處理;其中,所述邏輯區塊地址在緩存空間中以鏈表式排布。本發明一種SSD的數據儲存方法有效減少垃圾回收操作,降低了寫放大,提高了SSD的使用壽命。
技術領域
本發明涉及固態硬盤,更具體地說是一種SSD的數據儲存方法、裝置、計算機設備及存儲介質。
背景技術
固態硬盤(SSD)中主機發起的數據先緩存在data cache(DRAM)中,data cache的管理策略需要保證數據的一致性,即1.如果后續主機又下發了相同邏輯區塊地址(LBA)的數據到data cache,最終寫到閃存(Nand Flash)的數據必須為最后一次主機下發的數據;2.如果主機下發多次相同LBA的數據至data cache后下發讀該LBA的命令,那么SSD返回給主機的數據也必須是最后一次寫入的數據。
現有的緩存技術為用一數組按照主機下發的LBA(以及數據)順序暫存在數組中,如果發生緩存命中,則在原地替換掉舊數據,當緩存滿了后直接下刷到閃存。具體的方式是:
SSD內部用一數組緩存主機下發的LBA信息和對應的用戶數據,
SSD接收主機下發的某個LBA_x以及對應的Data_x,
SSD遍歷緩存數組,如果緩存中沒有LBA_x則將LBA_x值以及Data_x信息按序寫入到緩存中空閑位置,如果緩存中已經存在LBA_x,則將LBA_x的舊數據直接覆蓋掉,且新數據依然存放數組中原來位置,圖1展示了緩存的LBA,圖2展示了LBA2命中了圖1所示緩存后的數據更新。
當緩存數組滿了,SSD固件將該緩存數組中數據寫到Nand閃存中,然后騰出緩存空間接受后續的主機數據。
該技術能有效解決數據一致性問題,但是對于數據中心場景下的活躍LBA如果也采用這種方法,這些活躍LBA會被頻繁寫到閃存,再頻繁被復寫,缺點為閃存塊(Block)中部分物理頁被無效掉,導致頻繁啟動垃圾回收機制,增加寫放大且縮短了閃存的壽命。
發明內容
本發明的目的在于克服現有技術的不足,提供一種SSD的數據儲存方法、裝置、計算機設備及存儲介質。
為實現上述目的,本發明采用以下技術方案:一種SSD的數據儲存方法,所述方法包括以下步驟:
獲取待寫入的邏輯區塊地址以及對應的數據信息;
判斷SSD是否存在空閑的緩存空間;
若是,則根據邏輯區塊地址在緩存空間內的存儲情況,對所有待寫入邏輯區塊地址以及對應的數據信息進行處理;
若否,則對原有的邏輯區塊地址以及對應的數據信息進行處理;
其中,所述邏輯區塊地址在緩存空間中以鏈表式排布。
其進一步技術方案為:所述的根據邏輯區塊地址在緩存空間內的存儲情況,對所有待寫入的邏輯區塊地址以及對應的數據信息進行處理的步驟,具體包括以下步驟:
遍歷緩存空間;
判斷緩存空間中是否已存在待寫入的邏輯區塊地址;
若已存在,則用待寫入邏輯區塊地址中的數據信息將已存在邏輯區塊地址中的數據信息覆蓋;
將覆蓋后的邏輯區塊地址移至所有邏輯區塊地址的最前端;
判斷所有待寫入邏輯區塊地址的數據信息是否處理完畢;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳憶聯信息系統有限公司,未經深圳憶聯信息系統有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810574733.4/2.html,轉載請聲明來源鉆瓜專利網。





