副本3上獲得數(shù)據(jù)后,(滿足R = 2)返回客戶端。
[0112]從上面可以看到,即使節(jié)點A和節(jié)點B都存在磁盤損壞的情況下,只要損壞磁盤的副本不重復,分布式緩存集群還是可以提供全部數(shù)據(jù)的讀寫服務。
[0113]上述應用場景中,如果有兩個故障節(jié)點,每個節(jié)點實際都是部分磁盤損壞,在較樂觀的情況下,如果損壞的磁盤上存放的不是同一個數(shù)據(jù)的副本,則實際整個系統(tǒng)的可用磁盤上,還是保存著所有數(shù)據(jù)的至少兩個副本,完全具備正常提供所有服務的條件。即使在損壞的磁盤上恰好存放著同一個數(shù)據(jù)的副本,那么其他磁盤上的可用數(shù)據(jù),依然可以滿足一致性和可用性,可以提供讀寫服務,僅對同時損壞的這部分數(shù)據(jù)而言,無法提供讀寫訪問。
[0114]本發(fā)明的有益效果如下:
[0115]本發(fā)明針對分布式緩存系統(tǒng),在有磁盤損壞的情況下,可以充分利用可用的資源,整合出符合一致性和可用性要求的副本資源,盡可能提高系統(tǒng)的可用性,提高系統(tǒng)對故障的容忍性。也就是說,在云計算領域分布式緩存系統(tǒng)中,提供一種磁盤和數(shù)據(jù)管理機制,即使在節(jié)點部分磁盤發(fā)生故障情況下,依然能夠盡可能利用可用磁盤上的數(shù)據(jù),保持提供服務的能力,使得服務端在較少的磁盤或數(shù)據(jù)資源的情況下,提供一致性和可用性的存儲服務。
[0116]以上所述是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
【主權(quán)項】
1.一種云計算系統(tǒng)的處理方法,其特征在于,包括: 接收客戶端對云計算系統(tǒng)的操作請求; 根據(jù)所述操作請求,獲取所述云計算系統(tǒng)中待操作的數(shù)據(jù)標識; 根據(jù)所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告,查找所述云計算系統(tǒng)的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個磁盤以及各個所述磁盤的狀態(tài);所述節(jié)點磁盤狀態(tài)報告包括:所述云計算系統(tǒng)的各個節(jié)點中磁盤的狀態(tài)、所述磁盤中存儲的數(shù)據(jù)所對應的數(shù)據(jù)標識; 根據(jù)所述云計算系統(tǒng)中的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個所述磁盤的狀態(tài),進行相應的操作。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)各個所述磁盤的狀態(tài),進行相應的操作的步驟包括: 所述操作請求為更新請求;當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)更新請求的最少參與節(jié)點數(shù)量時,則響應所述更新請求;否則,拒絕所述更新請求;或者 所述操作請求為數(shù)據(jù)訪問請求;當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)訪問請求獲取的數(shù)據(jù)副本數(shù)量時,則響應所述數(shù)據(jù)訪問請求;否則,拒絕所述數(shù)據(jù)訪問請求。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)更新請求的最少參與節(jié)點數(shù)量時,則響應所述更新請求的步驟包括: 當所述操作請求為更新請求,并且存儲所述數(shù)據(jù)的主節(jié)點的磁盤的狀態(tài)為正常時,所述云計算系統(tǒng)的主節(jié)點向主節(jié)點的所述數(shù)據(jù)所在磁盤進行數(shù)據(jù)更新;所述云計算系統(tǒng)的從節(jié)點從所述主節(jié)點獲取待同步的數(shù)據(jù),所述從節(jié)點向所述從節(jié)點的所述數(shù)據(jù)所在磁盤進行數(shù)據(jù)更新; 當所述操作請求為更新請求,并且存儲所述數(shù)據(jù)的主節(jié)點的磁盤的狀態(tài)為故障時,所述云計算系統(tǒng)的第一從節(jié)點向所述第一從節(jié)點的所述數(shù)據(jù)所在磁盤進行數(shù)據(jù)更新;所述云計算系統(tǒng)的第二從節(jié)點從所述第一從節(jié)點獲取待同步的數(shù)據(jù);所述第二節(jié)點向所述第二從節(jié)點的所述數(shù)據(jù)所在磁盤進行數(shù)據(jù)更新;所述第一從節(jié)點和所述第二從節(jié)點的存儲所述數(shù)據(jù)的磁盤的狀態(tài)為正常。4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)訪問請求獲取的數(shù)據(jù)副本數(shù)量時,則響應所述數(shù)據(jù)訪問請求的步驟包括: 當所述操作請求為數(shù)據(jù)訪問請求,并且存儲所述數(shù)據(jù)的主節(jié)點的磁盤的狀態(tài)為正常時,從所述云計算系統(tǒng)的主節(jié)點的所述數(shù)據(jù)所在磁盤中獲取所述數(shù)據(jù)的第一副本,從所述云計算系統(tǒng)的至少一個從節(jié)點的所述數(shù)據(jù)所在磁盤中獲取所述數(shù)據(jù)的第二副本;從所述第一副本和所述第二副本中,選取最新版本的副本;并將所述最新版本的副本發(fā)送給所述客戶端;所述第二從節(jié)點的存儲所述數(shù)據(jù)的磁盤的狀態(tài)為正常; 當所述操作請求為數(shù)據(jù)訪問請求,并且存儲所述數(shù)據(jù)的主節(jié)點的磁盤的狀態(tài)為故障時,從所述云計算系統(tǒng)的至少一個從節(jié)點的所述數(shù)據(jù)所在磁盤中獲取所述數(shù)據(jù)的第三副本;從至少一個所述第三副本中,選取最新版本的副本,并將所述最新版本的副本發(fā)送給所述客戶端;所述第二從節(jié)點的存儲所述數(shù)據(jù)的磁盤的狀態(tài)為正常。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述接收客戶端的操作請求的步驟之前,所述方法還包括: 從節(jié)點獲取所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告。6.一種云計算系統(tǒng)的處理裝置,其特征在于,包括: 第一接收單元,接收客戶端對云計算系統(tǒng)的操作請求; 獲取單元,根據(jù)所述操作請求,獲取所述云計算系統(tǒng)中待操作的數(shù)據(jù)標識; 查找單元,根據(jù)所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告,查找所述云計算系統(tǒng)的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個磁盤以及各個所述磁盤的狀態(tài);所述節(jié)點磁盤狀態(tài)報告包括:所述云計算系統(tǒng)的各個節(jié)點中磁盤的狀態(tài)、所述磁盤中存儲的數(shù)據(jù)所對應的數(shù)據(jù)標識; 操作單元,根據(jù)所述云計算系統(tǒng)中的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個所述磁盤的狀態(tài),進行相應的操作。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述操作單元包括: 第一響應子單元,所述操作請求為更新請求;當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)更新請求的最少參與節(jié)點數(shù)量時,則響應所述更新請求; 第一拒絕子單元,當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量小于所述云計算系統(tǒng)預定的一次數(shù)據(jù)更新請求的最少參與節(jié)點數(shù)量時,拒絕所述更新請求; 第二響應子單元,所述操作請求為數(shù)據(jù)訪問請求;當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量大于或等于所述云計算系統(tǒng)預定的一次數(shù)據(jù)訪問請求獲取的數(shù)據(jù)副本數(shù)量時,則響應所述數(shù)據(jù)訪問請求; 第二拒絕子單元,當所述云計算系統(tǒng)中存儲所述數(shù)據(jù)且處于正常狀態(tài)的所述磁盤的數(shù)量小于所述云計算系統(tǒng)預定的一次數(shù)據(jù)訪問請求獲取的數(shù)據(jù)副本數(shù)量時,拒絕所述數(shù)據(jù)訪問請求。8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 第二接收單元,從節(jié)點接收所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告。9.一種云計算系統(tǒng),其特征在于,包括:客戶端、處理裝置、節(jié)點、所述節(jié)點對應的磁盤; 所述處理裝置,接收所述客戶端對云計算系統(tǒng)的操作請求;根據(jù)所述操作請求,獲取所述云計算系統(tǒng)中待操作的數(shù)據(jù)標識;根據(jù)所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告,查找所述云計算系統(tǒng)的各個所述節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的磁盤以及各個所述磁盤的狀態(tài);所述節(jié)點磁盤狀態(tài)報告包括:所述云計算系統(tǒng)的各個節(jié)點中所述磁盤的狀態(tài)、所述磁盤中存儲的數(shù)據(jù)所對應的數(shù)據(jù)標識;根據(jù)所述云計算系統(tǒng)中的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個所述磁盤的狀態(tài),進行相應的操作。10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述節(jié)點,給所述處理裝置發(fā)送節(jié)點磁盤狀態(tài)報告。
【專利摘要】本發(fā)明提供一種云計算系統(tǒng)以及云計算系統(tǒng)的處理方法和裝置。所述云計算系統(tǒng)的處理方法,包括:接收客戶端對云計算系統(tǒng)的操作請求;根據(jù)所述操作請求,獲取所述云計算系統(tǒng)中待操作的數(shù)據(jù)標識;根據(jù)所述云計算系統(tǒng)的節(jié)點磁盤狀態(tài)報告,查找所述云計算系統(tǒng)的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個磁盤以及各個所述磁盤的狀態(tài);所述節(jié)點磁盤狀態(tài)報告包括:所述云計算系統(tǒng)的各個節(jié)點中磁盤的狀態(tài)、所述磁盤中存儲的數(shù)據(jù)所對應的數(shù)據(jù)標識;根據(jù)所述云計算系統(tǒng)中的各個節(jié)點中存儲所述數(shù)據(jù)標識對應數(shù)據(jù)的各個所述磁盤的狀態(tài),進行相應的操作。本發(fā)明能夠提高系統(tǒng)對磁盤故障的容忍性。
【IPC分類】H04L29/08
【公開號】CN105323271
【申請?zhí)枴緾N201410289531
【發(fā)明人】莫嫣, 高洪, 韓銀俊
【申請人】中興通訊股份有限公司
【公開日】2016年2月10日
【申請日】2014年6月24日
【公告號】WO2015196692A1