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

一種磁盤管理方法及裝置與流程

文檔序號(hào):12664095閱讀:182來源:國知局
一種磁盤管理方法及裝置與流程

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種磁盤管理方法及裝置。



背景技術(shù):

為了提高業(yè)務(wù)數(shù)據(jù)的安全性,通常采用冗余磁盤陣列存儲(chǔ)業(yè)務(wù)數(shù)據(jù),當(dāng)存儲(chǔ)業(yè)務(wù)數(shù)據(jù)的磁盤故障時(shí),可根據(jù)冗余磁盤陣列中未發(fā)生故障的磁盤中存儲(chǔ)的數(shù)據(jù)將故障磁盤中存儲(chǔ)的業(yè)務(wù)數(shù)據(jù)重建至一塊新的磁盤中。為了確保上層應(yīng)用能夠正常使用磁盤,在磁盤重建過程中,內(nèi)部重建請(qǐng)求和上層應(yīng)用提供的業(yè)務(wù)數(shù)據(jù)需要共享磁盤帶寬。

目前,在磁盤的各個(gè)存儲(chǔ)地址下分別寫入對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)時(shí),通常根據(jù)接收各個(gè)業(yè)務(wù)數(shù)據(jù)的時(shí)間順序,依次將各個(gè)業(yè)務(wù)數(shù)據(jù)寫入對(duì)應(yīng)的存儲(chǔ)地址。但是,當(dāng)磁盤處于重建狀態(tài),且重建區(qū)域和各個(gè)存儲(chǔ)地址之間的位置距離較遠(yuǎn)時(shí),磁頭在重建區(qū)域以及各個(gè)存儲(chǔ)地址之間發(fā)生移動(dòng),需要占用較長的響應(yīng)時(shí)間,使得磁盤無法在較短的時(shí)間內(nèi)完成重建,磁盤重建效率極低。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例提供了一種磁盤管理方法及裝置,可提高磁盤重建的效率。

第一方面,本發(fā)明提供了一種磁盤管理方法,包括:

預(yù)先設(shè)置緩存單元;

接收并解析訪問請(qǐng)求,以獲取業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址,并將所述業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址存儲(chǔ)至所述緩存單元;

確定所述緩存單元中存儲(chǔ)的所述存儲(chǔ)地址的當(dāng)前數(shù)量,在所述當(dāng)前數(shù)量達(dá)到預(yù)設(shè)數(shù)量時(shí),檢測是否存在重建進(jìn)程重建待管理磁盤;

當(dāng)存在重建進(jìn)程重建所述待管理磁盤時(shí),對(duì)所述重建進(jìn)程進(jìn)行掛起處理,并確定所述待管理磁盤中正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域;

從各個(gè)所述存儲(chǔ)地址中,確定出至少一個(gè)距離所述重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址;

將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,并重啟所述重建進(jìn)程。

優(yōu)選地,

所述將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,包括:

按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列;

根據(jù)所述第一順序隊(duì)列,依次將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤。

優(yōu)選地

當(dāng)不存在重建進(jìn)程重建所述待管理磁盤時(shí),利用各個(gè)所述存儲(chǔ)地址形成第二順序隊(duì)列;

根據(jù)所述第二順序隊(duì)列,依次將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中。

優(yōu)選地,

所述待管理磁盤包括:設(shè)定數(shù)量個(gè)獨(dú)立存儲(chǔ)區(qū)域,且每一個(gè)所述存儲(chǔ)區(qū)域分別對(duì)應(yīng)一個(gè)順序號(hào);

所述存儲(chǔ)地址,包括:順序號(hào)。

優(yōu)選地,

所述獨(dú)立存儲(chǔ)區(qū)域的大小,包括:128K;

和/或,

所述預(yù)設(shè)閾值,包括:800。

第二方面,本發(fā)明實(shí)施例提供了一種磁盤管理裝置,包括:

設(shè)置模塊,用于預(yù)先設(shè)置緩存單元;

緩存處理模塊,用于接收并解析訪問請(qǐng)求,以獲取業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址,并將所述業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址存儲(chǔ)至所述緩存單元;

檢測模塊,用于確定所述緩存單元中存儲(chǔ)的所述存儲(chǔ)地址的當(dāng)前數(shù)量,在所述當(dāng)前數(shù)量達(dá)到預(yù)設(shè)數(shù)量時(shí),檢測是否存在重建進(jìn)程重建待管理磁盤;

重建處理模塊,用于當(dāng)存在重建進(jìn)程重建所述待管理磁盤時(shí),對(duì)所述重建進(jìn)程進(jìn)行掛起處理,并確定所述待管理磁盤中正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域;

確定模塊,用于從各個(gè)所述存儲(chǔ)地址中,確定出至少一個(gè)距離所述重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址;

第一數(shù)據(jù)處理模塊,用于將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,并重啟所述重建進(jìn)程。

優(yōu)選地,

所述第一數(shù)據(jù)處理模塊,包括:隊(duì)列構(gòu)建單元和數(shù)據(jù)處理單元;其中,

所述隊(duì)列構(gòu)建單元,用于按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列;

所述數(shù)據(jù)處理單元,用于根據(jù)所述第一順序隊(duì)列,依次將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤。

優(yōu)選地,

還包括:隊(duì)列構(gòu)建模塊和第二數(shù)據(jù)處理模塊,其中,

所述隊(duì)列構(gòu)建模塊,用于當(dāng)不存在重建進(jìn)程重建所述待管理磁盤時(shí),利用各個(gè)所述存儲(chǔ)地址形成第二順序隊(duì)列;

所述第二數(shù)據(jù)處理模塊,用于根據(jù)所述第二順序隊(duì)列,依次將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中。

第三方面,本發(fā)明實(shí)施例提供了一種可讀介質(zhì),包括執(zhí)行指令,當(dāng)存儲(chǔ)控制器的處理器執(zhí)行所述執(zhí)行指令時(shí),所述存儲(chǔ)控制器執(zhí)行第一方面中任一項(xiàng)所述的方法。

第四方面,本發(fā)明實(shí)施例提供了一種存儲(chǔ)控制器,包括:處理器、存儲(chǔ)器和總線;

所述處理器和所述存儲(chǔ)器通過所述總線連接;

所述存儲(chǔ)器,當(dāng)所述存儲(chǔ)控制器運(yùn)行時(shí),所述處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的所述執(zhí)行指令,以使所述存儲(chǔ)控制器執(zhí)行第一方面中任一項(xiàng)所述的方法。

本發(fā)明實(shí)施例提供了一種磁盤管理方法及裝置,通過緩存單元緩存多個(gè)業(yè)務(wù)數(shù)據(jù)及每一個(gè)業(yè)務(wù)數(shù)據(jù)分別對(duì)應(yīng)的存儲(chǔ)地址,當(dāng)存在重建進(jìn)程正在重建待管理磁盤時(shí),對(duì)重建進(jìn)程進(jìn)行掛起處理,并確定出正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域,然后從緩存單元存儲(chǔ)的各個(gè)存儲(chǔ)地址中確定出至少一個(gè)距離重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址,進(jìn)而將各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤,然后再重啟重建進(jìn)程。如此,通過將緩存單元存儲(chǔ)的多個(gè)業(yè)務(wù)數(shù)據(jù)中,距離重建區(qū)域較近的各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)優(yōu)先寫入磁盤,磁頭在重建區(qū)域以及各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生移動(dòng),移動(dòng)距離較近,不會(huì)占用較長的響應(yīng)時(shí)間,可提高磁盤重建效率。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明一實(shí)施例提供的一種磁盤管理方法的流程圖;

圖2是本發(fā)明一實(shí)施例提供的另一種磁盤管理方法的流程圖;

圖3是本發(fā)明一實(shí)施例提供的一種磁盤管理裝置的結(jié)構(gòu)示意圖;

圖4是本發(fā)明一實(shí)施例提供的磁盤管理裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

如圖1所示,本發(fā)明實(shí)施例提供了一種磁盤管理方法,包括:

步驟101,預(yù)先設(shè)置緩存單元;

步驟102,接收并解析訪問請(qǐng)求,以獲取業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址,并將所述業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址存儲(chǔ)至所述緩存單元;

步驟103,確定所述緩存單元中存儲(chǔ)的所述存儲(chǔ)地址的當(dāng)前數(shù)量,在所述當(dāng)前數(shù)量達(dá)到預(yù)設(shè)數(shù)量時(shí),檢測是否存在重建進(jìn)程重建待管理磁盤;

步驟104,當(dāng)存在重建進(jìn)程重建所述待管理磁盤時(shí),對(duì)所述重建進(jìn)程進(jìn)行掛起處理,并確定所述待管理磁盤中正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域;

步驟105,從各個(gè)所述存儲(chǔ)地址中,確定出至少一個(gè)距離所述重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址;

步驟106,將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,并重啟所述重建進(jìn)程。

本發(fā)明上述實(shí)施例中,通過緩存單元緩存多個(gè)業(yè)務(wù)數(shù)據(jù)及每一個(gè)業(yè)務(wù)數(shù)據(jù)分別對(duì)應(yīng)的存儲(chǔ)地址,當(dāng)存在重建進(jìn)程正在重建待管理磁盤時(shí),對(duì)重建進(jìn)程進(jìn)行掛起處理,并確定出正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域,然后從緩存單元存儲(chǔ)的各個(gè)存儲(chǔ)地址中確定出至少一個(gè)距離重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址,進(jìn)而將各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤,然后再重啟重建進(jìn)程。如此,通過將緩存單元存儲(chǔ)的多個(gè)業(yè)務(wù)數(shù)據(jù)中,距離重建區(qū)域較近的各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)優(yōu)先寫入磁盤,磁頭在重建區(qū)域以及各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生移動(dòng),移動(dòng)距離較近,不會(huì)占用較長的響應(yīng)時(shí)間,可提高磁盤重建效率。

相應(yīng)的,當(dāng)緩存單元中存儲(chǔ)的預(yù)設(shè)數(shù)量n個(gè)業(yè)務(wù)數(shù)據(jù)中,僅存在m(m為小于n的整數(shù))個(gè)業(yè)務(wù)數(shù)據(jù)對(duì)應(yīng)的存儲(chǔ)地址與重建區(qū)域之間的地址偏移量不大于預(yù)設(shè)閾值時(shí),剩余的n-m個(gè)業(yè)務(wù)數(shù)據(jù)可繼續(xù)保留在緩存單元中,m個(gè)業(yè)務(wù)數(shù)據(jù)及對(duì)應(yīng)的目標(biāo)存儲(chǔ)地址可作清除處理。如此,直到緩存單元中累計(jì)的業(yè)務(wù)數(shù)據(jù)或存儲(chǔ)地址的個(gè)數(shù)再次達(dá)到預(yù)設(shè)數(shù)量時(shí),執(zhí)行與上述步驟103至步驟106的技術(shù)方案,直到檢測出不存在重建進(jìn)程重建待管理磁盤時(shí),才以相應(yīng)的處理規(guī)則將緩存單元中存儲(chǔ)的各個(gè)業(yè)務(wù)數(shù)據(jù)全部寫入磁盤。

具體地,當(dāng)檢測出不存在重建進(jìn)程重建待管理磁盤時(shí),為了節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,具體可以通過如下方式實(shí)現(xiàn)將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中:利用各個(gè)所述存儲(chǔ)地址形成第二順序隊(duì)列;根據(jù)所述第二順序隊(duì)列,依次將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中。

同時(shí),所述待管理磁盤可以包括:設(shè)定數(shù)量個(gè)獨(dú)立存儲(chǔ)區(qū)域,且每一個(gè)所述存儲(chǔ)區(qū)域分別對(duì)應(yīng)一個(gè)順序號(hào);所述存儲(chǔ)地址,包括:順序號(hào)。

例如,緩存單元中存儲(chǔ)有業(yè)務(wù)數(shù)據(jù)A、業(yè)務(wù)數(shù)據(jù)B和業(yè)務(wù)數(shù)據(jù)C,存儲(chǔ)區(qū)域有6個(gè)獨(dú)立存儲(chǔ)區(qū)域,其順序號(hào)分別為1-6,且三個(gè)業(yè)務(wù)數(shù)據(jù)A、B、C分別對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)1、順序號(hào)6和順序號(hào)3,則根據(jù)其順序號(hào),將業(yè)務(wù)數(shù)據(jù)A-業(yè)務(wù)數(shù)據(jù)C-業(yè)務(wù)數(shù)據(jù)B依次寫入待管理磁盤中,磁頭根據(jù)此順序,從順序號(hào)1對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域移動(dòng)至順序號(hào)3對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域,然后再移動(dòng)至順序號(hào)6對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域,從而使磁頭移動(dòng)距離最短,節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,提高數(shù)據(jù)處理速度。

進(jìn)一步的,為了避免磁頭在各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生往復(fù)運(yùn)動(dòng),進(jìn)一步節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,以進(jìn)一步提高磁盤重建效率,本發(fā)明一個(gè)實(shí)施例中,步驟106的具體實(shí)施方式,可以包括:

按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列;

根據(jù)所述第一順序隊(duì)列,依次將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤。

這里以待管理磁盤包括設(shè)定數(shù)量個(gè)獨(dú)立存儲(chǔ)區(qū)域,且每一個(gè)獨(dú)立存儲(chǔ)區(qū)域分別對(duì)應(yīng)一個(gè)順序號(hào);且存儲(chǔ)地址包括順序號(hào)為例。舉例來說,待管理磁盤中設(shè)定有20個(gè)獨(dú)立存儲(chǔ)區(qū)域,其中,第10個(gè)獨(dú)立存儲(chǔ)區(qū)域?yàn)橹亟▍^(qū)域,在緩存單元中,業(yè)務(wù)數(shù)據(jù)包括:業(yè)務(wù)數(shù)據(jù)A、業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)D和業(yè)務(wù)數(shù)據(jù)E,其分別對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)17、順序號(hào)7、順序號(hào)5、順序號(hào)13和順序號(hào)6,這里以預(yù)設(shè)位置為5進(jìn)行舉例,則目標(biāo)存儲(chǔ)地址包括:順序號(hào)7、順序號(hào)5、順序號(hào)13和順序號(hào)6,根據(jù)各個(gè)目標(biāo)存儲(chǔ)地址的地址先后順序,形成第一順序隊(duì)列為:業(yè)務(wù)數(shù)據(jù)C-業(yè)務(wù)數(shù)據(jù)E-業(yè)務(wù)數(shù)據(jù)B-業(yè)務(wù)數(shù)據(jù)D,在根據(jù)此順序隊(duì)列依次將各個(gè)業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤時(shí),磁頭根據(jù)此順序,從重建區(qū)域出發(fā),在按照對(duì)應(yīng)順序號(hào)順序?yàn)?-6-7-13的各個(gè)獨(dú)立存儲(chǔ)區(qū)域中順序移動(dòng),從而避免磁頭在各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生往復(fù)運(yùn)動(dòng),進(jìn)一步節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,進(jìn)而進(jìn)一步提高了磁盤重建效率。應(yīng)當(dāng)理解的是,業(yè)務(wù)數(shù)據(jù)A及其對(duì)應(yīng)的存儲(chǔ)地址(順序號(hào)17)可暫時(shí)保留在緩存單元中,業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)D和業(yè)務(wù)數(shù)據(jù)E及其分別對(duì)應(yīng)的存儲(chǔ)地址均可做刪除處理。

應(yīng)當(dāng)理解的是,每一個(gè)獨(dú)立存儲(chǔ)區(qū)域的大小可結(jié)合實(shí)際業(yè)務(wù)需求進(jìn)行合理設(shè)置,比如,各個(gè)獨(dú)立存儲(chǔ)區(qū)域的大小均設(shè)置為128K,或各個(gè)獨(dú)立存儲(chǔ)區(qū)域的大小均設(shè)置為256K。

應(yīng)當(dāng)理解的是,預(yù)設(shè)閾值也可根據(jù)實(shí)際業(yè)務(wù)需求進(jìn)行合理設(shè)置,比如將預(yù)設(shè)閾值設(shè)置為800。

為了更加清楚的說明本發(fā)明的技術(shù)方案及優(yōu)點(diǎn),如圖2所示,本發(fā)明實(shí)施例提供了一種磁盤管理方法,該方法可以包括以下步驟:

步驟201,設(shè)置緩存單元。

步驟202,接收并解析訪問請(qǐng)求,以獲取業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址,并將業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址存儲(chǔ)至緩存單元。

本發(fā)明實(shí)施例以待管理磁盤被劃分為20個(gè)獨(dú)立存儲(chǔ)區(qū)域,每一個(gè)獨(dú)立村存儲(chǔ)區(qū)域按照地址先后順序分別對(duì)應(yīng)一個(gè)順序號(hào)為例,則當(dāng)前業(yè)務(wù)數(shù)據(jù)對(duì)應(yīng)的存儲(chǔ)地址為當(dāng)前業(yè)務(wù)數(shù)據(jù)被寫入待管理磁盤時(shí)對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域的順序號(hào)。

舉例來說,依次接收五個(gè)訪問請(qǐng)求,對(duì)每一個(gè)訪問請(qǐng)求分別進(jìn)行解析后,可獲取到業(yè)務(wù)數(shù)據(jù)A、業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)D和業(yè)務(wù)數(shù)據(jù)E,且業(yè)務(wù)數(shù)據(jù)A對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)10、業(yè)務(wù)數(shù)據(jù)B對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)5、業(yè)務(wù)數(shù)據(jù)C對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)3、業(yè)務(wù)數(shù)據(jù)D對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)7、業(yè)務(wù)數(shù)據(jù)E對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)8。

步驟203,確定緩存單元中存儲(chǔ)的存儲(chǔ)地址的當(dāng)前數(shù)量。

步驟204,判斷所述當(dāng)前數(shù)量是否不小于預(yù)設(shè)數(shù)量,如果是,則執(zhí)行步驟205,否則執(zhí)行步驟202。

本發(fā)明實(shí)施例以設(shè)定數(shù)量是5為例。

步驟205,判斷是否存在重建進(jìn)程重建待管理磁盤,如果是,則執(zhí)行步驟206,否則執(zhí)行步驟210。

步驟206,對(duì)重建進(jìn)程進(jìn)行掛起處理,并確定待管理磁盤中正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域。

本發(fā)明實(shí)施例以重建區(qū)域?yàn)閷?duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域的順序號(hào)是4為例。

步驟207,從各個(gè)所述存儲(chǔ)地址中,確定出至少一個(gè)距離所述重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址。

本發(fā)明實(shí)施例以預(yù)設(shè)閾值為3個(gè)順序號(hào)為例,則可確定出偏移量不大于3個(gè)順序的各個(gè)目標(biāo)存儲(chǔ)地址分別為:順序號(hào)3、順序號(hào)5、順序號(hào)7。

應(yīng)當(dāng)理解的是,本發(fā)明實(shí)施例為了方便舉例說明,僅以預(yù)設(shè)閾值為3個(gè)順序號(hào)為例,在實(shí)際業(yè)務(wù)場景中,可結(jié)合實(shí)際業(yè)務(wù)需求進(jìn)行合理設(shè)置,比如,預(yù)設(shè)閾值為800。

步驟208,按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列。

即按照順序號(hào)的大小順序,形成第一順序隊(duì)列為:順序號(hào)3-順序號(hào)5-和順序號(hào)7。

步驟209,根據(jù)第一順序隊(duì)列,依次將各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,并重啟所述重建進(jìn)程。

這里,即依次將順序號(hào)3對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)C、順序號(hào)5對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)B和順序號(hào)7對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)D寫入待管理磁盤中順序號(hào)3、順序號(hào)5和順序號(hào)7分別對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域中。

之后,則可刪除緩存單元中業(yè)務(wù)數(shù)據(jù)C、B、D及其對(duì)應(yīng)的存儲(chǔ)地址。

步驟210,利用各個(gè)存儲(chǔ)地址形成第二順序隊(duì)列,并根據(jù)第二順序隊(duì)列,依次將各個(gè)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤中。

舉例來說,可形成第一順序隊(duì)列為:順序號(hào)3、順序號(hào)5、順序號(hào)7、順序號(hào)8、順序號(hào)10。磁頭依次在順序號(hào)3、順序號(hào)5、順序號(hào)7、順序號(hào)8、順序號(hào)10之間移動(dòng)以將業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)D、業(yè)務(wù)數(shù)據(jù)E和業(yè)務(wù)數(shù)據(jù)A寫入待管理磁盤中對(duì)應(yīng)順序號(hào)分別為順序號(hào)3、順序號(hào)5、順序號(hào)7、順序號(hào)8、順序號(hào)10的獨(dú)立存儲(chǔ)區(qū)域。

如圖3所示,本發(fā)明實(shí)施例提供了一種磁盤管理裝置,包括:

設(shè)置模塊301,用于預(yù)先設(shè)置緩存單元;

緩存處理模塊302,用于接收并解析訪問請(qǐng)求,以獲取業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址,并將所述業(yè)務(wù)數(shù)據(jù)及存儲(chǔ)地址存儲(chǔ)至所述緩存單元;

檢測模塊303,用于確定所述緩存單元中存儲(chǔ)的所述存儲(chǔ)地址的當(dāng)前數(shù)量,在所述當(dāng)前數(shù)量達(dá)到預(yù)設(shè)數(shù)量時(shí),檢測是否存在重建進(jìn)程重建待管理磁盤;

重建處理模塊304,用于當(dāng)存在重建進(jìn)程重建所述待管理磁盤時(shí),對(duì)所述重建進(jìn)程進(jìn)行掛起處理,并確定所述待管理磁盤中正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域;

確定模塊305,用于從各個(gè)所述存儲(chǔ)地址中,確定出至少一個(gè)距離所述重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址;

第一數(shù)據(jù)處理模塊306,用于將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤,并重啟所述重建進(jìn)程。

上述實(shí)施例中,通過緩存單元緩存多個(gè)業(yè)務(wù)數(shù)據(jù)及每一個(gè)業(yè)務(wù)數(shù)據(jù)分別對(duì)應(yīng)的存儲(chǔ)地址,當(dāng)存在重建進(jìn)程正在重建待管理磁盤時(shí),對(duì)重建進(jìn)程進(jìn)行掛起處理,并確定出正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域,然后從緩存單元存儲(chǔ)的各個(gè)存儲(chǔ)地址中確定出至少一個(gè)距離重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址,進(jìn)而將各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤,然后再重啟重建進(jìn)程。如此,通過將緩存單元存儲(chǔ)的多個(gè)業(yè)務(wù)數(shù)據(jù)中,距離重建區(qū)域較近的各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)優(yōu)先寫入磁盤,磁頭在重建區(qū)域以及各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生移動(dòng),移動(dòng)距離較近,不會(huì)占用較長的響應(yīng)時(shí)間,可提高磁盤重建效率。

相應(yīng)的,當(dāng)緩存單元中存儲(chǔ)的預(yù)設(shè)數(shù)量n個(gè)業(yè)務(wù)數(shù)據(jù)中,僅存在m(m為小于n的整數(shù))個(gè)業(yè)務(wù)數(shù)據(jù)對(duì)應(yīng)的存儲(chǔ)地址與重建區(qū)域之間的地址偏移量不大于預(yù)設(shè)閾值時(shí),剩余的n-m個(gè)業(yè)務(wù)數(shù)據(jù)可繼續(xù)保留在緩存單元中,m個(gè)業(yè)務(wù)數(shù)據(jù)及對(duì)應(yīng)的目標(biāo)存儲(chǔ)地址可作清除處理。如此,直到緩存單元中累計(jì)的業(yè)務(wù)數(shù)據(jù)或存儲(chǔ)地址的個(gè)數(shù)再次達(dá)到預(yù)設(shè)數(shù)量時(shí),執(zhí)行與上述步驟103至步驟106的技術(shù)方案,直到檢測出不存在重建進(jìn)程重建待管理磁盤時(shí),才以相應(yīng)的處理規(guī)則將緩存單元中存儲(chǔ)的各個(gè)業(yè)務(wù)數(shù)據(jù)全部寫入磁盤。

具體地,如圖4所示,當(dāng)檢測出不存在重建進(jìn)程重建待管理磁盤時(shí),為了節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,該磁盤管理裝置可進(jìn)一步包括:隊(duì)列構(gòu)建模塊401和第二數(shù)據(jù)處理模塊402,其中,

所述隊(duì)列構(gòu)建模塊401,用于當(dāng)不存在重建進(jìn)程重建所述待管理磁盤時(shí),利用各個(gè)所述存儲(chǔ)地址形成第二順序隊(duì)列;

所述第二數(shù)據(jù)處理模塊402,用于根據(jù)所述第二順序隊(duì)列,依次將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中。

同時(shí),所述待管理磁盤可以包括:設(shè)定數(shù)量個(gè)獨(dú)立存儲(chǔ)區(qū)域,且每一個(gè)所述存儲(chǔ)區(qū)域分別對(duì)應(yīng)一個(gè)順序號(hào);所述存儲(chǔ)地址,包括:順序號(hào)。

例如,緩存單元中存儲(chǔ)有業(yè)務(wù)數(shù)據(jù)A、業(yè)務(wù)數(shù)據(jù)B和業(yè)務(wù)數(shù)據(jù)C,存儲(chǔ)區(qū)域有6個(gè)獨(dú)立存儲(chǔ)區(qū)域,其順序號(hào)分別為1-6,且三個(gè)業(yè)務(wù)數(shù)據(jù)A、B、C分別對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)1、順序號(hào)6和順序號(hào)3,則根據(jù)其順序號(hào),將業(yè)務(wù)數(shù)據(jù)A-業(yè)務(wù)數(shù)據(jù)C-業(yè)務(wù)數(shù)據(jù)B依次寫入待管理磁盤中,磁頭根據(jù)此順序,從順序號(hào)1對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域移動(dòng)至順序號(hào)3對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域,然后再移動(dòng)至順序號(hào)6對(duì)應(yīng)的獨(dú)立存儲(chǔ)區(qū)域,從而使磁頭移動(dòng)距離最短,節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,提高數(shù)據(jù)處理速度。

進(jìn)一步的,為了避免磁頭在各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生往復(fù)運(yùn)動(dòng),進(jìn)一步節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,以進(jìn)一步提高磁盤重建效率,本發(fā)明一個(gè)實(shí)施例中,所述第一數(shù)據(jù)處理模塊306,包括:隊(duì)列構(gòu)建單元(附圖中未示出)和數(shù)據(jù)處理單元(附圖中未示出);其中,

所述隊(duì)列構(gòu)建單元,用于按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列;

所述數(shù)據(jù)處理單元,用于根據(jù)所述第一順序隊(duì)列,依次將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤。

這里以待管理磁盤包括設(shè)定數(shù)量個(gè)獨(dú)立存儲(chǔ)區(qū)域,且每一個(gè)獨(dú)立存儲(chǔ)區(qū)域分別對(duì)應(yīng)一個(gè)順序號(hào);且存儲(chǔ)地址包括順序號(hào)為例。舉例來說,待管理磁盤中設(shè)定有20個(gè)獨(dú)立存儲(chǔ)區(qū)域,其中,第10個(gè)獨(dú)立存儲(chǔ)區(qū)域?yàn)橹亟▍^(qū)域,在緩存單元中,業(yè)務(wù)數(shù)據(jù)包括:業(yè)務(wù)數(shù)據(jù)A、業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)D和業(yè)務(wù)數(shù)據(jù)E,其分別對(duì)應(yīng)的存儲(chǔ)地址為順序號(hào)17、順序號(hào)7、順序號(hào)5、順序號(hào)13和順序號(hào)6,這里以預(yù)設(shè)位置為5進(jìn)行舉例,則目標(biāo)存儲(chǔ)地址包括:順序號(hào)7、順序號(hào)5、順序號(hào)13和順序號(hào)6,根據(jù)各個(gè)目標(biāo)存儲(chǔ)地址的地址先后順序,形成第一順序隊(duì)列為:業(yè)務(wù)數(shù)據(jù)C-業(yè)務(wù)數(shù)據(jù)E-業(yè)務(wù)數(shù)據(jù)B-業(yè)務(wù)數(shù)據(jù)D,在根據(jù)此順序隊(duì)列依次將各個(gè)業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤時(shí),磁頭根據(jù)此順序,從重建區(qū)域出發(fā),在按照對(duì)應(yīng)順序號(hào)順序?yàn)?-6-7-13的各個(gè)獨(dú)立存儲(chǔ)區(qū)域中順序移動(dòng),從而避免磁頭在各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生往復(fù)運(yùn)動(dòng),進(jìn)一步節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,進(jìn)而進(jìn)一步提高了磁盤重建效率。應(yīng)當(dāng)理解的是,業(yè)務(wù)數(shù)據(jù)A及其對(duì)應(yīng)的存儲(chǔ)地址(順序號(hào)17)可暫時(shí)保留在緩存單元中,業(yè)務(wù)數(shù)據(jù)B、業(yè)務(wù)數(shù)據(jù)C、業(yè)務(wù)數(shù)據(jù)D和業(yè)務(wù)數(shù)據(jù)E及其分別對(duì)應(yīng)的存儲(chǔ)地址均可做刪除處理。

進(jìn)一步節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,進(jìn)而進(jìn)一步提高了磁盤重建效率。

上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。

另外,本發(fā)明實(shí)施例提供了一種可讀介質(zhì),包括執(zhí)行指令,當(dāng)存儲(chǔ)控制器的處理器執(zhí)行所述執(zhí)行指令時(shí),所述存儲(chǔ)控制器執(zhí)行本發(fā)明任一實(shí)施例提供的磁盤管理方法。

本發(fā)明實(shí)施例還提供了一種存儲(chǔ)控制器,包括:處理器、存儲(chǔ)器和總線;

所述處理器和所述存儲(chǔ)器通過所述總線連接;

所述存儲(chǔ)器,當(dāng)所述存儲(chǔ)控制器運(yùn)行時(shí),所述處理器執(zhí)行所述存儲(chǔ)器存儲(chǔ)的所述執(zhí)行指令,以使所述存儲(chǔ)控制器執(zhí)行本發(fā)明任一實(shí)施例提供的磁盤管理方法。

綜上所述,本發(fā)明各個(gè)實(shí)施例至少具有如下有益效果:

1、本發(fā)明一實(shí)施例中,通過緩存單元緩存多個(gè)業(yè)務(wù)數(shù)據(jù)及每一個(gè)業(yè)務(wù)數(shù)據(jù)分別對(duì)應(yīng)的存儲(chǔ)地址,當(dāng)存在重建進(jìn)程正在重建待管理磁盤時(shí),對(duì)重建進(jìn)程進(jìn)行掛起處理,并確定出正在重建的數(shù)據(jù)對(duì)應(yīng)的重建區(qū)域,然后從緩存單元存儲(chǔ)的各個(gè)存儲(chǔ)地址中確定出至少一個(gè)距離重建區(qū)域的地址偏移量不大于預(yù)設(shè)閾值的目標(biāo)存儲(chǔ)地址,進(jìn)而將各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入待管理磁盤,然后再重啟重建進(jìn)程。如此,通過將緩存單元存儲(chǔ)的多個(gè)業(yè)務(wù)數(shù)據(jù)中,距離重建區(qū)域較近的各個(gè)目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)優(yōu)先寫入磁盤,磁頭在重建區(qū)域以及各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生移動(dòng),移動(dòng)距離較近,不會(huì)占用較長的響應(yīng)時(shí)間,可提高磁盤重建效率。

2、本發(fā)明一實(shí)施例中,按照地址先后順序,利用各個(gè)所述目標(biāo)存儲(chǔ)地址形成第一順序隊(duì)列,并根據(jù)所述第一順序隊(duì)列,依次將各個(gè)所述目標(biāo)存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤。從而避免磁頭在各個(gè)目標(biāo)存儲(chǔ)地址之間發(fā)生往復(fù)運(yùn)動(dòng),節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,進(jìn)一步提高了磁盤重建效率。

3、本發(fā)明一實(shí)施例中,當(dāng)檢測出不存在重建進(jìn)程重建待管理磁盤時(shí),利用各個(gè)所述存儲(chǔ)地址形成第二順序隊(duì)列,并根據(jù)所述第二順序隊(duì)列,依次將各個(gè)所述存儲(chǔ)地址分別對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)寫入所述待管理磁盤中,從而使磁頭移動(dòng)距離最短,節(jié)約移動(dòng)磁頭時(shí)占用的時(shí)間開銷,提高數(shù)據(jù)處理速度。

需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。

最后需要說明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
长宁区| 隆德县| 河池市| 榕江县| 山东省| 缙云县| 都江堰市| 阿拉善左旗| 筠连县| 崇州市| 乐亭县| 龙川县| 讷河市| 横峰县| 武夷山市| 醴陵市| 锦州市| 汾阳市| 乌海市| 普安县| 河津市| 金湖县| 灌南县| 常山县| 神木县| 苏州市| 菏泽市| 恩施市| 克拉玛依市| 淳安县| 铁岭市| 拉孜县| 电白县| 玛多县| 昌宁县| 驻马店市| 江源县| 府谷县| 弋阳县| 大港区| 紫阳县|