分布式存儲系統(tǒng)的容災(zāi)方法及裝置制造方法
【專利摘要】本發(fā)明實施例提供一種分布式存儲系統(tǒng)的容災(zāi)方法及裝置。通過所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點;實現(xiàn)將同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
【專利說明】分布式存儲系統(tǒng)的容災(zāi)方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息技術(shù),尤其涉及一種分布式存儲系統(tǒng)的容災(zāi)方法及裝置。
【背景技術(shù)】
[0002]分布式存儲系統(tǒng)廣泛應(yīng)用于交互式網(wǎng)絡(luò)電視、視頻監(jiān)控、搜索等需要用到海量存儲的領(lǐng)域。
[0003]分布式存儲系統(tǒng)通常由機柜(rack)組成,每個rack內(nèi)放置有多個機框(chassis),每個chassis放置有作為存儲節(jié)點的存儲服務(wù)器?,F(xiàn)有技術(shù)中,為確保數(shù)據(jù)存儲的安全性,通常會采用一定的數(shù)據(jù)存儲策略對分布式存儲系統(tǒng)中同一數(shù)據(jù)進行備份存儲;例如,分布式存儲系統(tǒng)在進行數(shù)據(jù)存儲時,將同一數(shù)據(jù)及其備份數(shù)據(jù)存儲在同一 rack的不同存儲節(jié)點中。這樣,當一個chassis放置的存儲服務(wù)器故障時,可以通過訪問其他chassis放置的存儲服務(wù)器存儲的數(shù)據(jù)副本。
[0004]但是,現(xiàn)有技術(shù)中,當分布式存儲系統(tǒng)出現(xiàn)問題時,如何確保分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠是一個迫切需要解決的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供一種分布式存儲系統(tǒng)的容災(zāi)方法及裝置,用以確保分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
[0006]第一方面,本發(fā)明提供一種分布式存儲系統(tǒng)的容災(zāi)方法,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,所述生產(chǎn)站點包括多個存儲服務(wù)器,所述容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述方法包括:
[0007]第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息,包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū);
[0008]所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;
[0009]其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0010]結(jié)合第一方面,在第一方面的第一種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲之后,還包括:
[0011]所述第一存儲服務(wù)器生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù);
[0012]所述第一存儲服務(wù)器根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);
[0013]所述第一存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);
[0014]所述第一存儲服務(wù)器將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器;
[0015]其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
[0016]結(jié)合第一方面的第一種可能實現(xiàn)的方式,在第一方面的第二種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器之后,還包括:
[0017]所述第一存儲服務(wù)器接收所述第三存儲服務(wù)器發(fā)送的數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
[0018]結(jié)合第一方面、第一方面的第一種至第二種任一種可能實現(xiàn)的方式,在第一方面的第三種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括:
[0019]所述第一存儲服務(wù)器接收管理服務(wù)器發(fā)送的所述數(shù)據(jù)安全分布信息;
[0020]其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
[0021]結(jié)合第一方面的第三種可能實現(xiàn)的方式,在第一方面的第四種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括:
[0022]所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0023]所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0024]若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟;
[0025]否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟;
[0026]當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0027]結(jié)合第一方面、第一方面的第一種至第二種任一種可能實現(xiàn)的方式,在第一方面的第五種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括:
[0028]所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
[0029]結(jié)合第一方面的第五種可能實現(xiàn)的方式,在第一方面的第六種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息之后,還包括:
[0030]所述第一存儲服務(wù)器將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
[0031]結(jié)合第一方面的第五種至第六種任一種可能實現(xiàn)的方式,在第一方面的第七種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括:
[0032]所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0033]所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0034]若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟;
[0035]否則,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0036]結(jié)合第一方面的第五種至第七種任一種可能實現(xiàn)的方式,在第一方面的第八種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括:
[0037]當?shù)谌鎯橘|(zhì)故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;
[0038]其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
[0039]結(jié)合第一方面的第八種可能實現(xiàn)的方式,在第一方面的第九種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括:
[0040]所述第一存儲服務(wù)器生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù);
[0041]所述第一存儲服務(wù)器將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;
[0042]其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
[0043]結(jié)合第一方面的第五種至第七種任一種可能實現(xiàn)的方式,在第一方面的第十種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括:
[0044]當?shù)谝徽军c故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;
[0045]其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;
[0046]若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
[0047]結(jié)合第一方面的第十種可能實現(xiàn)的方式,在第一方面的第^^一種可能實現(xiàn)的方式中,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
[0048]結(jié)合第一方面的第十種可能實現(xiàn)的方式,在第一方面的第十二種可能實現(xiàn)的方式中,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
[0049]結(jié)合第一方面的第十種至第十二種任一種可能實現(xiàn)的方式,在第一方面的第十三種可能實現(xiàn)的方式中,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括:
[0050]所述第一存儲服務(wù)器生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù);
[0051]所述第一存儲服務(wù)器將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);
[0052]其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì)。
[0053]第二方面,本發(fā)明提供一種分布式存儲系統(tǒng)的容災(zāi)裝置,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,所述生產(chǎn)站點包括多個存儲服務(wù)器,所述容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述裝置為第一存儲服務(wù)器,所述裝置包括:
[0054]確定模塊,用于根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息,包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū);
[0055]發(fā)送模塊,用于將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;
[0056]其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0057]結(jié)合第二方面,在第二方面的第一種可能實現(xiàn)的方式中,還包括:
[0058]生成模塊,用于生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù);
[0059]所述確定模塊,還用于根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);
[0060]所述發(fā)送模塊,還用于將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器;
[0061]其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
[0062]結(jié)合第二方面的第一種可能實現(xiàn)的方式,在第二方面的第二種可能實現(xiàn)的方式中,還包括:
[0063]接收模塊,用于接收所述第三存儲服務(wù)器發(fā)送的所述數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
[0064]結(jié)合第二方面、第二方面的第一種至第二種任一種可能實現(xiàn)的方式,在第二方面的第三種可能實現(xiàn)的方式中,所述接收模塊,還用于:接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息;
[0065]其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
[0066]結(jié)合第二方面的第三種可能實現(xiàn)的方式,在第二方面的第四種可能實現(xiàn)的方式中,所述接收模塊,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0067]所述確定模塊,具體用于:
[0068]確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0069]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0070]否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0071]當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0072]結(jié)合第二方面、第二方面的第一種至第二種任一種可能實現(xiàn)的方式,在第二方面的第五種可能實現(xiàn)的方式中,所述確定模塊,還用于根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
[0073]結(jié)合第二方面的第五種可能實現(xiàn)的方式,在第二方面的第六種可能實現(xiàn)的方式中,所述發(fā)送模塊,還用于:
[0074]將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
[0075]結(jié)合第二方面的第五種至第六種任一種可能實現(xiàn)的方式,在第二方面的第七種可能實現(xiàn)的方式中,所述接收模塊,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0076]所述確定模塊,具體用于:確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0077]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0078]否則,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0079]結(jié)合第二方面的第五種至第七種任一種可能實現(xiàn)的方式,在第二方面的第八種可能實現(xiàn)的方式中,所述確定模塊,具體用于:
[0080]當?shù)谌鎯橘|(zhì)故障時,將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;
[0081]其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
[0082]結(jié)合第二方面的第八種可能實現(xiàn)的方式,在第二方面的第九種可能實現(xiàn)的方式中,所述生成模塊,還用于:生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù);
[0083]所述發(fā)送模塊,還用于:將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;
[0084]其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
[0085]結(jié)合第二方面的第五種至第七種任一種可能實現(xiàn)的方式,在第二方面的第十種可能實現(xiàn)的方式中,所述確定模塊,具體用于:
[0086]當?shù)谝徽军c故障時,將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;
[0087]其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;
[0088]若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
[0089]結(jié)合第二方面的第十種可能實現(xiàn)的方式,在第二方面的第^^一種可能實現(xiàn)的方式中,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
[0090]結(jié)合第二方面的第十種可能實現(xiàn)的方式,在第二方面的第十二種可能實現(xiàn)的方式中,所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器則,所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
[0091]結(jié)合第二方面的第十種至第十二種任一種可能實現(xiàn)的方式,在第二方面的第十三種可能實現(xiàn)的方式中,所述生成模塊,還用于:生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù);
[0092]所述發(fā)送模塊,還用于:將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);
[0093]其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì)。
[0094]本發(fā)明提供一種分布式存儲系統(tǒng)的容災(zāi)方法及裝置,通過所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點;實現(xiàn)了將同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點(也即,生產(chǎn)站點和容災(zāi)站點)的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
【專利附圖】
【附圖說明】
[0095]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0096]圖1為本發(fā)明分布式存儲系統(tǒng)的結(jié)構(gòu)示意圖;
[0097]圖2為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例一的流程圖;
[0098]圖3為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例二的流程圖;
[0099]圖4為本發(fā)明正常狀態(tài)時的存儲示意圖;
[0100]圖5為本發(fā)明存儲介質(zhì)故障時的存儲示意圖;
[0101]圖6為本發(fā)明站點故障時的存儲示意圖;
[0102]圖7為本發(fā)明站點故障恢復時的存儲示意圖;
[0103]圖8為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例一的結(jié)構(gòu)示意圖;
[0104]圖9為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例二的結(jié)構(gòu)示意圖;
[0105]圖10為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例五的結(jié)構(gòu)示意圖。
【具體實施方式】
[0106]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0107]圖1為本發(fā)明分布式存儲系統(tǒng)的結(jié)構(gòu)示意圖,圖1所示的系統(tǒng)中包括生產(chǎn)站點11和容災(zāi)站點12 ;生產(chǎn)站點11包括3個存儲服務(wù)器13,容災(zāi)站點12包括3個存儲服務(wù)器13,一個存儲服務(wù)器13包括兩個存儲介質(zhì)14,且一個存儲介質(zhì)14承載至少一個分區(qū)。
[0108]需要說明的是,圖1僅為舉例;本領(lǐng)域技術(shù)人員應(yīng)該明確任何生產(chǎn)站點包括多個存儲服務(wù)器、容災(zāi)站點包括多個存儲服務(wù)器、存儲服務(wù)器包括至少一個存儲介質(zhì)、存儲介質(zhì)承載至少一個分區(qū)的分布式存儲系統(tǒng)都為本發(fā)明分布式存儲系統(tǒng)。
[0109]圖2為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例一的流程圖,如圖2所示,本實施例的方法可以包括:
[0110]步驟201、第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息,包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū);
[0111]其中,所述分區(qū)包括主分區(qū)與備分區(qū)。
[0112]例如,主分區(qū)與備份區(qū)的對應(yīng)關(guān)系可以為:主分區(qū)A對應(yīng)備份區(qū)A’,主分區(qū)B對應(yīng)備份區(qū)B’,主分區(qū)C對應(yīng)備分區(qū)C’;分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系可以為:存儲介質(zhì)1承載主分區(qū)A和主分區(qū)B ;存儲介質(zhì)2承載主分區(qū)C和備份區(qū)A’ ;存儲介質(zhì)3承載備份區(qū)B’和備份區(qū)C’。
[0113]其中,存儲介質(zhì)可以為軟盤、光盤、硬盤、U盤等。
[0114]步驟202、所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器。
[0115]其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0116]現(xiàn)有技術(shù)中,為確保數(shù)據(jù)存儲的安全性,通常會采用一定的數(shù)據(jù)存儲策略對分布式存儲系統(tǒng)中同一數(shù)據(jù)進行備份存儲;例如,分布式存儲系統(tǒng)在進行數(shù)據(jù)存儲時,將同一數(shù)據(jù)及其備份數(shù)據(jù)存儲在同一 rack的不同存儲節(jié)點中。本發(fā)明中,所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0117]現(xiàn)有技術(shù)中,通過采用一定的數(shù)據(jù)存儲策略對分布式存儲系統(tǒng)中同一數(shù)據(jù)進行備份存儲,可以在一定程度上保證數(shù)據(jù)的安全性;但是現(xiàn)有技術(shù)的分布式存儲系統(tǒng)并沒有對存儲服務(wù)器進行區(qū)分(也即,所有的存儲服務(wù)器都屬于一個站點),因此在進行備份存儲時僅是將數(shù)據(jù)及其備份存儲在同一站點的不同存儲服務(wù)器;因此,當分布式存儲系統(tǒng)出現(xiàn)問題(例如,站點故障)時,如何確保分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠是一個迫切需要解決的問題。通過本發(fā)明中所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點;實現(xiàn)了將同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點(也即,生產(chǎn)站點和容災(zāi)站點)的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
[0118]本實施例,通過所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點;實現(xiàn)了將同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點(也即,生產(chǎn)站點和容災(zāi)站點)的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
[0119]圖3為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例二的流程圖,如圖3所示,步驟202之后可以包括:
[0120]步驟301、所述第一存儲服務(wù)器生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù);
[0121]可選的,所述第一存儲服務(wù)器的上層應(yīng)用(APP,Applicat1n)生成數(shù)據(jù)寫入請求。
[0122]步驟302、所述第一存儲服務(wù)器根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);
[0123]可選的,所述負載均衡算法可以為分布式哈希算法。
[0124]步驟303、所述第一存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);
[0125]步驟304、所述第一存儲服務(wù)器將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器。
[0126]其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
[0127]可選的,步驟302之前還可以包括:將所述第二待存儲數(shù)據(jù)切分K個數(shù)據(jù)塊;相應(yīng)的,步驟302具體為:根據(jù)負載均衡算法,確定各數(shù)據(jù)塊分別對應(yīng)的主分區(qū)。
[0128]本實施例中,當?shù)谝淮鎯Ψ?wù)器需要存儲第二待存儲數(shù)據(jù)時,所述第一存儲服務(wù)器能夠根據(jù)負載均衡算法確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);根據(jù)數(shù)據(jù)安全分別信息確定所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);并將所述第二待存儲數(shù)據(jù)發(fā)送至所述第二存儲介質(zhì)所屬的第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū);所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至與所述第三存儲服務(wù)器屬于不同站點的第四存儲服務(wù)器;實現(xiàn)了將同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點(也即,生產(chǎn)站點和容災(zāi)站點)的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
[0129]需要說明的是,第三存儲服務(wù)器確定第二主分區(qū)對應(yīng)的備分區(qū)為第二備分區(qū),及第二備分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì)的方法與實施例一中步驟201相同,只是執(zhí)行主體由第一存儲服務(wù)器變?yōu)榈谌鎯Ψ?wù)器。
[0130]可選的,步驟304之后還可以包括:所述第一存儲服務(wù)器接收所述第三存儲服務(wù)器發(fā)送的數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。通過第三存儲服務(wù)器確定第三存儲服務(wù)器及第四存儲服務(wù)器都已將第二待存儲數(shù)據(jù)成功存儲后,再向第一存儲服務(wù)器返回寫入成功的數(shù)據(jù)寫入響應(yīng);使得在存儲待存儲數(shù)據(jù)時能夠確保必定成功存儲了該待存儲數(shù)據(jù)及該待存儲數(shù)據(jù)的備份數(shù)據(jù)。
[0131]可選的,步驟201之前還可以包括:所述第一存儲服務(wù)器獲取所述數(shù)據(jù)安全分布信息。
[0132]可選的,所述第一存儲服務(wù)器獲取所述數(shù)據(jù)安全分布信息,包括:
[0133]所述第一存儲服務(wù)器接收管理服務(wù)器發(fā)送的所述數(shù)據(jù)安全分布信息;或者,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
[0134]情況1若第一存儲服務(wù)器接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息,則:
[0135]可選的,步驟201之前,還可以包括:
[0136]所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0137]所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0138]若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行步驟201 ;
[0139]否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行步驟201 ;
[0140]當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0141]情況2若第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,則:
[0142]可選的,步驟201之前,還可以包括:
[0143]所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0144]所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0145]若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行步驟201 ;
[0146]否則,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0147]本實施例中,通過第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配,并在版本信息匹配后再進行將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟;確保各存儲服務(wù)器中的數(shù)據(jù)安全分布信息都為最新的數(shù)據(jù)安全分布信息。
[0148]其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
[0149]其中,所述狀態(tài)信息包括故障、正常等。
[0150]可選的,各存儲服務(wù)器(生產(chǎn)站點及容災(zāi)站點下的所有存儲服務(wù)器)所包括的存儲介質(zhì)可以通過向第一存儲服務(wù)器發(fā)送心跳信號的方式,使得第一存儲服務(wù)器能夠根據(jù)心跳信號確定各存儲介質(zhì)的狀態(tài)信息。
[0151]例如,若2分鐘內(nèi)沒有收到存儲介質(zhì)1發(fā)送的心跳信號,則可以確定存儲介質(zhì)1故障;若2分鐘內(nèi)收到了存儲介質(zhì)2發(fā)送的心跳信號,則可以確定存儲介質(zhì)2正常。
[0152]可選的,當所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息之后,還可以包括:所述第一存儲服務(wù)器將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
[0153]例如,若生產(chǎn)站點包括存儲服務(wù)器A、存儲服務(wù)器B、存儲服務(wù)器C ;容災(zāi)站點包括存儲服務(wù)D、存儲服務(wù)器E、存儲服務(wù)器F,存儲服務(wù)器A生成數(shù)據(jù)安全分布信息;則:存儲服務(wù)器A生成了數(shù)據(jù)安全分布信息之后,存儲服務(wù)器A需要將數(shù)據(jù)安全分布信息發(fā)送至存儲服務(wù)器B?F。這樣,當存儲服務(wù)器B需要存儲數(shù)據(jù)1時,存儲服務(wù)器B在確定存儲數(shù)據(jù)1的主分區(qū)1之后,能夠根據(jù)數(shù)據(jù)安全分布信息確定主分區(qū)1對應(yīng)的存儲介質(zhì)1,并將數(shù)據(jù)1發(fā)送至存儲介質(zhì)1所屬的存儲服務(wù)器i (i可以為A?F中任一個存儲服務(wù)器);存儲服務(wù)器i收到數(shù)據(jù)1時將數(shù)據(jù)1存儲至主分區(qū)1,并根據(jù)數(shù)據(jù)安全分布信息確定主分區(qū)1對應(yīng)的備分區(qū)1,及備份區(qū)1對應(yīng)的存儲介質(zhì)2,將數(shù)據(jù)1的備份數(shù)據(jù)發(fā)送至存儲介質(zhì)2所屬的存儲服務(wù)器。
[0154]分布式存儲系統(tǒng)的容災(zāi)方法實施例三
[0155]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例二的基礎(chǔ)上,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括:
[0156]當?shù)谌鎯橘|(zhì)故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
[0157]例如,假設(shè)生產(chǎn)站點包括存儲服務(wù)器1和存儲服務(wù)器2 ;存儲服務(wù)器1包括存儲介質(zhì)1、存儲介質(zhì)2,存儲服務(wù)器2包括存儲介質(zhì)3 ;原數(shù)據(jù)安全分布信息中:存儲介質(zhì)1承載主分區(qū)1和備分區(qū)1 ;存儲介質(zhì)2承載主分區(qū)2和主分區(qū)3 ;存儲介質(zhì)3承載備份區(qū)2和備份區(qū)3。則當存儲介質(zhì)1故障時,可以將主分區(qū)1對應(yīng)的存儲介質(zhì)更新為存儲介質(zhì)2,將備分區(qū)1對應(yīng)的存儲介質(zhì)更新為存儲介質(zhì)3 ;則新的數(shù)據(jù)安全分布信息可以為:存儲介質(zhì)2承載主分區(qū)1、主分區(qū)2和主分區(qū)3 ;存儲介質(zhì)3承載備分區(qū)1、備份區(qū)2和備份區(qū)3。
[0158]本實施例中,通過當?shù)谌鎯橘|(zhì)故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器;使得當一存儲服務(wù)器的存儲介質(zhì)故障時,新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所屬的存儲服務(wù)器,與備分區(qū)對應(yīng)的存儲介質(zhì)所屬的存儲服務(wù)器還是為不同站點下的存儲服務(wù)器;使得存儲服務(wù)器根據(jù)新的數(shù)據(jù)安全分布信息存儲數(shù)據(jù)時,能夠確保同一數(shù)據(jù)及其備份數(shù)據(jù)分別存儲在不同站點的存儲服務(wù)器中;使得當一站點故障時,另一站點上保存了故障站點所存儲數(shù)據(jù)的備份數(shù)據(jù),確保了分布式存儲系統(tǒng)中所存儲數(shù)據(jù)的安全可靠。
[0159]可選的,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括:
[0160]所述第一存儲服務(wù)器生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù);
[0161]所述第一存儲服務(wù)器將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;
[0162]其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
[0163]例如,一存儲服務(wù)器將待存儲數(shù)據(jù)切分為1M大小的數(shù)據(jù)塊,假設(shè)切分后的數(shù)據(jù)塊為1、2、3、4 ;并按照圖4(圖4為本發(fā)明正常狀態(tài)時的存儲示意圖)的方式將各數(shù)據(jù)塊分別存儲在各存儲服務(wù)器;
[0164]圖5為本發(fā)明存儲介質(zhì)故障時的存儲示意圖;如圖5所示,當站點1、機柜1-1的存儲服務(wù)器1故障(也就是說,存儲服務(wù)器1的存儲介質(zhì)都故障)時,從站點2、機柜1-1的存儲服務(wù)器1獲取故障的存儲服務(wù)器所保存的數(shù)據(jù)塊1和數(shù)據(jù)塊5 ;并將獲取到的數(shù)據(jù)塊1存儲至站點1、機柜1-1的存儲服務(wù)器n,將獲取到的數(shù)據(jù)塊5存儲至站點1、機柜ι-n的存儲服務(wù)器1。
[0165]本實施例中,通過所述第一存儲服務(wù)器將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器;使得當一存儲服務(wù)器的存儲介質(zhì)故障時,能夠?qū)⒐收洗鎯橘|(zhì)中所存儲的數(shù)據(jù)復制到其他存儲介質(zhì)(該存儲服務(wù)器的存儲介質(zhì)或者與該存儲服務(wù)器屬于同一站點的其他存儲服務(wù)器的存儲介質(zhì))中;從而進一步增加了分布式存儲系統(tǒng)中數(shù)據(jù)的安全性及可靠性。
[0166]分布式存儲系統(tǒng)的容災(zāi)方法實施例四
[0167]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)方法實施例二的基礎(chǔ)上,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括:
[0168]當?shù)谝徽军c故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
[0169]可選的,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
[0170]可選的,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
[0171]可選的,生產(chǎn)站點及容災(zāi)站點下的各存儲服務(wù)器可以通過向第一存儲服務(wù)器發(fā)送心跳信號的方式,以使第一存儲服務(wù)器能夠獲得各存儲服務(wù)器的狀態(tài)信息;
[0172]例如,若站點1包括存儲服務(wù)器1、存儲服務(wù)器2,站點2包括存儲服務(wù)器3、存儲服務(wù)器4 ;若5分鐘內(nèi)存儲服務(wù)器1 (也即,第一存儲服務(wù)器)沒有收到來自存儲服務(wù)器3和存儲服務(wù)器4的心跳信息,則存儲服務(wù)器1可以確定站點2故障。
[0173]本實施例中,通過當?shù)谝徽军c故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;使得當一站點故障時,新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所屬的存儲服務(wù)器,與備分區(qū)對應(yīng)的存儲介質(zhì)所屬的存儲服務(wù)器變更為同一站點下的存儲服務(wù)器;使得存儲服務(wù)器根據(jù)新的數(shù)據(jù)安全分布信息存儲數(shù)據(jù)時,能夠確保即使一站點故障時對于每一個數(shù)據(jù)還是有一個對應(yīng)的備份數(shù)據(jù);從而進一步增加了分布式存儲系統(tǒng)中數(shù)據(jù)的安全性及可靠性。
[0174]可選的,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括:
[0175]所述第一存儲服務(wù)器生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù);
[0176]所述第一存儲服務(wù)器將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);
[0177]其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì)。
[0178]圖6為本發(fā)明站點故障時的存儲示意圖;如圖6所示,當站點1故障時,從站點2獲取站點1所保存的數(shù)據(jù)塊1?數(shù)據(jù)塊8 ;并將獲取到的數(shù)據(jù)塊1?數(shù)據(jù)塊8分別存儲至站點2的存儲服務(wù)器。此時,對于分布式系統(tǒng)中的所有數(shù)據(jù)塊,站點2中都保存了兩份。
[0179]圖7為本發(fā)明站點故障恢復時的存儲示意圖;如圖7所示,當站點1故障恢復時,可以將站點2所保存的兩份數(shù)據(jù)中的一份同步至站點1,并將站點2中的一份數(shù)據(jù)刪除,使得兩個站點分別保存了一份數(shù)據(jù)。
[0180]本實施例中,通過所述第一存儲服務(wù)器將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì);使得當一站點故障時,能夠?qū)⒐收险军c的存儲介質(zhì)中所存儲的數(shù)據(jù)復制到另一站點的存儲介質(zhì)中;從而進一步增加了分布式存儲系統(tǒng)中數(shù)據(jù)的安全性及可靠性。
[0181]圖8為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例一的結(jié)構(gòu)示意圖,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,生產(chǎn)站點包括多個存儲服務(wù)器,容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述裝置為第一存儲服務(wù)器;如圖8所示,本實施例的裝置可以包括:確定模塊801和發(fā)送模塊802。其中,確定模塊801,用于根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息,包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū);發(fā)送模塊802,用于將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;
[0182]其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0183]本實施例的裝置,可以用于執(zhí)行圖2所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0184]圖9為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例二的結(jié)構(gòu)示意圖,如圖9所示,本實施例的裝置在圖8所示基站結(jié)構(gòu)的基礎(chǔ)上,進一步地,還可以包括:生成模塊803。其中,生成模塊803,用于生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù);確定模塊801,還用于根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);發(fā)送模塊802,還用于將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器;
[0185]其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
[0186]可選的,所述裝置還可以包括:接收模塊804,用于接收所述第三存儲服務(wù)器發(fā)送的數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
[0187]可選的,接收模塊804,還可以用于:接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息;或者,確定模塊801,還可以用于根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
[0188]情況1若接收模塊804還用于接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息,則:
[0189]可選的,接收模塊804,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0190]相應(yīng)的,確定模塊801,具體用于:
[0191]確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0192]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0193]否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0194]當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0195]情況2若確定模塊801還用于根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,則:
[0196]可選的,接收模塊804,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0197]相應(yīng)的,確定模塊801,具體用于:
[0198]確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0199]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0200]否則,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0201]其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
[0202]進一步可選的,當確定模塊801用于生成所述數(shù)據(jù)安全分布信息時,發(fā)送模塊802,還用于:將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
[0203]本實施例的裝置,可以用于執(zhí)行圖3所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0204]分布式存儲系統(tǒng)的容災(zāi)裝置實施例三
[0205]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例二的基礎(chǔ)上,確定模塊801,具體用于:
[0206]當?shù)谌鎯橘|(zhì)故障時,將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;
[0207]其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
[0208]可選的,生成模塊803,還可以用于:生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù);
[0209]相應(yīng)的,發(fā)送模塊802,還可以用于:將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;
[0210]其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
[0211]本實施例的裝置,可以用于執(zhí)行分布式存儲系統(tǒng)的容災(zāi)方法實施例三的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0212]分布式存儲系統(tǒng)的容災(zāi)裝置實施例四
[0213]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例二的基礎(chǔ)上,確定模塊801,具體用于:
[0214]當?shù)谝徽军c故障時,將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;
[0215]其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;
[0216]若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
[0217]可選的,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
[0218]可選的,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
[0219]可選的,生成模塊803,還可以用于:生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù);
[0220]相應(yīng)的,發(fā)送模塊802,還可以用于:將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);
[0221]其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì)。
[0222]本實施例的裝置,可以用于執(zhí)行分布式存儲系統(tǒng)的容災(zāi)方法實施例四的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0223]圖10為本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例五的結(jié)構(gòu)示意圖,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,生產(chǎn)站點包括多個存儲服務(wù)器,容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述裝置為第一存儲服務(wù)器;如圖10所示,本實施例的裝置可以包括:處理器1001和發(fā)送器1002。其中,處理器1001,用于根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息,包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū);發(fā)送器1002,用于將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器;
[0224]其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
[0225]可選的,處理器1001,還用于生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù);根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì);發(fā)送器1002,還用于將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器;
[0226]其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
[0227]可選的,所述裝置還可以包括:接收器1003,用于接收所述第三存儲服務(wù)器發(fā)送的數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
[0228]可選的,接收器1003,還可以用于:接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息;或者,處理器1001,還可以用于:根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
[0229]情況1若接收器1003,還用于:接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息,則:
[0230]可選的,接收器1003,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0231]相應(yīng)的,處理器1001,具體用于:
[0232]確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0233]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0234]否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0235]當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0236]情況2若處理器1001還用于根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,則:
[0237]可選的,接收器1003,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0238]相應(yīng)的,處理器1001,具體用于:
[0239]確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本;
[0240]若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);
[0241]否則,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
[0242]其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
[0243]進一步可選的,當處理器1001還用于生成所述數(shù)據(jù)安全分布信息時,發(fā)送器1002,還用于:將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
[0244]本實施例的裝置,可以用于執(zhí)行圖2或圖3所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0245]分布式存儲系統(tǒng)的容災(zāi)裝置實施例六
[0246]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例五的基礎(chǔ)上,處理器1001,具體用于:當?shù)谌鎯橘|(zhì)故障時,將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息;
[0247]其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
[0248]可選的,處理器1001,還可以用于:生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù);
[0249]相應(yīng)的,發(fā)送器1002,還可以用于:將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中;
[0250]其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
[0251]本實施例的裝置,可以用于執(zhí)行分布式存儲系統(tǒng)的容災(zāi)方法實施例三的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0252]分布式存儲系統(tǒng)的容災(zāi)裝置實施例七
[0253]可選的,在本發(fā)明分布式存儲系統(tǒng)的容災(zāi)裝置實施例五的基礎(chǔ)上,處理器1001,具體用于:
[0254]當?shù)谝徽军c故障時,將原數(shù)據(jù)安全分布信息中N個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息;
[0255]其中,所述N個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的N個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第二站點;
[0256]若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
[0257]可選的,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
[0258]可選的,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
[0259]可選的,處理器1001,還可以用于:生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù);
[0260]相應(yīng)的,發(fā)送器1002,還可以用于:將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì);
[0261]其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述Μ個存儲介質(zhì)中的存儲介質(zhì)。
[0262]本實施例的裝置,可以用于執(zhí)行分布式存儲系統(tǒng)的容災(zāi)方法實施例四的技術(shù)方案,其實現(xiàn)原理和技術(shù)效果類似,此處不再贅述。
[0263]本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0264]最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種分布式存儲系統(tǒng)的容災(zāi)方法,其特征在于,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,所述生產(chǎn)站點包括多個存儲服務(wù)器,所述容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述方法包括: 第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū); 所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器; 其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲之后,還包括: 所述第一存儲服務(wù)器生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù); 所述第一存儲服務(wù)器根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū); 所述第一存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì); 所述第一存儲服務(wù)器將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器; 其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述第一存儲服務(wù)器將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器之后,還包括: 所述第一存儲服務(wù)器接收所述第三存儲服務(wù)器發(fā)送的數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
4.根據(jù)權(quán)利要求1?3任一項所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括: 所述第一存儲服務(wù)器接收管理服務(wù)器發(fā)送的所述數(shù)據(jù)安全分布信息; 其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括: 所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟; 否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟; 當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
6.根據(jù)權(quán)利要求1?3任一項所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括: 所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息之后,還包括: 所述第一存儲服務(wù)器將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
8.根據(jù)權(quán)利要求6或7所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)之前,還包括: 所述第一存儲服務(wù)器接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 所述第一存儲服務(wù)器確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 若是,則所述第一存儲服務(wù)器將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并執(zhí)行根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì)的步驟; 否則,所述第一存儲服務(wù)器向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
9.根據(jù)權(quán)利要求6?8任一項所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括: 當?shù)谌鎯橘|(zhì)故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息; 其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括: 所述第一存儲服務(wù)器生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù); 所述第一存儲服務(wù)器將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中; 其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
11.根據(jù)權(quán)利要求6?8任一項所述的方法,其特征在于,所述第一存儲服務(wù)器根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息,包括: 當?shù)谝徽军c故障時,所述第一存儲服務(wù)器將原數(shù)據(jù)安全分布信息中~個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息; 其中,所述~個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的~個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第一站點; 若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
13.根據(jù)權(quán)利要求11所述的方法,其特征在于,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
14.根據(jù)權(quán)利要求11?13任一項所述的方法,其特征在于,所述第一存儲服務(wù)器生成新的數(shù)據(jù)安全分布信息之后,還包括: 所述第一存儲服務(wù)器生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù); 所述第一存儲服務(wù)器將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì); 其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述1個存儲介質(zhì)中的存儲介質(zhì)。
15.一種分布式存儲系統(tǒng)的容災(zāi)裝置,其特征在于,所述分布式存儲系統(tǒng)包括生產(chǎn)站點和容災(zāi)站點,所述生產(chǎn)站點包括多個存儲服務(wù)器,所述容災(zāi)站點包括多個存儲服務(wù)器,存儲服務(wù)器包括至少一個存儲介質(zhì),存儲介質(zhì)承載至少一個分區(qū),所述裝置為第一存儲服務(wù)器,所述裝置包括: 確定模塊,用于根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì);其中,所述數(shù)據(jù)安全分布信息包括:主分區(qū)與備分區(qū)的對應(yīng)關(guān)系及分區(qū)與存儲介質(zhì)的對應(yīng)關(guān)系;所述第一主分區(qū)為所述第一存儲服務(wù)器中存儲第一待存儲數(shù)據(jù)的分區(qū); 發(fā)送模塊,用于將所述第一待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第二存儲服務(wù)器進行存儲;所述第二存儲服務(wù)器為所述第一存儲介質(zhì)所在的存儲服務(wù)器; 其中,所述第一存儲服務(wù)器屬于生產(chǎn)站點,所述第二存儲服務(wù)器屬于容災(zāi)站點;或者,所述第一存儲服務(wù)器屬于容災(zāi)站點,所述第二存儲服務(wù)器屬于生產(chǎn)站點。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,還包括: 生成模塊,用于生成數(shù)據(jù)寫入請求;所述數(shù)據(jù)寫入請求包括第二待存儲數(shù)據(jù); 所述確定模塊,還用于根據(jù)負載均衡算法,確定存儲所述第二待存儲數(shù)據(jù)的分區(qū)為第二主分區(qū);根據(jù)所述數(shù)據(jù)安全分布信息,確定與所述第二主分區(qū)對應(yīng)的存儲介質(zhì)為第二存儲介質(zhì); 所述發(fā)送模塊,還用于將所述第二待存儲數(shù)據(jù)發(fā)送至第三存儲服務(wù)器,以使所述第三存儲服務(wù)器將所述第二待存儲數(shù)據(jù)存儲至所述第二主分區(qū),并將所述第二待存儲數(shù)據(jù)的備份數(shù)據(jù)發(fā)送至第四存儲服務(wù)器進行存儲;所述第三存儲服務(wù)器為所述第二存儲介質(zhì)所在的存儲服務(wù)器; 其中,所述第三存儲服務(wù)器屬于生產(chǎn)站點,所述第四存儲服務(wù)器屬于容災(zāi)站點;或者,所述第三存儲服務(wù)器屬于容災(zāi)站點,所述第四存儲服務(wù)器屬于生產(chǎn)站點。
17.根據(jù)權(quán)利要求16所述的裝置,其特征在于,還包括: 接收模塊,用于接收所述第三存儲服務(wù)器發(fā)送的所述數(shù)據(jù)寫入響應(yīng);所述數(shù)據(jù)寫入響應(yīng),用于指示所述第三存儲服務(wù)器及所述第四存儲服務(wù)器已將所述第二待存儲數(shù)據(jù)成功存儲。
18.根據(jù)權(quán)利要求15?17任一項所述的裝置,其特征在于,所述接收模塊,還用于:接收管理服務(wù)器發(fā)送的數(shù)據(jù)安全分布信息; 其中,所述管理服務(wù)器為管理所述生產(chǎn)站點下各存儲服務(wù)器的服務(wù)器;或者,所述管理服務(wù)器為管理所述容災(zāi)站點下各存儲服務(wù)器的服務(wù)器。
19.根據(jù)權(quán)利要求18所述的裝置,其特征在于,所述接收模塊,還用于: 接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 所述確定模塊,具體用于: 確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì); 否則,當所述第一版本信息與所述第二版本信息中,所述第一版本信息為較新的版本信息時,向所述管理服務(wù)器發(fā)送數(shù)據(jù)安全分布信息請求,以獲得最新的數(shù)據(jù)安全分布信息,并在獲得最新的數(shù)據(jù)安全分布信息之后,將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì); 當所述第一版本信息與所述第二版本信息中,所述第二版本信息為較新的版本信息時,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述管理服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
20.根據(jù)權(quán)利要求15?17任一項所述的裝置,其特征在于,所述確定模塊,還用于根據(jù)生產(chǎn)站點及容災(zāi)站點中各存儲服務(wù)器的存儲介質(zhì)的狀態(tài)信息,生成所述數(shù)據(jù)安全分布信息。
21.根據(jù)權(quán)利要求20所述的裝置,其特征在于,所述發(fā)送模塊,還用于: 將所述數(shù)據(jù)安全分布信息發(fā)送至其他存儲服務(wù)器,以使所述其他存儲服務(wù)器根據(jù)所述數(shù)據(jù)安全分布信息對數(shù)據(jù)進行存儲。
22.根據(jù)權(quán)利要求20或21所述的裝置,其特征在于,所述接收模塊,還用于:接收第七存儲服務(wù)器發(fā)送的第一版本信息及所述第一待存儲數(shù)據(jù);所述第一版本信息用于指示所述第七存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 所述確定模塊,具體用于:確定所述第一版本信息與第二版本信息是否匹配;所述第二版本信息用于指示所述第一存儲服務(wù)器中的數(shù)據(jù)安全分布信息的版本; 若是,則將所述第一待存儲數(shù)據(jù)存儲至所述第一主分區(qū),并根據(jù)數(shù)據(jù)安全分布信息,確定與第一主分區(qū)對應(yīng)的備分區(qū)為第一備分區(qū)以及與所述第一備分區(qū)對應(yīng)的存儲介質(zhì)為第一存儲介質(zhì); 否則,向所述第七存儲服務(wù)器返回失敗響應(yīng),以使所述第七存儲服務(wù)器向所述第一存儲服務(wù)器請求最新的數(shù)據(jù)安全分布信息,并在獲取到最新的數(shù)據(jù)安全分布信息后,重新確定存儲所述第一待存儲數(shù)據(jù)的存儲介質(zhì);所述失敗響應(yīng)用于指示所述第七存儲服務(wù)器需要獲取最新的數(shù)據(jù)安全分布信息。
23.根據(jù)權(quán)利要求20?22任一項所述的裝置,其特征在于,所述確定模塊,具體用于: 當?shù)谌鎯橘|(zhì)故障時,將原數(shù)據(jù)安全分布信息中第一分區(qū)對應(yīng)的存儲介質(zhì)更新為第四存儲介質(zhì),以生成新的數(shù)據(jù)安全分布信息; 其中,所述第一分區(qū)為所述第三存儲介質(zhì)對應(yīng)的分區(qū);所述第三存儲介質(zhì)與所述第四存儲介質(zhì)所在的存儲服務(wù)器為同一站點下的存儲服務(wù)器。
24.根據(jù)權(quán)利要求23所述的裝置,其特征在于,所述生成模塊,還用于:生成第一數(shù)據(jù)重構(gòu)請求;所述第一數(shù)據(jù)重構(gòu)請求包括:第五存儲服務(wù)器需要存儲的第一待重構(gòu)數(shù)據(jù); 所述發(fā)送模塊,還用于:將所述第一數(shù)據(jù)重構(gòu)請求發(fā)送至所述第五存儲服務(wù)器,以使所述第五存儲服務(wù)器將所述第一待重構(gòu)數(shù)據(jù)存儲至所述第四存儲介質(zhì)中; 其中,所述第一待重構(gòu)數(shù)據(jù)屬于所述第三存儲介質(zhì)上所保存的數(shù)據(jù);所述第五存儲服務(wù)器為所述第四存儲介質(zhì)所在的存儲服務(wù)器。
25.根據(jù)權(quán)利要求20?22任一項所述的裝置,其特征在于,所述確定模塊,具體用于: 當?shù)谝徽军c故障時,將原數(shù)據(jù)安全分布信息中~個分區(qū)分別對應(yīng)的存儲介質(zhì)進行更新,以生成新的數(shù)據(jù)安全分布信息; 其中,所述~個分區(qū)為所述第一站點中各存儲服務(wù)器的存儲介質(zhì)分別所對應(yīng)的分區(qū),更新后的~個分區(qū)分別對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器及所述第一存儲服務(wù)器屬于第一站點; 若所述第一站點為生產(chǎn)站點,則第二站點為容災(zāi)站點;若所述第一站點為容災(zāi)站點,則所述第二站點為生產(chǎn)站點。
26.根據(jù)權(quán)利要求25所述的裝置,其特征在于,若所述第二站點由多個機柜組成,每個機柜上放置至少一個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備份區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器分別位于不同的機柜。
27.根據(jù)權(quán)利要求25所述的裝置,其特征在于,若所述第二站點由一個機柜組成,每個機柜上放置多個存儲服務(wù)器,則所述新的數(shù)據(jù)安全分布信息中主分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器與備分區(qū)對應(yīng)的存儲介質(zhì)所在的存儲服務(wù)器為不同的存儲服務(wù)器。
28.根據(jù)權(quán)利要求25?27任一項所述的裝置,其特征在于,所述生成模塊,還用于:生成第二數(shù)據(jù)重構(gòu)請求;所述第二數(shù)據(jù)重構(gòu)請求包括:第六存儲服務(wù)器需要存儲的第二待重構(gòu)數(shù)據(jù); 所述發(fā)送模塊,還用于:將所述第二數(shù)據(jù)重構(gòu)請求發(fā)送至所述第六存儲服務(wù)器,以使所述第六存儲服務(wù)器將所述第二待重構(gòu)數(shù)據(jù)存儲至第五存儲介質(zhì); 其中,所述第二待重構(gòu)數(shù)據(jù)屬于所述第一站點中的存儲介質(zhì)上所保存的數(shù)據(jù);所述第六存儲服務(wù)器為第二站點下的存儲服務(wù)器;所述第五存儲介質(zhì)屬于所述1個存儲介質(zhì)中的存儲介質(zhì)。
【文檔編號】H04L29/08GK104486438SQ201410810750
【公開日】2015年4月1日 申請日期:2014年12月22日 優(yōu)先權(quán)日:2014年12月22日
【發(fā)明者】籍晉海 申請人:華為技術(shù)有限公司