一種硬盤的處理方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及通信網(wǎng)絡技術領域,尤其涉及一種硬盤的處理方法及裝置。
【背景技術】
[0002]隨著硬盤的存儲陣列的發(fā)展,硬盤的容量也越來越大,雖然硬盤的制作工藝已經(jīng)達到了很高的水平,但是依然不能避免硬盤中產(chǎn)生LSE(Latent Sector Error,潛在扇區(qū)錯誤)。當硬盤中出現(xiàn)LSE時,硬盤不會主動上報扇區(qū)中的壞道,只有在主機讀到硬盤中產(chǎn)生壞道的位置的時候,才會發(fā)現(xiàn)硬盤壞道,因為不能及時發(fā)現(xiàn)硬盤壞道,導致存儲陣列的可靠性很低。
[0003]為了發(fā)現(xiàn)硬盤中的壞道,通常采用全盤掃描的方法,按從前到后的順序對硬盤中的每個LBA (Logical Block Address,邏輯區(qū)塊地址)逐一掃描,在掃描過程中如果發(fā)現(xiàn)硬盤壞道,則對壞道進行修復。然而,隨著硬盤容量的增大,按照全盤掃描的方法發(fā)現(xiàn)壞道則需要消耗較長的時間,導致發(fā)現(xiàn)硬盤壞道的效率低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的實施例提供一種硬盤的處理方法及裝置,可以解決發(fā)現(xiàn)硬盤壞道的效率低的問題。
[0005]第一方面,本發(fā)明的實施例提供一種硬盤的處理方法,所述硬盤包括至少兩個區(qū)域,每個區(qū)域的大小相同,每個區(qū)域由大小相同的至少兩個數(shù)據(jù)塊組成,所述方法包括:
[0006]確定掃描所述硬盤的起始數(shù)據(jù)塊;
[0007]從所述起始數(shù)據(jù)塊開始對所述硬盤進行跳躍掃描操作,所述跳躍掃描操作為每間隔預設值的區(qū)間掃描一個數(shù)據(jù)塊的操作,所述預設值的區(qū)間為所述跳躍掃描操作掃描數(shù)據(jù)塊的間隔區(qū)間;
[0008]發(fā)現(xiàn)第一壞道,暫停所述跳躍掃描操作;
[0009]對所述第一壞道進行修復,同時對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作,所述順序掃描操作為按照預定順序掃描所述數(shù)據(jù)塊的剩余部分的操作,直至完成對所述數(shù)據(jù)塊的掃描以及完成對所述數(shù)據(jù)塊中所有壞道的修復;
[0010]從與所述第一壞道所屬數(shù)據(jù)塊間隔預設值的區(qū)間的數(shù)據(jù)塊開始繼續(xù)進行所述跳躍掃描操作,直至完成所述硬盤的最后一個區(qū)域中的數(shù)據(jù)塊的掃描及修復。
[0011 ] 在第一種可能的實施例中,結合第一方面,所述對所述第一壞道進行修復,同時對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作,所述順序掃描操作為按照從前到后的順序掃描所述數(shù)據(jù)塊的剩余部分的操作,直至完成對所述數(shù)據(jù)塊的掃描以及完成對所述數(shù)據(jù)塊中所有壞道的修復,包括:
[0012]對所述第一壞道進行修復,同時對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作;
[0013]對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行所述順序掃描操作的過程中,發(fā)現(xiàn)第N壞道,N為大于I的整數(shù),則對所述第N壞道進行修復,同時對所述數(shù)據(jù)塊的剩余部分進行所述順序掃描操作,直至完成對所述數(shù)據(jù)塊的掃描以及完成對所述數(shù)據(jù)塊中所有壞道的修復。
[0014]在第二種可能的實施例中,結合第一方面或者第一方面中第一種可能的實施例,在所述對所述第一壞道進行修復,同時對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作,所述順序掃描操作為按照從前到后的順序掃描所述數(shù)據(jù)塊的剩余部分的操作,直至完成對所述數(shù)據(jù)塊的掃描以及完成對所述數(shù)據(jù)塊中所有壞道的修復之后,所述方法還包括:
[0015]對所述第一壞道所屬數(shù)據(jù)塊前后預設范圍內(nèi)的數(shù)據(jù)塊進行所述順序掃描操作。
[0016]在第三種可能的實施例中,結合第一方面中第二種可能的實施例,在所述確定掃描所述硬盤的起始數(shù)據(jù)塊之前,所述方法還包括:
[0017]確定所述硬盤中已分配數(shù)據(jù)的區(qū)域;
[0018]所述從所述起始數(shù)據(jù)塊開始對所述硬盤進行跳躍掃描操作,包括:
[0019]從所述起始數(shù)據(jù)塊開始對所述硬盤中已分配數(shù)據(jù)的區(qū)域進行所述跳躍掃描操作。
[0020]在第四種可能的實施例中,結合第一方面或第一方面中第三種可能的實施例,所述預設值為一個區(qū)域的容量與兩個數(shù)據(jù)塊的容量的差值。
[0021]第二方面,本發(fā)明實施例提供一種硬盤的處理裝置,所述硬盤包括至少兩個區(qū)域,每個區(qū)域的大小相同,每個區(qū)域由大小相同的至少兩個數(shù)據(jù)塊組成,所述裝置包括:
[0022]第一確定單元,用于確定掃描所述硬盤的起始數(shù)據(jù)塊;
[0023]跳躍掃描單元,用于從所述第一確定單元確定的起始數(shù)據(jù)塊開始對所述硬盤進行跳躍掃描操作,所述跳躍掃描操作為每間隔預設值的區(qū)間掃描一個數(shù)據(jù)塊的操作,所述預設值的區(qū)間為所述跳躍掃描操作掃描數(shù)據(jù)塊的間隔區(qū)間;發(fā)現(xiàn)第一壞道,暫停所述跳躍掃描操作;
[0024]修復單元,用于對所述第一壞道進行修復;
[0025]順序掃描單元,用于對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作,所述順序掃描操作為按照預定順序掃描所述數(shù)據(jù)塊的剩余部分的操作;
[0026]所述跳躍掃描單元,還用于從與所述第一壞道所屬數(shù)據(jù)塊間隔預設值的區(qū)間的數(shù)據(jù)塊開始繼續(xù)進行所述跳躍掃描操作,直至完成所述硬盤的最后一個區(qū)域中的數(shù)據(jù)塊的掃描。
[0027]在第一種可能的實施例中,結合第二方面,
[0028]所述順序掃描單元,還用于對所述第一壞道所屬數(shù)據(jù)塊的剩余部分進行所述順序掃描操作的過程中,發(fā)現(xiàn)第N壞道,N為大于I的整數(shù);
[0029]所述修復單元,還用于對所述順序掃描單元發(fā)現(xiàn)的所述第N壞道進行修復。
[0030]在第二種可能的實施例中,結合第二方面或第二方面中的第一種可能的實施例,
[0031]所述順序掃描單元,還用于對所述第一壞道所屬數(shù)據(jù)塊前后預設范圍內(nèi)的數(shù)據(jù)塊進行所述順序掃描操作。
[0032]在第三種可能的實施例中,結合第二方面中第二種可能的實施例,所述裝置還包括:第二確定單元;
[0033]第二確定單元,用于確定所述硬盤中已分配數(shù)據(jù)的區(qū)域;
[0034]所述跳躍掃描單元,還用于從所述第一確定單元確定的所述起始數(shù)據(jù)塊開始對所述硬盤中已分配數(shù)據(jù)的區(qū)域進行所述跳躍掃描操作。
[0035]在第四種可能的實施例中,結合第二方面或第二方面中第三種可能的實施例,所述預設值為一個區(qū)域的容量與兩個數(shù)據(jù)塊的容量的差值。
[0036]本發(fā)明實施例提供的硬盤的處理方法及裝置,通過確定起始數(shù)據(jù)塊,從起始數(shù)據(jù)塊開始對硬盤進行跳躍掃描操作;發(fā)現(xiàn)第一壞道,暫停跳躍掃描操作,然后對第一壞道進行修復,同時對第一壞道所屬數(shù)據(jù)塊的剩余部分進行順序掃描操作,直至完成對該數(shù)據(jù)塊的掃描以及完成對該數(shù)據(jù)塊中所有壞道的修復,然后從第一壞道所屬數(shù)據(jù)塊開始繼續(xù)進行跳躍掃描操作,直至完成硬盤的最后一個區(qū)域中數(shù)據(jù)塊的掃描及修復。采用跳躍掃描的方法不需要對全盤進行掃描,與順序掃描相比縮短了發(fā)現(xiàn)壞道的時間。且壞道的產(chǎn)生具有一定的規(guī)律,當硬盤中出現(xiàn)一個壞道后,在該壞道附近產(chǎn)生壞道的可能性會增高,所以發(fā)現(xiàn)第一壞道后,第一壞道所屬數(shù)據(jù)塊中出現(xiàn)壞道的可能性增高,順序掃描第一壞道所屬數(shù)據(jù)塊的剩余部分,可以使發(fā)現(xiàn)壞道的速度更快,提高了發(fā)現(xiàn)硬盤壞道的效率。
【附圖說明】
[0037]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0038]圖1為本發(fā)明實施例提供的一種硬盤的處理方法的流程圖;
[0039]圖2為本發(fā)明實施例提供的一種硬盤的處理方法的示意圖;
[0040]圖3為本發(fā)明實施例提供的另一種硬盤的處理方法流程圖;
[0041]圖4為本發(fā)明實施例提供的一種數(shù)據(jù)塊的示意圖;
[0042]圖5為本發(fā)明實施例提供的又一種硬盤的處理方法流程圖;
[0043]圖6為本發(fā)明實施例提供的另一種硬盤的處理方法的示意圖;
[0044]圖7為本發(fā)明實施例提供的一種硬盤的處理裝置的邏輯結構示意圖;
[0045]圖8為本發(fā)明實施例提供的另一種硬盤的處理裝置的邏輯結構示意圖;
[0046]圖9為本發(fā)明實施例提供的硬盤的處理方法中處理設備的邏輯結構示意圖。
【具體實施方式】
[0047]下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0048]本發(fā)明適用于可以對硬盤進行處理的處理設備,每個硬盤包括至少兩個區(qū)域,每個區(qū)域的大小相同,每個區(qū)域由大小相同的至少兩個數(shù)據(jù)塊組成,本發(fā)明提供一種硬盤的處理方法,該方法可以應用于RAID (Redundant Arrays of Independent Disks,磁盤陣列)1.0陣列、RAID2.0陣列等陣列中,如圖1所示,該方法包括:
[0049]101、確定掃描硬盤的起始數(shù)據(jù)塊。
[0050]102、從起始數(shù)據(jù)塊開始對硬盤進行跳躍掃描操作,跳躍掃描操作為每間隔預設值的區(qū)間掃描一個數(shù)據(jù)塊的操作,預設值的區(qū)間為跳躍掃描操作掃描數(shù)據(jù)塊的間隔區(qū)間