[發明專利]一種分布式存儲塊置零方法、裝置、電子設備及存儲介質有效
| 申請號: | 201911039171.4 | 申請日: | 2019-10-29 |
| 公開(公告)號: | CN110795043B | 公開(公告)日: | 2023-06-06 |
| 發明(設計)人: | 楊飛虎 | 申請(專利權)人: | 北京浪潮數據技術有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 牛亭亭 |
| 地址: | 100085 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 分布式 存儲 塊置零 方法 裝置 電子設備 介質 | ||
1.一種分布式存儲塊置零方法,其特征在于,包括:
接收WRITE_SAME命令;
判斷所述WRITE_SAME命令是否為塊置零命令;
若所述WRITE_SAME命令為所述塊置零命令,則調用dbs_discard接口將目標存儲塊置零;
所述調用dbs_discard接口將目標存儲塊置零包括:
調用分布式塊存儲庫libdbs提供的dbs_discard接口,通過刪除或截斷或打洞操作實現塊置零;
判斷所述WRITE_SAME命令是否為塊置零命令,包括:
判斷所述WRITE_SAME命令是否附加有UNMAP標識;
若所述WRITE_SAME命令附加有所述UNMAP標識,則確定所述WRITE_SAME命令為所述塊置零命令;
當所述WRITE_SAME命令未附加有所述UNMAP標識時,還包括:
從所述WRITE_SAME命令中提取得到待寫數據;
判斷所述待寫數據是否全為0;
若所述待寫數據全為0,則確定所述WRITE_SAME命令為所述塊置零命令。
2.根據權利要求1所述的分布式存儲塊置零方法,其特征在于,當所述WRITE_SAME命令不是所述塊置零命令時,還包括:
復制所述待寫數據,得到與所述目標存儲塊數量一致的各所述待寫數據;
調用dbs_write接口將各所述待寫數據分別寫入每個所述目標存儲塊。
3.一種分布式存儲塊置零裝置,其特征在于,包括:
命令接收單元,用于接收WRITE_SAME命令;
塊置零命令判斷單元,用于判斷所述WRITE_SAME命令是否為塊置零命令;
dbs_discard接口調用置零單元,用于當所述WRITE_SAME命令為所述塊置零命令時,調用dbs_discard接口將目標存儲塊置零;
所述dbs_discard接口調用置零單元用于:
調用分布式塊存儲庫libdbs提供的dbs_discard接口,通過刪除或截斷或打洞操作實現塊置零;
所述塊置零命令判斷單元包括:
UNMAP標識判斷子單元,用于判斷所述WRITE_SAME命令是否附加有UNMAP標識;
塊置零命令第一確定子單元,用于當所述WRITE_SAME命令附加有所述UNMAP標識時,確定所述WRITE_SAME命令為所述塊置零命令;
所述塊置零命令判斷單元還包括:
待寫數據提取子單元,用于當所述WRITE_SAME命令未附加有所述UNMAP標識時,從所述WRITE_SAME命令中提取得到待寫數據;
全0判斷子單元,用于判斷所述待寫數據是否全為0;
塊置零命令第二確定子單元,用于當所述待寫數據全為0時,確定所述WRITE_SAME命令為所述塊置零命令。
4.根據權利要求3所述的分布式存儲塊置零裝置,其特征在于,還包括:
待寫數據復制單元,用于當所述WRITE_SAME命令不是所述塊置零命令時,復制所述待寫數據,得到與所述目標存儲塊數量一致的各所述待寫數據;
dbs_write接口調用即寫入單元,用于調用dbs_write接口將各所述待寫數據分別寫入每個所述目標存儲塊。
5.一種電子設備,其特征在于,包括:
存儲器,用于存儲計算機程序;
處理器,用于在執行所述計算機程序時,實現如權利要求1至2任一項所述的分布式存儲塊置零方法。
6.一種可讀存儲介質,其特征在于,所述可讀存儲介質中存儲有計算機程序,所述計算機程序在被處理器執行時,實現如權利要求1至2任一項所述的分布式存儲塊置零方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京浪潮數據技術有限公司,未經北京浪潮數據技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911039171.4/1.html,轉載請聲明來源鉆瓜專利網。





