一種存儲虛擬化中的數(shù)據(jù)存儲方法、系統(tǒng)及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及存儲虛擬化技術(shù)領(lǐng)域,特別是涉及一種存儲虛擬化中的數(shù)據(jù)存儲方法、系統(tǒng)及裝置。
【背景技術(shù)】
[0002]存儲虛擬化是將實際的物理存儲實體與存儲的邏輯表示分離開來,應用服務器只與分配給自身的邏輯卷(或稱虛擬卷)相關(guān),而不用關(guān)心其數(shù)據(jù)是在哪個物理存儲實體上。這樣的一個邏輯卷可以稱之為存儲單元,多個存儲單元可以組成一個巨大的存儲池,來滿足企業(yè)數(shù)據(jù)快速增長的需求。
[0003]由于現(xiàn)有技術(shù)中將每個存儲單元的標識信息配置在了應用服務器中,應用服務器只能向固定的存儲單元存儲數(shù)據(jù),但是由于存儲虛擬化的存儲方式中存儲流量非常大,當存儲單元出現(xiàn)故障時,或者存儲單元所在的存儲集群的存儲空間將要達到上限時,或者因為其他原因?qū)е麓鎯卧豢捎脮r,如果暫時無法對存儲單元進行修復,或者無法對存儲集群進行擴展,將會使應用服務器的數(shù)據(jù)存儲出現(xiàn)故障。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例的目的在于提供一種存儲虛擬化中的數(shù)據(jù)存儲方法、系統(tǒng)及裝置,用以保證應用服務器數(shù)據(jù)存儲的準確率。具體技術(shù)方案如下:
[0005]本發(fā)明實施例提供了一種存儲虛擬化中的數(shù)據(jù)存儲方法,應用于路由服務器,所述方法包括步驟:
[0006]接收應用服務器發(fā)送的數(shù)據(jù)存儲請求,其中,所述數(shù)據(jù)存儲請求中包括存儲數(shù)據(jù)的源存儲單元的標識信息;
[0007]判斷是否對當前存儲到所述源存儲單元的數(shù)據(jù)進行控制,如果否,則將所述源存儲單元作為目標存儲單元,將所述目標存儲單元的標識信息返回給所述應用服務器,使所述應用服務器將數(shù)據(jù)存儲到所述源存儲單元;
[0008]如果是,根據(jù)保存的源存儲單元與關(guān)聯(lián)存儲單元的映射關(guān)系,在所述關(guān)聯(lián)存儲單元中確定所述數(shù)據(jù)存儲的目標存儲單元,將所述目標存儲單元的標識信息返回所述應用服務器,使所述應用服務器將數(shù)據(jù)存儲到所述目標存儲單元。
[0009]進一步地,根據(jù)保存的源存儲單兀與關(guān)聯(lián)存儲單兀的映射關(guān)系,在所述關(guān)聯(lián)存儲單元中確定所述數(shù)據(jù)存儲的目標存儲單元,包括:
[0010]根據(jù)所述映射關(guān)系中保存的所述源存儲單元與每一級關(guān)聯(lián)存儲單元的映射關(guān)系,判斷是否存在所述源存儲單元的第一級關(guān)聯(lián)存儲單元;
[0011]如果存在,在所述第一級關(guān)聯(lián)存儲單元中任意選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元。
[0012]進一步地,所述映射關(guān)系中還保存有所述源存儲單元與每個關(guān)聯(lián)存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),所述在所述第一級關(guān)聯(lián)存儲單元中任意選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元包括:
[0013]根據(jù)所述第一級關(guān)聯(lián)存儲單元中每個關(guān)聯(lián)存儲單元,與所述源存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元。
[0014]進一步地,所述根據(jù)保存的源存儲單兀與關(guān)聯(lián)存儲單兀的映射關(guān)系,在所述關(guān)聯(lián)存儲單元中確定所述數(shù)據(jù)存儲的目標存儲單元,包括:
[0015]A、根據(jù)所述映射關(guān)系中保存的所述源存儲單兀與每一級關(guān)聯(lián)存儲單兀的映射關(guān)系,其中所述映射關(guān)系中每一級關(guān)聯(lián)存儲單元與其相鄰的下一級關(guān)聯(lián)存儲單元存在關(guān)聯(lián)關(guān)系;
[0016]B、判斷是否存在所述源存儲單元的下一級關(guān)聯(lián)存儲單元;
[0017]C、如果是,在所述下一級關(guān)聯(lián)存儲單元中任意選擇一個關(guān)聯(lián)存儲單元,判斷所述選擇的關(guān)聯(lián)存儲單元是否滿足預設(shè)的條件,如果是,將選擇的所述關(guān)聯(lián)存儲單元作為目標存儲單元,如果否,記錄所述關(guān)聯(lián)存儲單元,并將所述關(guān)聯(lián)存儲單元作為源存儲單元,進行B;
[0018]D、如果否,將所述源存儲單元確定為目標存儲單元。
[0019]進一步地,所述映射關(guān)系中還保存有所述源存儲單元與每個關(guān)聯(lián)存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),所述根據(jù)保存的源存儲單元與關(guān)聯(lián)存儲單元的映射關(guān)系,在所述源存儲單元的第二級關(guān)聯(lián)存儲單元在滿足所述預設(shè)的條件下,從所述關(guān)聯(lián)存儲單元中,確定所述數(shù)據(jù)存儲的目標存儲單元包括:
[0020]根據(jù)所述第二級及所述第二級之后每一級關(guān)聯(lián)存儲單元與其相鄰的下一級關(guān)聯(lián)存儲單元,與所述源存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元。
[0021]進一步地,所述預設(shè)的條件包括:
[0022]所述選擇的關(guān)聯(lián)存儲單元為源存儲單元;或
[0023]所述選擇的關(guān)聯(lián)存儲單元已經(jīng)被記錄過。
[0024]本發(fā)明實施例提供了一種存儲虛擬化中的數(shù)據(jù)存儲方法,應用于應用服務器,所述方法包括:
[0025]向路由服務器發(fā)送數(shù)據(jù)存儲請求,其中,所述數(shù)據(jù)存儲請求中包括存儲數(shù)據(jù)的源存儲單元的標識信息;
[0026]當所述路由服務器判斷不對當前存儲到所述源存儲單元的數(shù)據(jù)進行控制時,接收所述路由服務器返回的所述源存儲單元的標識信息,將數(shù)據(jù)存儲到所述源存儲單元;
[0027]當所述路由服務器判斷對當前存儲到所述源存儲單元的數(shù)據(jù)進行控制時,根據(jù)保存的源存儲單元與關(guān)聯(lián)存儲單元的映射關(guān)系,在所述關(guān)聯(lián)存儲單元中確定所述數(shù)據(jù)存儲的目標存儲單元時,接收所述路由服務器返回的所述目標存儲單元的標識信息,將數(shù)據(jù)存儲到所述目標存儲單元。
[0028]本發(fā)明實施例提供了一種存儲虛擬化中的數(shù)據(jù)存儲裝置,應用于路由服務器,所述裝置包括:
[0029]接收單元,用于接收應用服務器發(fā)送的數(shù)據(jù)存儲請求,其中,所述數(shù)據(jù)存儲請求中包括存儲數(shù)據(jù)的源存儲單元的標識信息;
[0030]判斷單元,用于判斷是否對當前存儲到所述源存儲單元的數(shù)據(jù)進行控制;[0031 ]目標確定單元,用于當判斷單元判斷結(jié)果為否時,將所述源存儲單元作為目標存儲單元,將所述目標存儲單元的標識信息返回給所述應用服務器,使所述應用服務器將數(shù)據(jù)存儲到所述源存儲單元;當所述判斷單元判斷結(jié)果為是時,根據(jù)保存的源存儲單元與關(guān)聯(lián)存儲單元的映射關(guān)系,在所述關(guān)聯(lián)存儲單元中確定所述數(shù)據(jù)存儲的目標存儲單元,將所述目標存儲單元的標識信息返回所述應用服務器,使所述應用服務器將數(shù)據(jù)存儲到所述目標存儲單元。
[0032]進一步地,所述目標確定單元,具體用于根據(jù)所述映射關(guān)系中保存的所述源存儲單元與每一級關(guān)聯(lián)存儲單元的映射關(guān)系,判斷是否存在所述源存儲單元的第一級關(guān)聯(lián)存儲單元;如果存在,在所述第一級關(guān)聯(lián)存儲單元中任意選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元。
[0033]進一步地,所述映射關(guān)系中還保存有所述源存儲單元與每個關(guān)聯(lián)存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),所述目標確定單元,具體用于根據(jù)所述第一級關(guān)聯(lián)存儲單元中每個關(guān)聯(lián)存儲單元,與所述源存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),選擇一個關(guān)聯(lián)存儲單元作為目標存儲單
J L.ο
[0034]進一步地,所述目標確定單元,具體用于Α、根據(jù)所述映射關(guān)系中保存的所述源存儲單元與每一級關(guān)聯(lián)存儲單元的映射關(guān)系,其中所述映射關(guān)系中每一級關(guān)聯(lián)存儲單元與其相鄰的下一級關(guān)聯(lián)存儲單元存在關(guān)聯(lián)關(guān)系;Β、判斷是否存在所述源存儲單元的下一級關(guān)聯(lián)存儲單元;C、如果是,在所述下一級關(guān)聯(lián)存儲單元中任意選擇一個關(guān)聯(lián)存儲單元,判斷所述選擇的關(guān)聯(lián)存儲單元是否滿足預設(shè)的條件,如果是,將選擇的所述關(guān)聯(lián)存儲單元作為目標存儲單元,如果否,記錄所述關(guān)聯(lián)存儲單元,并將所述關(guān)聯(lián)存儲單元作為源存儲單元,進行Β; D、如果否,將所述源存儲單元確定為目標存儲單元。
[0035]進一步地,所述映射關(guān)系中還保存有所述源存儲單元與每個關(guān)聯(lián)存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),所述目標確定單元,具體用于根據(jù)所述第二級及所述第二級之后每一級關(guān)聯(lián)存儲單元與其相鄰的下一級關(guān)聯(lián)存儲單元,與所述源存儲單元間相關(guān)聯(lián)的權(quán)重系數(shù),選擇一個關(guān)聯(lián)存儲單元作為目標存儲單元。
[0036]本發(fā)明實施例提供了一種存儲虛擬化中的數(shù)據(jù)存儲裝置,應用于應用服務器,所述裝置包括:
[0037]發(fā)送單元,用于向路由服務器發(fā)送數(shù)據(jù)存儲請求,其中,所述數(shù)據(jù)存儲請求中包括存儲數(shù)據(jù)的源存儲單元的標識信息;
[0038]接收存儲單元,用于當所述路由服務器判斷不對當前存儲到所述源存儲單元的數(shù)據(jù)進行控制時,接收所述路由服務器返回的所述源存儲單