本技術(shù)涉及計算機,具體涉及一種數(shù)據(jù)存儲方法、裝置以及設(shè)備。
背景技術(shù):
1、計算機技術(shù)的發(fā)展和在各領(lǐng)域的廣泛應用,產(chǎn)生了大量的數(shù)據(jù)存儲需求。磁盤(disk)存儲是常用的數(shù)據(jù)存儲方式。磁盤存儲數(shù)據(jù)的能耗較高,使得能源成本(例如電費等)成為數(shù)據(jù)中心運維重點關(guān)注的對象。
2、存儲池(storage?pool)多采用獨立冗余磁盤陣列(redundant?arrays?ofindependent?disks,raid)架構(gòu)。目前,存儲池在工作時,將待存儲的數(shù)據(jù)均勻打散并存儲到存儲池中的各個磁盤中。也就是說,存儲池中各個磁盤處于輸入輸出(input?output,io)請求的概率是相同的。這導致存儲池中所有磁盤都處于工作狀態(tài),從而使得存儲池能耗較大。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供了一種數(shù)據(jù)存儲方法、裝置以及設(shè)備,可降低存儲池能耗。
2、第一方面,提供了一種數(shù)據(jù)存儲方法,該方法應用于管理裝置,管理裝置用于管理存儲池,存儲池包括第一磁盤組和第二磁盤組;其中,第一磁盤組中的磁盤處于工作狀態(tài),用于處理輸入輸出io請求;第二磁盤組中的磁盤處于休眠狀態(tài);該方法包括:獲取第一磁盤組中磁盤的狀態(tài),磁盤的狀態(tài)包括磁盤的磨損度、磁盤的端口帶寬利用率、磁盤的空間利用率中的一種或任意多種的組合;當?shù)谝淮疟P組中的磁盤的狀態(tài)滿足預設(shè)的第一條件時,控制第二磁盤組中的第一磁盤從休眠狀態(tài)進入工作狀態(tài),并將處于工作狀態(tài)的第一磁盤劃分至第一磁盤組,以更新第一磁盤組。
3、該方法將同一存儲池中的磁盤劃分為可用空間和節(jié)能空間。其中,節(jié)能空間中的磁盤處于休眠狀態(tài),可以節(jié)省存儲池的能耗。可用空間中的磁盤處于工作狀態(tài),可以保障存儲池正常工作,實現(xiàn)數(shù)據(jù)存儲功能。從而在不影響存儲池的存儲功能的同時,降低存儲池能耗。
4、并且,該方法在存儲池的存儲業(yè)務繁忙時,擴大可用空間,從而保障存儲池存儲數(shù)據(jù)的效率。
5、在一種可能的實現(xiàn)方式中,磁盤的狀態(tài)包括磁盤的磨損度;該方法還包括:確定第一磁盤組中的第二磁盤的磨損度最小;當獲取到寫請求時,將寫請求所請求寫入的數(shù)據(jù)寫入到第二磁盤。
6、在該實現(xiàn)方式中,將需要存儲的數(shù)據(jù)優(yōu)先寫入到磨損度小的磁盤中,保障了存儲池中磁盤的磨損度平衡,提高了存儲池的整體壽命。
7、在一種可能的實現(xiàn)方式中,第一磁盤組中的第三磁盤的磨損度小于第一磁盤組中除第二磁盤和第三磁盤之前的其他磁盤的磨損度,寫請求包括兩個寫請求;將寫請求所請求的數(shù)據(jù)寫入到第二磁盤包括:將兩個寫請求中的一個寫請求所請求寫入的數(shù)據(jù)寫入到第二磁盤,另一個寫請求所請求寫入的數(shù)據(jù)寫入到至第三磁盤。
8、在該實現(xiàn)方式中,當有多個寫請求需要處理時,在數(shù)據(jù)優(yōu)先寫入到磨損度小的磁盤的同時,并發(fā)執(zhí)行兩個寫請求,從而在保障存儲池中磁盤的磨損度平衡的同時,提高寫請求的執(zhí)行效率。
9、在一種可能的實現(xiàn)方式中,用于承載io請求所請求的數(shù)據(jù)的邏輯塊lb的地址所映射的物理地址屬于第二磁盤組中的磁盤;該方法還包括:將lb的地址所映射的物理地址修改為第一磁盤組中的磁盤的物理地址,以將io請求轉(zhuǎn)發(fā)至第一磁盤組中的磁盤。
10、在該實現(xiàn)方式中,通過修改lba的方式,將原本落入到處于休眠狀態(tài)的磁盤的寫請求,轉(zhuǎn)發(fā)至處于工作狀態(tài)的磁盤,從而避免了處于休眠狀態(tài)的磁盤被喚醒,保障了節(jié)能效果。
11、在一種可能的實現(xiàn)方式中,該方法還包括:當?shù)谝淮疟P組中的磁盤的狀態(tài)滿足預設(shè)的第二條件時,控制第一磁盤組中的第五磁盤從工作狀態(tài)進入休眠狀態(tài),并將處于休眠狀態(tài)的第五磁盤劃分至第二磁盤組。
12、該實現(xiàn)方式在存儲池空閑時,可以縮小可用空間,擴大節(jié)能空間,從而減少存儲池不必要能耗,提高節(jié)能效果。
13、在一種可能的實現(xiàn)方式中,在控制第一磁盤組中的第五磁盤從工作狀態(tài)進入休眠狀態(tài)之前,該方法還包括:將第五磁盤中的數(shù)據(jù)遷移到第一磁盤組中的其他磁盤中。
14、在該實現(xiàn)方式中,在磁盤進行休眠狀態(tài)前,將該磁盤的數(shù)據(jù)遷移到處于工作狀態(tài)的磁盤,使得該磁盤的數(shù)據(jù)可以在該磁盤處于休眠期間被訪問。
15、第二方面,提供了一種管理裝置,管理裝置用于管理存儲池,存儲池包括第一磁盤組和第二磁盤組;其中,第一磁盤組中的磁盤處于工作狀態(tài),用于處理輸入輸出io請求;第二磁盤組中的磁盤處于休眠狀態(tài);管理裝置包括:獲取單元,用于獲取第一磁盤組中磁盤的狀態(tài),磁盤的狀態(tài)包括磁盤的磨損度、磁盤的端口帶寬利用率、磁盤的空間利用率中的一種或任意多種的組合;控制單元,用于當?shù)谝淮疟P組中的磁盤的狀態(tài)滿足預設(shè)的第一條件時,控制第二磁盤組中的第一磁盤從休眠狀態(tài)進入工作狀態(tài),并將處于工作狀態(tài)的第一磁盤劃分至第一磁盤組,以更新第一磁盤組。
16、在一種可能的實現(xiàn)方式中,磁盤的狀態(tài)包括磁盤的磨損度;管理裝置還包括:確定單元,用于確定第一磁盤組中的第二磁盤的磨損度最??;寫入單元,用于當獲取到寫請求時,將寫請求所請求寫入的數(shù)據(jù)寫入到第二磁盤。
17、在一種可能的實現(xiàn)方式中,第一磁盤組中的第三磁盤的磨損度小于第一磁盤組中除第二磁盤和第三磁盤之前的其他磁盤的磨損度,寫請求包括兩個寫請求;寫入單元用于:將兩個寫請求中的一個寫請求所請求寫入的數(shù)據(jù)寫入到第二磁盤,另一個寫請求所請求寫入的數(shù)據(jù)寫入到至第三磁盤。
18、在一種可能的實現(xiàn)方式中,用于承載io請求所請求的數(shù)據(jù)的邏輯塊lb的地址所映射的物理地址屬于第二磁盤組中的磁盤;管理裝置還包括:修改單元,用于將lb的地址所映射的物理地址修改為第一磁盤組中的磁盤的物理地址,以將io請求轉(zhuǎn)發(fā)至第一磁盤組中的磁盤。
19、在一種可能的實現(xiàn)方式中,控制單元還用于:當?shù)谝淮疟P組中的磁盤的狀態(tài)滿足預設(shè)的第二條件時,控制第一磁盤組中的第五磁盤從工作狀態(tài)進入休眠狀態(tài),并將處于休眠狀態(tài)的第五磁盤劃分至第二磁盤組。
20、在一種可能的實現(xiàn)方式中,控制單元還用于:在控制第一磁盤組中的第五磁盤從工作狀態(tài)進入休眠狀態(tài)之前,將第五磁盤中的數(shù)據(jù)遷移到第一磁盤組中的其他磁盤中。
21、第三方面,提供了一種計算設(shè)備,包括處理器和存儲器;其中,存儲器存儲有計算機指令,處理器用于執(zhí)行計算機指令,以實現(xiàn)第一方面提供的方法。
22、第四方面,提供了一種計算機可讀存儲介質(zhì),包括計算機程序指令,當計算機程序指令由計算設(shè)備執(zhí)行時,計算設(shè)備執(zhí)行第一方面提供的方法。
23、第五方面,提供了一種包含指令的計算機程序產(chǎn)品,當指令被計算機設(shè)備運行時,使得計算機設(shè)備執(zhí)行第一方面提供的方法。
24、第三方面,提供了一種計算設(shè)備,包括處理器和存儲器;其中,所述存儲器存儲有計算機指令,所述處理器用于執(zhí)行所述計算機指令,以實現(xiàn)第一方面提供的方法。
25、第四方面,提供了一種計算機可讀存儲介質(zhì),包括計算機程序指令,當所述計算機程序指令由計算設(shè)備執(zhí)行時,所述計算設(shè)備執(zhí)行第一方面提供的方法。
26、第五方面,提供了一種包含指令的計算機程序產(chǎn)品,當所述指令被計算機設(shè)備運行時,使得所述計算機設(shè)備執(zhí)行第一方面提供的方法。
27、第二方面至第五方面的有益效果可參考上文對第一方面的有益效果的介紹,在此不再贅述。