欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)寫入裝置及方法

文檔序號:9910610閱讀:376來源:國知局
數(shù)據(jù)寫入裝置及方法
【技術(shù)領(lǐng)域】
[0001 ]本發(fā)明涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)寫入裝置及方法。
【背景技術(shù)】
[0002]SMR(Shingled Magnetic Recording,疊瓦式磁記錄)技術(shù)是一種新興的硬盤存儲技術(shù)。目前的SMR硬盤都是按照磁軌進(jìn)行分區(qū),每一個(gè)硬盤分區(qū)的末端不采用疊瓦式布局。
[0003]KV(Key-Value,鍵值)存儲是一種常用的非關(guān)系型存儲方式,采用鍵值存儲方式存儲數(shù)據(jù)時(shí),通常將一個(gè)鍵值數(shù)據(jù)對象切分成若干子數(shù)據(jù)對象,然后通過哈希(hash)方式將所有子數(shù)據(jù)對象打散到硬盤中進(jìn)行存儲。當(dāng)鍵值數(shù)據(jù)對象存儲入SMR硬盤時(shí),一個(gè)鍵值數(shù)據(jù)對象的若干個(gè)子數(shù)據(jù)對象將會分散在各個(gè)硬盤分區(qū),或者同一個(gè)硬盤分區(qū)上不連續(xù)的物理區(qū)域中。
[0004]在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
[0005]在鍵值存儲中,業(yè)務(wù)刪除時(shí)通常針對整個(gè)鍵值數(shù)據(jù)對象進(jìn)行操作,由于SMR硬盤中同一個(gè)鍵值數(shù)據(jù)對象的子數(shù)據(jù)對象可能分散在多個(gè)硬盤分區(qū),或者同一個(gè)硬盤分區(qū)上不連續(xù)的物理區(qū)域,因此,刪除鍵值數(shù)據(jù)對象會在SMR硬盤上造成多個(gè)空洞,使得硬盤碎片化嚴(yán)重,影響存儲系統(tǒng)垃圾回收的效率。

【發(fā)明內(nèi)容】

[0006]為了解決現(xiàn)有技術(shù)中刪除鍵值數(shù)據(jù)對象會在SMR硬盤上造成多個(gè)空洞,使得硬盤碎片化嚴(yán)重,影響存儲系統(tǒng)垃圾回收的效率的問題,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)寫入裝置及方法,用于鍵值存儲系統(tǒng)中,所述鍵值存儲系統(tǒng)建立于疊瓦式磁記錄SMR硬盤中,所述技術(shù)方案如下:
[0007]第一方面,提供了一種數(shù)據(jù)寫入方法,該方法包括:
[0008]接收寫入指令,所述寫入指令用于指示將鍵值數(shù)據(jù)對象寫入所述SMR硬盤,所述SMR硬盤包含多個(gè)硬盤分區(qū);在所述多個(gè)硬盤分區(qū)中確定第一目標(biāo)分區(qū);將所述鍵值數(shù)據(jù)對象切分成至少一個(gè)子數(shù)據(jù)對象,并將所述至少一個(gè)子數(shù)據(jù)對象順序?qū)懭胨龅谝荒繕?biāo)分區(qū)中的相鄰磁軌。
[0009]本發(fā)明實(shí)施例提供的數(shù)據(jù)寫入方法,通過接收用于指示將鍵值數(shù)據(jù)對象寫入該SMR硬盤的寫入指令,在SMR硬盤的多個(gè)硬盤分區(qū)中確定第一目標(biāo)分區(qū),并在確定的該第一目標(biāo)分區(qū)中順序?qū)懭朐撴I值數(shù)據(jù)對象包含的至少一個(gè)子數(shù)據(jù)對象,在后續(xù)刪除該鍵值數(shù)據(jù)對象中的部分或者全部子數(shù)據(jù)對象時(shí),形成的無效數(shù)據(jù)也會相對集中,不會在SMR硬盤上造成過多的空洞,緩解了 SMR硬盤的碎片化程度,從而提高系統(tǒng)的垃圾回收效率。
[0010]在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述在所述多個(gè)硬盤分區(qū)中確定第一目標(biāo)分區(qū),包括:判斷所述SMR硬盤中是否已存在與所述鍵值數(shù)據(jù)對象具有相同的對象標(biāo)識的數(shù)據(jù);若判斷結(jié)果為所述SMR硬盤中已存在與所述鍵值數(shù)據(jù)對象具有相同的對象標(biāo)識的數(shù)據(jù),則將與所述鍵值數(shù)據(jù)對象具有相同的對象標(biāo)識的數(shù)據(jù)所在的、剩余空間不小于所述鍵值數(shù)據(jù)對象的數(shù)據(jù)量的硬盤分區(qū)確定為所述第一目標(biāo)分區(qū)。對鍵值數(shù)據(jù)對象進(jìn)行寫入時(shí),可以優(yōu)先將該鍵值數(shù)據(jù)對象寫入到其它對應(yīng)相同的對象標(biāo)識的子數(shù)據(jù)對象所在的硬盤分區(qū)中,從而使對應(yīng)相同的對象標(biāo)識的數(shù)據(jù)更加集中,進(jìn)一步緩解了刪除數(shù)據(jù)時(shí),SMR硬盤的碎片化程度。
[0011]在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述鍵值數(shù)據(jù)對象包含的至少一個(gè)子數(shù)據(jù)對象各自對應(yīng)所述鍵值數(shù)據(jù)對象的對象標(biāo)識,所述方法還包括:在對所述SMR硬盤中的無效數(shù)據(jù)進(jìn)行垃圾回收時(shí),檢測對應(yīng)所述對象標(biāo)識的各個(gè)有效的子數(shù)據(jù)對象是否存儲于同一個(gè)硬盤分區(qū);若檢測結(jié)果為所述各個(gè)有效的子數(shù)據(jù)對象未存儲于同一個(gè)硬盤分區(qū),則在所述多個(gè)硬盤分區(qū)中確定第二目標(biāo)分區(qū);將所述各個(gè)有效的子數(shù)據(jù)對象搬移到所述第二目標(biāo)分區(qū)。通過在對該SMR硬盤中的無效數(shù)據(jù)進(jìn)行垃圾回收時(shí),檢測對應(yīng)該對象標(biāo)識的各個(gè)有效的子數(shù)據(jù)對象是否存儲于同一個(gè)硬盤分區(qū),若檢測結(jié)果為該各個(gè)有效的子數(shù)據(jù)對象未存儲于同一個(gè)硬盤分區(qū),則在該多個(gè)硬盤分區(qū)中確定第二目標(biāo)分區(qū),將該各個(gè)有效的子數(shù)據(jù)對象搬移到該第二目標(biāo)分區(qū)中的相鄰磁軌,在統(tǒng)一進(jìn)行垃圾回收,可以將有效數(shù)據(jù)搬移到一起,使具有相同的object-1d的數(shù)據(jù)繼續(xù)保持集中存儲的狀態(tài),進(jìn)一步緩解SMR硬盤的碎片化程度,提高垃圾回收效率。
[0012]結(jié)合第一方面的第二種可能實(shí)現(xiàn)方式,在第一方面的第三種可能實(shí)現(xiàn)方式中,所述在所述多個(gè)硬盤分區(qū)中確定第二目標(biāo)分區(qū),包括:判斷存儲所述各個(gè)有效的子數(shù)據(jù)對象的硬盤分區(qū)中,是否存在滿足預(yù)設(shè)條件的硬盤分區(qū),所述預(yù)設(shè)條件為:所述硬盤分區(qū)的剩余空間不小于存儲于所述硬盤分區(qū)之外的其它有效的子數(shù)據(jù)對象的數(shù)據(jù)量之和;若判斷結(jié)果為存在滿足所述預(yù)設(shè)條件的硬盤分區(qū),則將所述滿足所述預(yù)設(shè)條件的硬盤分區(qū)確定為所述第二目標(biāo)分區(qū)。在進(jìn)行垃圾回收時(shí),將對應(yīng)同一對象標(biāo)識的各個(gè)有效的子數(shù)據(jù)對象優(yōu)先搬移到已經(jīng)存儲有部分對應(yīng)該對象標(biāo)識的有效子數(shù)據(jù)對象的硬盤分區(qū)中,這樣只需要將其它有效的子數(shù)據(jù)對象搬移到第二目標(biāo)分區(qū)中即可,減少了數(shù)據(jù)搬移量。
[0013]第二方面,本發(fā)明實(shí)施例提供了一種存儲設(shè)備,該存儲設(shè)備包括:處理器和存儲器;處理器被配置為執(zhí)行存儲器中存儲的指令;處理器通過執(zhí)行指令來實(shí)現(xiàn)上述第一方面或第一方面中任意一種可能的實(shí)現(xiàn)方式所提供的數(shù)據(jù)寫入方法。
[0014]第三方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)寫入裝置,該數(shù)據(jù)寫入裝置包括至少一個(gè)單元,該至少一個(gè)單元用于實(shí)現(xiàn)上述第一方面或第一方面中任意一種可能的實(shí)現(xiàn)方式所提供的數(shù)據(jù)寫入方法。
[0015]可選的,所述在所述多個(gè)硬盤分區(qū)中確定第一目標(biāo)分區(qū),還包括:若判斷結(jié)果為所述SMR硬盤中不存在與所述鍵值數(shù)據(jù)對象具有相同的對象標(biāo)識的數(shù)據(jù),則將所述多個(gè)硬盤分區(qū)中一個(gè)剩余空間不小于所述鍵值數(shù)據(jù)對象的數(shù)據(jù)量的硬盤分區(qū)確定為所述第一目標(biāo)分區(qū)。
[0016]可選的,所述在所述多個(gè)硬盤分區(qū)中確定第二目標(biāo)分區(qū),還包括:若判斷結(jié)果為不存在滿足所述預(yù)設(shè)條件的硬盤分區(qū),則將所述多個(gè)硬盤分區(qū)中一個(gè)剩余空間不小于所述各個(gè)有效的子數(shù)據(jù)對象的數(shù)據(jù)量之和的硬盤分區(qū)確定為所述第二目標(biāo)分區(qū)。
【附圖說明】
[0017]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1是本發(fā)明示例性實(shí)施例所示出的存儲設(shè)備的結(jié)構(gòu)示意圖;
[0019]圖2A是本發(fā)明一示例性實(shí)施例示出的數(shù)據(jù)寫入方法的方法流程圖;
[0020]圖2B是圖2A所示實(shí)施例涉及的第一目標(biāo)分區(qū)確定方法的流程圖;
[0021]圖2C是圖2A所示實(shí)施例涉及的第二目標(biāo)分區(qū)確定方法的流程圖;
[0022]圖3是本發(fā)明一個(gè)示例性實(shí)施例提供的數(shù)據(jù)寫入裝置的框圖。
【具體實(shí)施方式】
[0023]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
花莲县| 勐海县| 民丰县| 江永县| 兰溪市| 大名县| 盐源县| 皋兰县| 寿阳县| 昔阳县| 凤山县| 岑巩县| 辉县市| 延庆县| 三河市| 百色市| 安平县| 通州区| 蒙阴县| 田阳县| 河津市| 通辽市| 奈曼旗| 关岭| 石楼县| 轮台县| 泰州市| 安义县| 晋中市| 万年县| 佳木斯市| 兴和县| 金乡县| 河曲县| 井冈山市| 揭阳市| 会泽县| 平江县| 嘉禾县| 上栗县| 古浪县|