亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

存儲(chǔ)的處理方法、裝置和存儲(chǔ)設(shè)備的制造方法_2

文檔序號(hào):8258254閱讀:來源:國(guó)知局
recording,簡(jiǎn)稱SMR)硬盤,其中,X為硬盤的整數(shù)容量,y為硬盤的零散容量,零散容量是在硬盤生產(chǎn)時(shí)就產(chǎn)生的,并且,每個(gè)硬盤的零散容量可能不同,也可能相同。存儲(chǔ)設(shè)備中的每個(gè)硬盤的整數(shù)容量包括N個(gè)分塊,對(duì)于N和分塊的容量大小可以根據(jù)實(shí)際情況來調(diào)整,本發(fā)明中不加以限制。
[0046]在本實(shí)施例中,硬盤的容量越大,則一個(gè)硬盤故障便意味著較大的容量的損失,但是,實(shí)際上大部分的硬盤故障,只是某個(gè)磁頭或某個(gè)碟片發(fā)生故障,其余的磁頭或碟片可以繼續(xù)使用,即硬盤中的某個(gè)分塊發(fā)生故障,而其它沒有發(fā)生故障的分塊仍然可以使用。在本實(shí)施例中,當(dāng)磁盤陣列控制器檢測(cè)到存儲(chǔ)設(shè)備中的一個(gè)或者多個(gè)硬盤發(fā)生故障,例如,該硬盤中的數(shù)據(jù)無(wú)法讀寫,則查找發(fā)生故障的分塊,并將該發(fā)生故障的分塊確定為第一分塊。
[0047]需要說明的是,第一硬盤為存儲(chǔ)設(shè)備中發(fā)生故障的硬盤,第一硬盤可以為一個(gè)發(fā)生故障的硬盤,也可以為多個(gè)發(fā)生故障的硬盤。
[0048]步驟102、在存儲(chǔ)設(shè)備的冗余容量池中獲取第二分塊。
[0049]其中,第二分塊的容量不小于第一分塊的容量,冗余容量池包括多個(gè)硬盤的零散容量。
[0050]在本實(shí)施例中,將存儲(chǔ)設(shè)備中的所有硬盤的零散容量作為存儲(chǔ)設(shè)備的冗余容量池,冗余容量池中不存儲(chǔ)數(shù)據(jù),將冗余容量池的容量作為存儲(chǔ)設(shè)備的冗余容量,可對(duì)存儲(chǔ)設(shè)備進(jìn)行擴(kuò)容。并且,將存儲(chǔ)設(shè)備中的硬盤的整數(shù)容量作為存儲(chǔ)設(shè)備的主存儲(chǔ)容量池,由于每個(gè)硬盤的整數(shù)容量被劃分為多個(gè)分塊,則主存儲(chǔ)容量池中也包括若干的分塊。當(dāng)存儲(chǔ)設(shè)備發(fā)生故障時(shí),查找到發(fā)生故障的分塊,即第一分塊,在冗余容量池中獲取與第一分塊的容量大小相等的分塊,即第二分塊。
[0051]圖4為硬盤故障前的容量分配示意圖。圖5為硬盤故障后的容量分配示意圖。如圖4所示,存儲(chǔ)設(shè)備中包括η個(gè)硬盤,將每個(gè)硬盤的整數(shù)容量X構(gòu)建主存儲(chǔ)容量池,即主存儲(chǔ)容量池的容量為ηΧ,并在整數(shù)容量中存儲(chǔ)數(shù)據(jù);將每個(gè)硬盤的零散容量構(gòu)建冗余容量池,即冗余容量池的容量為yl+y2+y3+…yn,零散容量中沒有存儲(chǔ)數(shù)據(jù),用于對(duì)存儲(chǔ)設(shè)備進(jìn)行擴(kuò)容。如圖5所示,當(dāng)硬盤m發(fā)生故障時(shí),找到硬盤m的整數(shù)容量中發(fā)生故障的分塊作為第一分塊,該第一分塊的容量為Q,則在冗余容量池中獲取Q大小的容量,并將該Q大小的容量作為主存儲(chǔ)容量池的容量,則主存儲(chǔ)容量池中的容量不變,仍然為nX,但冗余容量池中的容量變?yōu)閥l+y2+y3+…yn_Q。
[0052]需要說明的是,在本實(shí)施例中,發(fā)生故障的硬盤中,發(fā)生故障的分塊不能使用,而未發(fā)生故障的分塊可以繼續(xù)使用。
[0053]步驟103、重構(gòu)第一分塊中的數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到第二分塊中。
[0054]在本實(shí)施例中,重構(gòu)第一分塊中存儲(chǔ)的數(shù)據(jù),將重構(gòu)的數(shù)據(jù)存儲(chǔ)到第二分塊中,以便于當(dāng)?shù)谝环謮K在下一次被訪問時(shí),可以到第二分塊中訪問數(shù)據(jù)。對(duì)于重構(gòu)第一分塊中的數(shù)據(jù)的方法,可采用現(xiàn)有技術(shù)中數(shù)據(jù)的重構(gòu)方法,例如,采用傳統(tǒng)的獨(dú)立磁盤冗余數(shù)組(Redundant Array of Independent Disks Vers1nl.0,簡(jiǎn)稱 RAIDl.0)技術(shù)或者是RAID2.0技術(shù)等,重構(gòu)故障區(qū)域的數(shù)據(jù)。
[0055]現(xiàn)有技術(shù)中對(duì)于出現(xiàn)故障的硬盤,維護(hù)人員需要使用新的硬盤來更換故障硬盤,由于硬盤故障率遠(yuǎn)高于普通硬件的故障率,且硬盤發(fā)貨量極大,所以將產(chǎn)生較高的維護(hù)費(fèi)用,而且,對(duì)于出現(xiàn)故障的硬盤,直接使用新的硬盤來更換故障硬盤,另外,更換硬盤時(shí)需要進(jìn)行熱拔插,所以需要設(shè)計(jì)拉手條,增加設(shè)備成本。但是,本發(fā)明實(shí)施例提供的存儲(chǔ)的處理方法,將硬盤固定在存儲(chǔ)設(shè)備的內(nèi)部,例如,采用一體化設(shè)計(jì),存儲(chǔ)設(shè)備中的所有硬盤做成一體,與硬盤框硬連接,所有硬盤不可拔插;或者,將硬盤分組,多個(gè)硬盤組成一個(gè)硬盤組,硬盤組整體在硬盤框上可拔插,硬盤組內(nèi)的硬盤不可拔插。并且,本發(fā)明實(shí)施例中,利用硬盤的零散容量對(duì)存儲(chǔ)設(shè)備進(jìn)行擴(kuò)容,當(dāng)硬盤的發(fā)生故障時(shí),只需要在冗余容量池中獲取與發(fā)生故障的分塊的容量大小相對(duì)應(yīng)的第二分塊來代替故障分塊,將第一分塊中的數(shù)據(jù)重構(gòu)到第二分塊中,實(shí)現(xiàn)了數(shù)據(jù)的備份和恢復(fù),因此,本實(shí)施提供的存儲(chǔ)的處理方法,不需要維護(hù)人員對(duì)存儲(chǔ)設(shè)備中的故障硬盤進(jìn)行更換,因此,有效節(jié)省了維護(hù)成本和硬件成本。
[0056]本實(shí)施例提供的存儲(chǔ)的處理方法,硬盤固定在存儲(chǔ)設(shè)備的內(nèi)部,當(dāng)多個(gè)硬盤中的第一硬盤發(fā)生故障時(shí),確定發(fā)生故障的分塊為第一分塊,并在存儲(chǔ)設(shè)備的冗余容量池中獲取第二分塊,重構(gòu)第一分塊中的數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到第二分塊中。本發(fā)明實(shí)施例中由于將硬盤的零散容量作為存儲(chǔ)設(shè)備的冗余容量池,當(dāng)硬盤發(fā)生故障時(shí),只需要在冗余容量池中獲取與發(fā)生故障的分塊的容量大小相對(duì)的應(yīng)第二分塊,并將重構(gòu)數(shù)據(jù)存儲(chǔ)到第二分塊中,有效利用了硬盤的零散容量對(duì)存儲(chǔ)設(shè)備進(jìn)行擴(kuò)容,因此,不需要維護(hù)人員對(duì)存儲(chǔ)設(shè)備中的故障硬盤進(jìn)行更換,有效節(jié)省了維護(hù)成本和硬件成本。
[0057]圖6為本發(fā)明實(shí)施例二提供的存儲(chǔ)的處理方法流程圖。如圖6所示,該方法包括:
[0058]步驟201、將多個(gè)硬盤的整數(shù)容量的所有分塊,劃分為M個(gè)分塊組,并為每個(gè)分塊組分配一個(gè)邏輯單元號(hào)LUN。
[0059]其中,M為正整數(shù),且M彡N。
[0060]在本實(shí)施例中,將存儲(chǔ)設(shè)備中不同的硬盤的整數(shù)容量的分塊進(jìn)行劃分,以組成分塊組,即每個(gè)分塊組中包括了不同硬盤中的分塊,并為每個(gè)分塊組分配一個(gè)邏輯單元號(hào)(Logical Unit Number,簡(jiǎn)稱LUN),以便于對(duì)分塊組進(jìn)行管理。
[0061]步驟202、當(dāng)存儲(chǔ)設(shè)備中的第一硬盤發(fā)生故障時(shí),確定發(fā)生故障的分塊為第一分塊。
[0062]步驟203、在存儲(chǔ)設(shè)備的冗余容量池中獲取第二分塊。
[0063]其中,第二分塊的容量不小于第一分塊的容量,冗余容量池包括多個(gè)硬盤的零散容量。
[0064]在本實(shí)施例中,步驟202和步驟203分別和上述實(shí)施例一種的步驟101和步驟102的實(shí)現(xiàn)原理相同,此處不再贅述。
[0065]步驟204、建立邏輯區(qū)塊地址(Logical Block Address,簡(jiǎn)稱LBA)映射表。
[0066]其中,LBA映射表用于存儲(chǔ)所述第一分塊的LBA與所述第二分塊的LBA之間的映射關(guān)系。
[0067]在本實(shí)施例中,每一個(gè)分塊中包括至少一個(gè)邏輯區(qū)塊,每一個(gè)邏輯區(qū)塊對(duì)應(yīng)一個(gè)LBA,則每一個(gè)分塊的LBA即為該分塊包括的邏輯區(qū)塊的LBA,因此,每一個(gè)分塊可能對(duì)應(yīng)一個(gè)LBA,可能對(duì)應(yīng)多個(gè)LBA。當(dāng)從冗余容量池中獲取到第二分塊之后,需要建立第一分塊的LBA和第二分塊的LBA之間的映射關(guān)系,并將該映射關(guān)系存儲(chǔ)到LBA映射表中。當(dāng)下一次訪問到該發(fā)生故障的分塊時(shí),可以根據(jù)第一分塊的LBA和第二分塊的LBA之間的映射關(guān)系,從LBA映射表中查找到第二分塊的LBA,并在第二分塊中訪問數(shù)據(jù)。
[0068]步驟205、根據(jù)分塊組的LUN,重構(gòu)第一分塊中的數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到第二分塊中。
[0069]在本實(shí)施例中,根據(jù)分塊組的LUN,對(duì)個(gè)分塊組進(jìn)行邏輯運(yùn)算,以重構(gòu)第一分塊中的數(shù)據(jù),并將重構(gòu)數(shù)據(jù)存儲(chǔ)到第二分塊中。
[0070]具體的,可采用RAID2.0技術(shù)重構(gòu)數(shù)據(jù),將硬盤的整數(shù)容量先按照固定的容量切割成多個(gè)分塊(Chunk,通常為64MB),并將這些小分塊進(jìn)行分組已形成不同RAID類型的分塊組(Chunk Group),每個(gè)分塊組對(duì)應(yīng)一個(gè)LUN,且每個(gè)分塊組中包括不同硬盤的整數(shù)容量中的分塊。當(dāng)存儲(chǔ)設(shè)備中的某一個(gè)硬盤發(fā)生故障后,查找到故障分塊所在的分塊組,即可根據(jù)LUN來查找第一分塊所在的分塊組,在該分塊組中的各分塊之間進(jìn)行邏輯運(yùn)算,對(duì)發(fā)生故障的分塊進(jìn)行重構(gòu),從而大大降低重構(gòu)時(shí)間,減少重構(gòu)整個(gè)硬盤數(shù)據(jù)使得重構(gòu)窗口擴(kuò)大而導(dǎo)致的數(shù)據(jù)丟失風(fēng)險(xiǎn),在硬盤容量大幅增加的同時(shí)確保存儲(chǔ)系統(tǒng)的性能和可靠性。
[0071]可選地,在本實(shí)施例中,分別采用主容量管理表和冗余容量管理表對(duì)主存儲(chǔ)容量池和冗余容量池進(jìn)行管理。當(dāng)從冗余容量池中獲取第二數(shù)據(jù)塊之后,將主容量管理表中的第一數(shù)據(jù)塊的LBA映射到第二數(shù)據(jù)塊的LBA,即步驟205,建立LBA映射表的過程。并且,在將數(shù)據(jù)存儲(chǔ)到第二分塊中之后,還需要在冗余容量管理表中將第二數(shù)據(jù)塊的LBA刪除,以防止下一次硬盤故障時(shí),將故障分塊的LBA映射到該第二數(shù)據(jù)塊的LBA。
[0072]本實(shí)施例提供的存儲(chǔ)的處理方法,將多個(gè)硬盤的整數(shù)容量的分塊,劃分為M個(gè)分塊組,并為每個(gè)分塊組分配一個(gè)邏輯單元號(hào)LUN,當(dāng)存儲(chǔ)設(shè)備中的第一硬盤發(fā)生故障時(shí),確定發(fā)生故障的分塊為第一分塊,在冗余容量池中獲取第二分塊,并建立LBA映射表,根據(jù)分塊組的LUN,重構(gòu)第一分塊中的數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到第二分塊中。本實(shí)施例中,有效利用了硬盤的零散容量對(duì)存儲(chǔ)設(shè)備進(jìn)行擴(kuò)容
當(dāng)前第2頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1