本發(fā)明涉及數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域,具體涉及一種基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法和存儲(chǔ)控制裝置。
背景技術(shù):
硬盤一般包括固態(tài)硬盤(SSD)和機(jī)械硬盤(HDD),SSD采用閃存來(lái)存儲(chǔ),HDD采用磁性碟片來(lái)存儲(chǔ)。隨著SSD的成熟,基于SSD+HDD混合介質(zhì)的存儲(chǔ)產(chǎn)品應(yīng)用越來(lái)越廣泛。
基于混合存儲(chǔ)產(chǎn)品的讀寫技術(shù)有讀緩存、寫緩存和數(shù)據(jù)分層幾種,對(duì)于寫緩存緩存來(lái)說(shuō),把數(shù)據(jù)暫時(shí)存儲(chǔ)在SSD里面,這些數(shù)據(jù)還沒有存儲(chǔ)到HDD里面,對(duì)于數(shù)據(jù)分層來(lái)說(shuō),存儲(chǔ)在SSD里面的數(shù)據(jù)并不會(huì)存儲(chǔ)到HDD里面。然而對(duì)于SSD而言,其中采用的NAND flash有一個(gè)很重要的特性,即其Program/Erase cycle(擦寫次數(shù))具有限制,即每個(gè)NAND flash只有有限的擦寫次數(shù)。比如,目前業(yè)界普遍采用的MLC(Multi-Level Cell)NAND flash,其擦寫次數(shù)的限制次數(shù)是3000至5000次。一旦擦寫次數(shù)用完,SSD的使用壽命也就達(dá)到極限,會(huì)造成存儲(chǔ)用戶數(shù)據(jù)丟失。
現(xiàn)有技術(shù)中,為了保證數(shù)據(jù)的安全,會(huì)周期性的讀取混合存儲(chǔ)產(chǎn)品中各個(gè)SSD的剩余壽命,當(dāng)某個(gè)SSD的剩余壽命較少時(shí),便將其提前取下,并安裝替換的SSD。
但是,取下的SSD實(shí)際上還可以進(jìn)行多次讀寫,并且,讀取到的SSD的剩余壽命只是一個(gè)經(jīng)驗(yàn)值,而不是該SSD實(shí)際的剩余壽命,即使讀取到的剩余壽命顯示該SSD的使用壽命到期了,該SSD的實(shí)際使用壽命也不一定達(dá)到極限,還可以進(jìn)行多次擦寫。因此,根據(jù)SSD的剩余壽命來(lái)對(duì)其進(jìn)行提前更換,會(huì)浪費(fèi)SSD擦寫次數(shù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法和存儲(chǔ)控制裝置,用于解決在SSD的擦寫次數(shù)到達(dá)極限之前便對(duì)其進(jìn)行更換所導(dǎo)致的浪費(fèi)問(wèn)題。
為達(dá)到上述目的,本發(fā)明實(shí)施例的一方面提供了一種基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法,所述混合存儲(chǔ)產(chǎn)品包括第一固態(tài)硬盤SSD,所述方法包括:
獲取所述第一SSD的剩余壽命;
判斷所述第一SSD的剩余壽命是否小于或等于第二壽命閾值;
若是,則在所述第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間,為第二數(shù)據(jù)分配存儲(chǔ)空間,所述第一數(shù)據(jù)為寫緩存數(shù)據(jù)和/或數(shù)據(jù)分層數(shù)據(jù),所述第二數(shù)據(jù)為讀緩存數(shù)據(jù)。
結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述混合存儲(chǔ)產(chǎn)品還包括機(jī)械硬盤HDD和第二SSD,所述在所述第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間包括:
將所述第一SSD中的所述第一數(shù)據(jù)存儲(chǔ)于所述HDD中,并且當(dāng)接收到所述第一數(shù)據(jù)時(shí),將所述接收到的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中。
結(jié)合第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第二種可能的實(shí)現(xiàn)方式中,在所述判斷所述第一SSD的剩余壽命是否小于或等于第二壽命閾值之前,所述方法還包括:
判斷第一SSD的剩余壽命是否小于或等于第一壽命閾值,所述第一壽命閾值大于所述第二壽命閾值;
若是,則觸發(fā)所述判斷所述第一SSD的剩余壽命是否小于或等于第二壽命閾值的步驟;
在所述判斷所述第一SSD的剩余壽命是否小于或等于第二壽命閾值之后,若判定所述第一SSD的剩余壽命大于第二壽命閾值,則減小所述第一SSD中為所述第一數(shù)據(jù)分配的存儲(chǔ)空間。
結(jié)合第一方面,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述混合存儲(chǔ)產(chǎn)品還包括第二固態(tài)硬盤SSD,若判定所述第一SSD的剩余壽命小于或等于第二壽命閾值,且所述第二SSD的剩余壽命大于所述第二SSD的第三壽命閾值,所述方法還包括:
增大所述第二SSD中為所述第一數(shù)據(jù)分配的存儲(chǔ)空間。
結(jié)合第一方面的第三種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述混合存儲(chǔ)產(chǎn)品還包括HDD和第二SSD,所述在所述第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間包括:
將所述第一SSD中的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中,并且當(dāng)接收到所述第一數(shù)據(jù)時(shí),將所述接收到的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中。
結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式、第一方面的第二種可能的實(shí)現(xiàn)方式、第一方面的第三種可能的實(shí)現(xiàn)方式和第一方面的第四種可能的實(shí)現(xiàn)方式之中任一種可能的實(shí)現(xiàn)方式,在第一方面的第五種可能的實(shí)現(xiàn)方式中,若判定所述第一SSD的剩余壽命小于或等于第二壽命閾值,所述為第二數(shù)據(jù)分配存儲(chǔ)空間包括:
增大所述第一SSD中為所述第二數(shù)據(jù)分配的存儲(chǔ)空間。
本發(fā)明實(shí)施例的第二方面提供了一種存儲(chǔ)控制模塊,用于控制包括第一SSD的混合存儲(chǔ)產(chǎn)品,包括:
獲取單元,用于獲取所述第一SSD的剩余壽命;
第一判斷單元,用于判斷所述第一SSD的剩余壽命是否小于或等于第二壽命閾值;
第一分配單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于第二壽命閾值時(shí),在所述第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間,所述第一數(shù)據(jù)為寫緩存數(shù)據(jù)和/或數(shù)據(jù)分層數(shù)據(jù);
第二分配單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于第二壽命閾值時(shí),為第二數(shù)據(jù)分配存儲(chǔ)空間,所述第二數(shù)據(jù)為讀緩存數(shù)據(jù)。
結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述混合存儲(chǔ)產(chǎn)品還包括機(jī)械硬盤HDD和第二SSD,其特征在于,所述第一分配單元包括:
第一存儲(chǔ)子單元,用于將所述第一SSD中的所述第一數(shù)據(jù)存儲(chǔ)于所述HDD中;
第二存儲(chǔ)子單元,用于當(dāng)接收到所述第一數(shù)據(jù)時(shí),將所述接收到的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中。
結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述存儲(chǔ)控制模塊還包括:
第二判斷單元,用于判斷第一SSD的剩余壽命是否小于或等于第一壽命閾值,所述第一壽命閾值大于所述第二壽命閾值;
觸發(fā)單元,用于當(dāng)所述第二判斷單元判定所述第一SSD的剩余壽命小于或等于所述第一壽命閾值時(shí),觸發(fā)所述第一判斷單元;
第三分配單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命大于第二壽命閾值時(shí),減小所述第一SSD中為所述第一數(shù)據(jù)分配的存儲(chǔ)空間。
結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式,所述混合存儲(chǔ)產(chǎn)品還包括第二SSD,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述存儲(chǔ)控制模塊還包括:
第四分配單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值,且所述第二SSD的剩余壽命大于第二SSD的第三壽命閾值時(shí),增大所述第二SSD中為所述第一數(shù)據(jù)分配的存儲(chǔ)空間。
結(jié)合第二方面的第三種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述混合存儲(chǔ)產(chǎn)品還包括HDD和第二SSD,所述第一分配單元包括:
第三分配子單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值時(shí),將所述第一SSD中的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中;
第四分配子單元,用于在所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值之后,在接收到所述第一數(shù)據(jù)時(shí),將所述接收到的所述第一數(shù)據(jù)存儲(chǔ)于所述第二SSD中。
結(jié)合第二方面、第二方面的第一種可能的實(shí)現(xiàn)方式、第二方面的第二種可能的實(shí)現(xiàn)方式、第二方面的第三種可能的實(shí)現(xiàn)方式和第二方面的第四種可能的實(shí)現(xiàn)方式中任一種可能的實(shí)現(xiàn)方式,在第二方面的第五種可能的實(shí)現(xiàn)方式中,所述第二分配單元包括:
第五分配子單元,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值時(shí),增大所述第一SSD中為所述第二數(shù)據(jù)分配的存儲(chǔ)空間。
從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):
本發(fā)明實(shí)施例可以獲取混合存儲(chǔ)產(chǎn)品中第一SSD的剩余壽命,并在第一SSD的剩余壽命小于或等于第二壽命閾值時(shí),不為第一數(shù)據(jù)分配存儲(chǔ)空間,為第二數(shù)據(jù)分配存儲(chǔ)空間,其中第一數(shù)據(jù)為寫緩存數(shù)據(jù)和/或數(shù)據(jù)分層數(shù)據(jù),第二數(shù)據(jù)為讀緩存數(shù)據(jù),這樣,若第一數(shù)據(jù)未在混合存儲(chǔ)產(chǎn)品中第一SSD以外的其他存儲(chǔ)區(qū)域進(jìn)行存儲(chǔ),而第二數(shù)據(jù)在混合存儲(chǔ)產(chǎn)品中第一SSD以外的其他存儲(chǔ)區(qū)域進(jìn)行存儲(chǔ),就能夠在第一SSD的使用壽命即將達(dá)到極限的情況下,不再利用第一SSD存儲(chǔ)第一數(shù)據(jù),只存儲(chǔ)第二數(shù)據(jù),能夠在保證用戶數(shù)據(jù)安全的前提下,充分利用第一SSD的使用壽命,減少對(duì)第一SSD的浪費(fèi)。
附圖說(shuō)明
圖1是本發(fā)明基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法一個(gè)實(shí)施例示意圖;
圖2是本發(fā)明基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法另一個(gè)實(shí)施例示意圖;
圖3是本發(fā)明基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法另一個(gè)實(shí)施例示意圖;
圖4是本發(fā)明存儲(chǔ)控制裝置一個(gè)實(shí)施例示意圖;
圖5是本發(fā)明存儲(chǔ)控制裝置另一個(gè)實(shí)施例示意圖;
圖6是本發(fā)明存儲(chǔ)控制裝置另一個(gè)實(shí)施例示意圖。
具體實(shí)施方式
本發(fā)明實(shí)施例提供了一種基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法和存儲(chǔ)控制裝置,用于充分利用混合存儲(chǔ)產(chǎn)品中SSD的使用壽命。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分的實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
本發(fā)明的說(shuō)明書和權(quán)利要求書及上述附圖中的術(shù)語(yǔ)“第一”、“第二”、“第三”、“第四”等(如果存在)是用于區(qū)別類似的對(duì)象,而不必用于描述特定的順序或先后次序。應(yīng)該理解這樣使用的數(shù)據(jù)在適當(dāng)情況下可以互換,以便這里描述的實(shí)施例能夠以除了在這里圖示或描述的內(nèi)容以外的順序?qū)嵤4送?,術(shù)語(yǔ)“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過(guò)程、方法、系統(tǒng)、產(chǎn)品或設(shè)備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過(guò)程、方法、產(chǎn)品或設(shè)備固有的其它步驟或單元。
存儲(chǔ)產(chǎn)品使用的存儲(chǔ)介質(zhì)不同,該存儲(chǔ)產(chǎn)品所展現(xiàn)出來(lái)的性能也不同。比如,SSD采用NAND flash進(jìn)行存儲(chǔ),而HDD是采用磁性碟片來(lái)進(jìn)行存儲(chǔ),SSD和HDD相比,SSD的優(yōu)點(diǎn)包括讀寫速度快、防震抗摔性好、低功耗、無(wú)噪音等,而SSD的缺點(diǎn)包括容量較小、具有使用壽命限制、售價(jià)高等。為了綜合使用性能不同的兩種或多種存儲(chǔ)產(chǎn)品,可以將性能不同的兩種或多種存儲(chǔ)介質(zhì)集成在一起,也就得到了混合存儲(chǔ)產(chǎn)品。目前市面上最常見的混合存儲(chǔ)產(chǎn)品由SSD和HDD組成,可以結(jié)合HDD和SSD兩者所長(zhǎng)來(lái)增強(qiáng)存儲(chǔ)產(chǎn)品的性能。
基于混合存儲(chǔ)產(chǎn)品的讀寫技術(shù)主要有讀緩存、寫緩存和數(shù)據(jù)分層幾種:
讀緩存:在基于混合存儲(chǔ)介質(zhì)的存儲(chǔ)系統(tǒng)(或者說(shuō)混合存儲(chǔ)產(chǎn)品)中,把經(jīng)常讀取的熱數(shù)據(jù)緩存到高速的存儲(chǔ)介質(zhì)里面,當(dāng)下次再讀取相同數(shù)據(jù)的時(shí)候,就直接從高速的存儲(chǔ)介質(zhì)讀取,以提升讀取速度,真正的數(shù)據(jù)是存儲(chǔ)在低速的存儲(chǔ)介質(zhì)里面的,高速介質(zhì)里面緩存的數(shù)據(jù)只不過(guò)是低速介質(zhì)中數(shù)據(jù)的一個(gè)拷貝,所以即使高速介質(zhì)中的數(shù)據(jù)丟了,也沒關(guān)系,客戶的數(shù)據(jù)還在。
寫緩存:在基于混合存儲(chǔ)介質(zhì)的存儲(chǔ)系統(tǒng)中,寫數(shù)據(jù)的時(shí)候,先把數(shù)據(jù)寫入到高速的存儲(chǔ)介質(zhì),就直接給上層應(yīng)用返回寫入成功,使得寫入性能非常高,然后再逐漸地把數(shù)據(jù)從高速存儲(chǔ)介質(zhì)回寫到低速大容量的存儲(chǔ)介質(zhì),數(shù)據(jù)在沒回寫到低速的存儲(chǔ)介質(zhì)之前,只存在于高速的存儲(chǔ)介質(zhì)當(dāng)中,如果高速存儲(chǔ)介質(zhì)中的數(shù)據(jù)丟了,那數(shù)據(jù)就真正丟了。
數(shù)據(jù)分層:在基于混合存儲(chǔ)介質(zhì)的存儲(chǔ)系統(tǒng)中,將高速和低速的存儲(chǔ)介質(zhì)劃分成多個(gè)層次,高速和低速的存儲(chǔ)介質(zhì)都是用來(lái)保存數(shù)據(jù),熱數(shù)據(jù)保存在高速的介質(zhì)上面,冷數(shù)據(jù)保存在低速的介質(zhì)上面,數(shù)據(jù)要么保存在高速介質(zhì),那么保存在低速介質(zhì),如果保存在高速存儲(chǔ)介質(zhì)中的數(shù)據(jù)丟了,那就真正丟了。
高速的存儲(chǔ)介質(zhì)通常指具有讀寫次數(shù)限制的存儲(chǔ)介質(zhì),由這種存儲(chǔ)介質(zhì)組成的硬盤,比如SSD。而低速的存儲(chǔ)介質(zhì)通常指沒有讀寫次數(shù)限制的存儲(chǔ)介質(zhì),由這種存儲(chǔ)介質(zhì)組成的硬盤,比如HDD。本發(fā)明實(shí)施例以由SSD和HDD組成的混合存儲(chǔ)產(chǎn)品為例進(jìn)行說(shuō)明,并且,由于SSD的容量較小,混合存儲(chǔ)產(chǎn)品通常由多塊SSD組成。混合存儲(chǔ)產(chǎn)品一般采用“讀緩存+寫緩存”的技術(shù)組合,或者“讀緩存+寫緩存+數(shù)據(jù)分層”的技術(shù)組合。若按照“讀緩存+寫緩存”的技術(shù)組合,混合存儲(chǔ)產(chǎn)品中的SSD通常被劃分為兩部分進(jìn)行使用,分別用于讀緩存和寫緩存,即分別存儲(chǔ)讀緩存數(shù)據(jù)和寫緩存數(shù)據(jù);若按照“讀緩存+寫緩存+數(shù)據(jù)分層”的技術(shù)組合,SSD通常被劃分為三部分來(lái)進(jìn)行使用,分別用于讀緩存、寫緩存和數(shù)據(jù)分層,即分別存儲(chǔ)讀緩存數(shù)據(jù)、寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù)。
對(duì)于讀緩存來(lái)說(shuō),SSD中存儲(chǔ)的數(shù)據(jù)只是HDD中數(shù)據(jù)的一個(gè)拷貝,對(duì)于寫緩存緩存來(lái)說(shuō),把數(shù)據(jù)暫時(shí)存儲(chǔ)在SSD里面,這些數(shù)據(jù)還沒有存儲(chǔ)到HDD里面,對(duì)于數(shù)據(jù)分層來(lái)說(shuō),存儲(chǔ)在SSD里面的數(shù)據(jù)并不會(huì)存儲(chǔ)到HDD里面。然而對(duì)于SSD而言,其中采用的NAND flash有一個(gè)很重要的特性,即其Program/Erase cycle(擦寫次數(shù))具有限制,即每個(gè)NAND flash只有有限的擦寫次數(shù)。比如,目前業(yè)界普遍采用的MLC(Multi-Level Cell)NAND flash,其擦寫次數(shù)的限制次數(shù)是3000至5000次。一旦擦寫次數(shù)用完,SSD的使用壽命也就達(dá)到極限,會(huì)造成SSD中存儲(chǔ)的寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù)丟失。為了保證數(shù)據(jù)的安全,就需要周期性的讀取混合存儲(chǔ)產(chǎn)品中各個(gè)SSD的剩余壽命,并提前更換使用壽命快到期的SSD。但是取下的SSD實(shí)際上還可以進(jìn)行多次讀寫。并且,讀取到的SSD的剩余壽命只是一個(gè)參考值,剩余壽命顯示該SSD的使用壽命到期了,SSD并不一定會(huì)損壞,根據(jù)測(cè)試數(shù)據(jù),一些SSD,當(dāng)讀取到的剩余壽命已經(jīng)顯示該SSD到期后,還能繼續(xù)使用,甚至寫入的數(shù)據(jù)量已經(jīng)超過(guò)其標(biāo)稱壽命的100%了,該SSD還沒有損壞。也就是說(shuō),即使SSD快到期了,還是有很大的潛力可以挖掘的。
但是,對(duì)于快到期的SSD,用來(lái)存儲(chǔ)數(shù)據(jù)又不放心,直接丟棄不用了,又比較浪費(fèi)。本發(fā)明提供的一種基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法和存儲(chǔ)控制裝置,用于解決這個(gè)兩難的問(wèn)題。由于SSD中存儲(chǔ)的讀緩存數(shù)據(jù)只是HDD中數(shù)據(jù)的一個(gè)拷貝,SSD的實(shí)際使用壽命到達(dá)極限時(shí),用戶的讀緩存數(shù)據(jù)沒有丟失,因此,在SSD的剩余壽命即將到期時(shí),只要不在該SSD上存儲(chǔ)寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù),只用于存儲(chǔ)讀緩存數(shù)據(jù),便能安全充分的利用SSD的使用壽命。
為了便于本領(lǐng)域技術(shù)人員的理解,本發(fā)明通過(guò)以下實(shí)施例對(duì)本發(fā)明提供的技術(shù)方案的具體實(shí)現(xiàn)過(guò)程進(jìn)行說(shuō)明,需要說(shuō)明的是,本發(fā)明基于的混合存儲(chǔ)產(chǎn)品至少包括。
請(qǐng)參閱圖1,本發(fā)明實(shí)施例中基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法一個(gè)實(shí)施例包括:
101、獲取第一SSD的剩余壽命;
存儲(chǔ)控制模塊可以周期性的獲取第一SSD的剩余壽命,作為舉例,獲取周期可以為1周。
102、判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若是,則執(zhí)行步驟103,若否,則執(zhí)行步驟104;
存儲(chǔ)控制模塊在獲取到第一SSD的剩余壽命之后,可以判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若是,則執(zhí)行步驟103,若否,則執(zhí)行步驟104。
103、在第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間,為第二數(shù)據(jù)分配存儲(chǔ)空間;
若判定第一SSD的剩余壽命小于或等于第二壽命閾值,則在第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間,為第二數(shù)據(jù)分配存儲(chǔ)空間,其中所述第一數(shù)據(jù)為寫緩存數(shù)據(jù)和/或數(shù)據(jù)分層數(shù)據(jù),所述第二數(shù)據(jù)為讀緩存數(shù)據(jù)。也就是說(shuō),將第一SSD中已存儲(chǔ)的第一數(shù)據(jù)寫入混合存儲(chǔ)產(chǎn)品的其他硬盤中,比如第二SSD或者HDD中,并且不再向第一SSD中寫入第一數(shù)據(jù),而為在第一SSD中為第二數(shù)據(jù)分配的存儲(chǔ)空間,可以為第一SSD的部分或全部存儲(chǔ)空間,可以理解的是,這里所說(shuō)的存儲(chǔ)空間是指可用于讀緩存、寫緩存或數(shù)據(jù)分層的可用存儲(chǔ)空間。
104、執(zhí)行其他操作。
若判定第一SSD的剩余壽命大于第二壽命閾值,則可以執(zhí)行步驟103以外的其他操作,比如繼續(xù)獲取混合存儲(chǔ)產(chǎn)品中其他SSD,如第二SSD的剩余壽命。
本發(fā)明實(shí)施例在第一SSD的剩余壽命小于或等于第二壽命閾值時(shí),不為第一數(shù)據(jù)分配存儲(chǔ)空間,為第二數(shù)據(jù)分配存儲(chǔ)空間,能夠在第一SSD的使用壽命即將達(dá)到極限的情況下,不再利用第一SSD存儲(chǔ)第一數(shù)據(jù),只存儲(chǔ)第二數(shù)據(jù),能夠在保證用戶數(shù)據(jù)安全的前提下,充分利用第一SSD的擦寫次數(shù),減少浪費(fèi)。
請(qǐng)參閱圖2,本發(fā)明實(shí)施例中,混合存儲(chǔ)產(chǎn)品包括HDD、第一SSD和第二SSD,基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法另一個(gè)實(shí)施例包括:
201、獲取第一SSD的剩余壽命;
HDD的存儲(chǔ)控制模塊可以周期性的獲取第一SSD的剩余壽命,作為舉例,獲取周期可以為1周。
將此時(shí)第一SSD中讀緩存分區(qū)占用的存儲(chǔ)空間稱作第一讀緩存存儲(chǔ)空間,第一SSD中寫緩存分區(qū)占用的存儲(chǔ)空間稱作第一寫緩存存儲(chǔ)空間,第一SSD中數(shù)據(jù)分層分區(qū)占用的存儲(chǔ)空間稱作第一數(shù)據(jù)分層存儲(chǔ)空間,將第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間二者一共占用的存儲(chǔ)空間稱作第一寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間。在混合存儲(chǔ)產(chǎn)品中記錄有各個(gè)SSD的分區(qū)所占用的存儲(chǔ)空間情況,作為舉例,第一SSD中各個(gè)分區(qū)所占用的存儲(chǔ)空間情況可以采取表1所示的分區(qū)標(biāo)記表來(lái)記錄。讀緩存分區(qū)所占用的存儲(chǔ)空間由物理塊0、物理塊4、物理塊5、物理塊9等物理塊組成,寫緩存分區(qū)所占用的存儲(chǔ)空間由物理塊1、物理塊2、物理塊8等物理塊組成,數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間由物理塊3、物理塊6、物理塊7、物理塊10等物理塊組成。可見,每個(gè)SSD中各個(gè)分區(qū)的存儲(chǔ)空間可以不連續(xù)。將第一讀緩存存儲(chǔ)空間、第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間所占用的總存儲(chǔ)空間稱作可用總空間,假設(shè)第一讀緩存存儲(chǔ)空間在可用總空間中所占的比例為20%,第一寫緩存存儲(chǔ)空間在可用總空間中所占的比例為30%,第一數(shù)據(jù)分層存儲(chǔ)空間在可用總空間所占的比例為50%。
表1
202、判斷第一SSD的剩余壽命是否小于或等于第一壽命閾值,若是,則執(zhí)行步驟203,若否,則執(zhí)行步驟204;
獲取到第一SSD的剩余壽命之后,可以將第一SSD的剩余壽命與預(yù)存的第一壽命閾值進(jìn)行比較,判斷第一SSD的剩余壽命是否小于或等于第一壽命閾值,若小于或等于第一壽命閾值,則執(zhí)行步驟203,若大于第一壽命閾值,則執(zhí)行步驟204。
203、判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若是,則執(zhí)行步驟205,若否,則執(zhí)行步驟208;
若判定第一SSD的剩余壽命小于或等于第一壽命閾值,則將第一SSD的剩余壽命與預(yù)存的第二壽命閾值進(jìn)行比較,其中第二壽命閾值小于第一壽命閾值,判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值。若小于或等于,則執(zhí)行步驟205,若大于,則執(zhí)行步驟207。
204、執(zhí)行其他操作;
若第一SSD的剩余壽命大于第一壽命閾值,則繼續(xù)判斷其他SSD的剩余壽命,比如第二SSD的剩余壽命。
205、將第一SSD中的第一數(shù)據(jù)存儲(chǔ)在HDD中;
若判定第一SSD的剩余壽命小于或等于第二壽命閾值,則判定第一SSD中的數(shù)據(jù)處于容易丟失的狀態(tài),此時(shí),可以將第一SSD中寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間大小降為零,也就是說(shuō),在第一SSD中不為寫緩存和數(shù)據(jù)分層分配存儲(chǔ)空間,相應(yīng)的,可以將第一SSD中已存儲(chǔ)的第一數(shù)據(jù)存儲(chǔ)在HDD中,也就是說(shuō)將第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間中的寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù)寫入HDD中。具體的,可以為:在判定第一SSD的剩余壽命小于或等于第二壽命閾值之后,此時(shí)第一SSD中的數(shù)據(jù)處于容易丟失的狀態(tài),此時(shí)可以按照表1,將標(biāo)記為寫緩存和數(shù)據(jù)分層的物理塊中的數(shù)據(jù)均寫入HDD中。
206、將接收到的第一數(shù)據(jù)存儲(chǔ)于第二SSD中;
若判定第一SSD的剩余壽命小于或等于第二壽命閾值,則判定第一SSD中的數(shù)據(jù)處于容易丟失的狀態(tài),此時(shí),可以將第一SSD中寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間大小降為零,也就是說(shuō),在第一SSD中不為寫緩存和數(shù)據(jù)分層分配存儲(chǔ)空間,相應(yīng)的,可以在接收第一數(shù)據(jù)的存儲(chǔ)請(qǐng)求時(shí),將接收到的第一數(shù)據(jù)存儲(chǔ)在第二SSD中,而不再存儲(chǔ)到第一SSD中,具體的可以為:按照表1,將標(biāo)記為寫緩存和數(shù)據(jù)分層的物理塊的寫緩存分區(qū)標(biāo)記和數(shù)據(jù)分層分區(qū)標(biāo)記去除,如表2。此時(shí)第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間在可用總空間中所占的比例均為0。這樣,在接收第一數(shù)據(jù)的存儲(chǔ)請(qǐng)求時(shí),將不會(huì)將接收到的第一數(shù)據(jù)存儲(chǔ)在第一SSD中。
表2
207、將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第三讀緩存存儲(chǔ)空間;
在步驟205之后,第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間為可用存儲(chǔ)空間。為了擴(kuò)大讀緩存分區(qū)的存儲(chǔ)空間,可以將部分或全部第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間分配給讀緩存,將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第三讀緩存存儲(chǔ)空間。這樣,可以有更多的熱數(shù)據(jù)寫入讀緩存分區(qū),加快數(shù)據(jù)讀取速度。為了最大限度的利用第一SSD,可以將全部第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間均分配給讀緩存,具體的,可以將分區(qū)標(biāo)記為空的物理塊標(biāo)記為讀緩存,參閱表3,或者,也可以在步驟205中,直接將物理塊的寫緩存分區(qū)標(biāo)記和數(shù)據(jù)分層分區(qū)標(biāo)記改為讀緩存標(biāo)記。此時(shí)第一讀緩存存儲(chǔ)空間在可用總空間中所占的比例為100%。
表3
208、將第一SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間減小為第二寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間;
若判定第一SSD的剩余壽命小于或等于第一壽命閾值,且大于第二壽命閾值,表明此時(shí)第一SSD中的數(shù)據(jù)暫時(shí)安全,但是第一SSD的使用壽命即將到達(dá)極限,為了避免第一SSD的剩余壽命低于第二壽命閾值時(shí),寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間大小被降為零導(dǎo)致的寫緩存和數(shù)據(jù)分層的性能大幅減退,可以將第一SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間分別減小為第二寫緩存存儲(chǔ)空間和第二數(shù)據(jù)分層存儲(chǔ)空間,第二寫緩存存儲(chǔ)空間和第二數(shù)據(jù)分層存儲(chǔ)空間一共占用的存儲(chǔ)空間稱作第二寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間,第二寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間的大小小于第一寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間的大小,且不為0。若被收回的存儲(chǔ)單元存儲(chǔ)有寫緩存數(shù)據(jù)或數(shù)據(jù)分層數(shù)據(jù),會(huì)將這些數(shù)據(jù)寫入HDD中。具體的,可以將按照表1,將部分標(biāo)記為寫緩存和數(shù)據(jù)分層的物理塊中的數(shù)據(jù)寫入HDD中(若物理塊中寫有數(shù)據(jù)),之后,可以將相應(yīng)的物理塊的寫緩存分區(qū)標(biāo)記和數(shù)據(jù)分層分區(qū)標(biāo)記去除。假設(shè)調(diào)整后第一寫緩存存儲(chǔ)空間在可用總空間中所占的比例為10%,第一數(shù)據(jù)分層存儲(chǔ)空間在可用總空間所占的比例為30%,
209、將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第二讀緩存存儲(chǔ)空間。
在步驟207之后,寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間減小,就會(huì)新增一些可用的存儲(chǔ)空間,為了擴(kuò)大讀緩存分區(qū)的存儲(chǔ)空間,可以將部分或全部新增的可用的存儲(chǔ)空間分配給讀緩存,將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第二讀緩存存儲(chǔ)空間。為了最大限度的利用第一SSD,可以將新增的可用的存儲(chǔ)空間全部分配給讀緩存,參見表4,第一讀緩存存儲(chǔ)空間在可用總空間中所占的比例為60%。
表4
需要說(shuō)明的是,第一壽命閾值和第二壽命閾值將剩余壽命分成三個(gè)區(qū)間,即大于第一壽命閾值、小于或等于第一壽命閾值且大于第二壽命閾值、小于或等于第二壽命閾值。在實(shí)際使用中,也可以先判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若大于,再判斷剩余壽命是否小于或等于第一壽命閾值,本發(fā)明實(shí)施例中提到的這兩個(gè)判斷過(guò)程的先后執(zhí)行順序,此處不做限定,只要能夠確定獲取的第一SSD的剩余壽命處于哪個(gè)區(qū)間即可。
由于混合存儲(chǔ)產(chǎn)品包括HDD、第一SSD和第二SSD,即使第一SSD的剩余壽命小于或等于第二壽命閾值,寫緩存和數(shù)據(jù)分層還可以繼續(xù)使用第二SSD中的存儲(chǔ)空間,第二SSD并未限定為一塊SSD,可以為一塊、兩塊或更多的SSD,假設(shè)第二SSD的剩余壽命大于第三壽命閾值,第三壽命閾值可以與第一壽命閾值相同,也可以不同,只要第二SSD的剩余壽命大于第三壽命閾值時(shí),能夠表明第二SSD的使用壽命未接近極限即可,具體取值不做限定。為了維持寫緩存和數(shù)據(jù)分層的性能,本發(fā)明可以將第一SSD中寫緩存和數(shù)據(jù)分層減少的存儲(chǔ)空間在第二SSD中進(jìn)行補(bǔ)償,盡量維持在所有SSD中所占存儲(chǔ)空間的比例不變。具體過(guò)程如下,請(qǐng)參閱圖3,本發(fā)明實(shí)施例中基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法另一個(gè)實(shí)施例包括:
301、獲取第一SSD的剩余壽命;
HDD的存儲(chǔ)控制模塊可以周期性的獲取第一SSD的剩余壽命,作為舉例,獲取周期可以為1周。
將此時(shí)第一SSD中讀緩存分區(qū)占用的存儲(chǔ)空間稱作第一SSD的第一讀緩存存儲(chǔ)空間,第一SSD中寫緩存分區(qū)占用的存儲(chǔ)空間稱作第一SSD的第一寫緩存存儲(chǔ)空間,第一SSD中數(shù)據(jù)分層分區(qū)占用的存儲(chǔ)空間稱作第一數(shù)據(jù)分層存儲(chǔ)空間,將第一SSD的第一寫緩存存儲(chǔ)空間和第一SSD的第一數(shù)據(jù)分層存儲(chǔ)空間二者一共占用的存儲(chǔ)空間稱作第一SSD的第一寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間。將此時(shí)第二SSD中讀緩存分區(qū)占用的存儲(chǔ)空間稱作第二SSD的第一讀緩存存儲(chǔ)空間,將第二SSD中寫緩存分區(qū)占用的存儲(chǔ)空間稱作第二SSD的第一寫緩存存儲(chǔ)空間,將第二SSD中數(shù)據(jù)分層分區(qū)占用的存儲(chǔ)空間稱作第二SSD的第一數(shù)據(jù)分層存儲(chǔ)空間,將第二SSD的第一寫緩存存儲(chǔ)空間和第二SSD的第一數(shù)據(jù)分層存儲(chǔ)空間二者一共占用的存儲(chǔ)空間稱作第二SSD的第二寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間。
302、判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若是,則執(zhí)行步驟303,若否,則執(zhí)行步驟307;
獲取到第一SSD的剩余壽命之后,可以將第一SSD的剩余壽命與預(yù)存的第二壽命閾值進(jìn)行比較,判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值,若小于或等于第二壽命閾值,則執(zhí)行步驟303,若大于第一壽命閾值,則執(zhí)行步驟306。
303、將第二SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間增大至第二SSD的第三寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間;
在第二SSD中為寫緩存和數(shù)據(jù)分層分配更多的存儲(chǔ)空間,將第二SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間分別增大至第二SSD的第三寫緩存存儲(chǔ)空間和第二SSD的第三數(shù)據(jù)分層存儲(chǔ)空間,第二SSD的第三寫緩存存儲(chǔ)空間和第二SSD的第三數(shù)據(jù)分層存儲(chǔ)空間一共占用的存儲(chǔ)空間稱作第二SSD的第三寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間,相應(yīng)的,第二SSD的讀緩存分區(qū)所占用的第二SSD的第一存儲(chǔ)空間減小為第二SSD的第三存儲(chǔ)空間。
優(yōu)選的,第二SSD的第三寫緩存存儲(chǔ)空間與第二SSD的第一寫緩存存儲(chǔ)空間大小的差值,為第一SSD的第一寫緩存存儲(chǔ)空間的大小;第二SSD的第三數(shù)據(jù)分層存儲(chǔ)空間與第二SSD的第一數(shù)據(jù)分層存儲(chǔ)空間大小的差值,為第一SSD的第一數(shù)據(jù)分層存儲(chǔ)空間的大小,第二SSD的第一讀緩存存儲(chǔ)空間與第二SSD的第三讀緩存存儲(chǔ)空間的大小的差值,為第二SSD的第三寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間與第二SSD的第一寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間的大小的差值。相應(yīng)的,可以將第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間中的寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù)寫入第二SSD中,寫入的過(guò)程可以為先寫入HDD中,然后在第二SSD中的重新分區(qū)調(diào)整結(jié)束后,再將這些數(shù)據(jù)寫入第二SSD中。
304、將第一SSD中的第一數(shù)據(jù)存儲(chǔ)在第二SSD中;
若判定第一SSD的剩余壽命小于或等于第二壽命閾值,則判定第一SSD中的數(shù)據(jù)處于容易丟失的狀態(tài),此時(shí),可以將第一SSD中寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間大小降為零,也就是說(shuō),在第一SSD中不為寫緩存和數(shù)據(jù)分層分配存儲(chǔ)空間,相應(yīng)的,可以將第一SSD中已存儲(chǔ)的第一數(shù)據(jù)存儲(chǔ)在H第二SSD中,也就是說(shuō)將第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間中的寫緩存數(shù)據(jù)和數(shù)據(jù)分層數(shù)據(jù)寫入第二SSD中。
305、將接收到的第一數(shù)據(jù)存儲(chǔ)于第二SSD中;
若判定第一SSD的剩余壽命小于或等于第二壽命閾值,則判定第一SSD中的數(shù)據(jù)處于容易丟失的狀態(tài),此時(shí),可以將第一SSD中寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間大小降為零,也就是說(shuō),在第一SSD中不為寫緩存和數(shù)據(jù)分層分配存儲(chǔ)空間,相應(yīng)的,可以在接收第一數(shù)據(jù)的存儲(chǔ)請(qǐng)求時(shí),將接收到的第一數(shù)據(jù)存儲(chǔ)在第二SSD中,而不再存儲(chǔ)到第一SSD中。
306、將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第三讀緩存存儲(chǔ)空間;
在步驟305之后,第一SSD的第一寫緩存存儲(chǔ)空間和第一數(shù)據(jù)分層存儲(chǔ)空間為可用存儲(chǔ)空間,可以將第一SSD的第一寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間分配給讀緩存,將第二SSD的讀緩存存儲(chǔ)空間中存儲(chǔ)的讀緩存數(shù)據(jù)寫入第一SSD中。
307、執(zhí)行其他操作。
若第一SSD的剩余壽命大于第一壽命閾值,則繼續(xù)判斷其他SSD的剩余壽命。
上面對(duì)本發(fā)明實(shí)施例中的方法進(jìn)行了描述,下面對(duì)本發(fā)明實(shí)施例中的裝置進(jìn)行描述。
請(qǐng)參閱圖4,本發(fā)明實(shí)施例中基于混合存儲(chǔ)產(chǎn)品的存儲(chǔ)控制方法的一個(gè)實(shí)施例包括:
獲取單元401,用于獲取第一SSD的剩余壽命。
第一判斷單元402,用于判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值。
第一分配單元403,用于當(dāng)?shù)谝慌袛鄦卧卸ǖ谝籗SD的剩余壽命小于或等于第二壽命閾值時(shí),在第一SSD中不為第一數(shù)據(jù)分配存儲(chǔ)空間。
第二分配單元404,用于當(dāng)?shù)谝慌袛鄦卧卸ǖ谝籗SD的剩余壽命小于或等于第二壽命閾值時(shí),在第一SSD中為第二數(shù)據(jù)分配存儲(chǔ)空間。
本實(shí)施例中的存儲(chǔ)控制模塊各單元間的關(guān)系參照?qǐng)D1對(duì)應(yīng)的實(shí)施例,此處不再贅述。
請(qǐng)參閱圖5,本發(fā)明實(shí)施例中存儲(chǔ)控制模塊的另一個(gè)實(shí)施例包括:
獲取單元501,用于獲取第一SSD的剩余壽命。
第二判斷單元502,用于判斷第一SSD的剩余壽命是否小于或等于第一壽命閾值,所述第一壽命閾值大于所述第二壽命閾值。
第一判斷單元503,用于當(dāng)?shù)诙袛鄦卧?02判定第一SSD的剩余壽命小于或等于第一壽命閾值時(shí),判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值。
第一存儲(chǔ)子單元504,用于當(dāng)?shù)谝慌袛鄦卧?03判定第一SSD的剩余壽命是否小于或等于第二壽命閾值時(shí),將第一SSD中的第一數(shù)據(jù)存儲(chǔ)在HDD中。
第二存儲(chǔ)子單元505,用于當(dāng)?shù)谝籗SD的剩余壽命是否小于或等于第二壽命閾值時(shí),在接收到第一數(shù)據(jù)之后,將接收到的第一數(shù)據(jù)存儲(chǔ)于第二SSD中。
第五分配子單元506,用于當(dāng)?shù)谝籗SD的剩余壽命是否小于或等于第二壽命閾值時(shí),將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第三讀緩存存儲(chǔ)空間。
第三分配單元507,用于將第一SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)所占用的存儲(chǔ)空間減小為第二寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間。
第五分配單元508,用于將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第二讀緩存存儲(chǔ)空間。
本實(shí)施例中的存儲(chǔ)控制模塊各單元間的關(guān)系參照?qǐng)D2對(duì)應(yīng)的實(shí)施例,此處不再贅述。
請(qǐng)參閱圖6,本發(fā)明實(shí)施例中NAND閃存控制器600的一個(gè)實(shí)施例包括:
獲取單元601,用于獲取第一SSD的剩余壽命。
第一判斷單元602,用于判斷第一SSD的剩余壽命是否小于或等于第二壽命閾值。
第四分配單元603,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值,且所述第二SSD的剩余壽命大于第二SSD的第三壽命閾值時(shí),將第二SSD中的寫緩存分區(qū)和數(shù)據(jù)分層分區(qū)的存儲(chǔ)空間增大至第二SSD的第三寫數(shù)據(jù)與數(shù)據(jù)分層存儲(chǔ)空間。
第三分配子單元604,用于當(dāng)所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值時(shí),將第一SSD中的第一數(shù)據(jù)存儲(chǔ)在第二SSD中。
第四分配子單元605,用于在所述第一判斷單元判定所述第一SSD的剩余壽命小于或等于所述第二壽命閾值之后,在接收到所述第一數(shù)據(jù)時(shí),將接收到的第一數(shù)據(jù)存儲(chǔ)于第二SSD中。
第五分配子單元606,用于將第一SSD中的讀緩存分區(qū)的存儲(chǔ)空間增大至第三讀緩存存儲(chǔ)空間。
本實(shí)施例中的存儲(chǔ)控制模塊各單元間的關(guān)系參照?qǐng)D3對(duì)應(yīng)的實(shí)施例,此處不再贅述。
本發(fā)明的存儲(chǔ)控制模塊可以安裝于主機(jī)中。
在本申請(qǐng)所提供目標(biāo)區(qū)域可以為默認(rèn)的區(qū)域,也可以為用戶預(yù)設(shè)的區(qū)域。并且,所述的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過(guò)其它的方式實(shí)現(xiàn)。例如,以上所描述的裝置實(shí)施例僅僅是示意性的,例如,單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過(guò)一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部單元來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:U盤、移動(dòng)硬盤、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。