一種基于雙控制器的存儲(chǔ)管理方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于網(wǎng)絡(luò)存儲(chǔ)領(lǐng)域,尤其涉及一種基于雙控制器的存儲(chǔ)管理方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有技術(shù)公開了一種雙控存儲(chǔ)服務(wù)器的緩存管理方法,在ISCSI網(wǎng)絡(luò)存儲(chǔ)服務(wù)器架構(gòu)中,對(duì)雙控存儲(chǔ)服務(wù)器進(jìn)行緩存管理,從Linux系統(tǒng)管理的內(nèi)存中劃分出一塊連續(xù)空間作為獨(dú)立緩存模塊,將獨(dú)立緩存模塊均勻劃分為多個(gè)緩存塊,將物理磁盤均勻劃分為多個(gè)磁盤邏輯塊,一個(gè)緩存塊可以映射任意一個(gè)磁盤邏輯塊的數(shù)據(jù),將緩存塊標(biāo)記狀態(tài),使用雙向循環(huán)鏈表分別管理空閑緩存塊和使用緩存塊。
[0003]上述方案雖然揭示了在雙控存儲(chǔ)服務(wù)器中設(shè)置獨(dú)立緩存模塊,但并沒有揭示雙控存儲(chǔ)服務(wù)器之間如何實(shí)現(xiàn)緩存數(shù)據(jù)同步。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種基于雙控制器的存儲(chǔ)管理方法及系統(tǒng),以解決上述問題。
[0005]本發(fā)明提供一種基于雙控制器的存儲(chǔ)管理方法。上述方法包括以下步驟:
[0006]主控制器中的指令解析模塊對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析,確定服務(wù)請(qǐng)求類型并將所述服務(wù)請(qǐng)求類型發(fā)送至所述主控制器中的緩存模塊;
[0007]所述主控制器中的緩存模塊根據(jù)所述服務(wù)請(qǐng)求類型,確定對(duì)應(yīng)的數(shù)據(jù)處理策略。
[0008]本發(fā)明還提供一種基于雙控制器的存儲(chǔ)管理系統(tǒng),包括應(yīng)用服務(wù)器、主控制器、從控制器;其中,所述應(yīng)用服務(wù)器、所述主控制器、所述從控制器兩兩相互連接;
[0009]所述應(yīng)用服務(wù)器,用于向主控制器發(fā)送服務(wù)請(qǐng)求;
[0010]主控制器中的指令解析模塊,用于對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析,確定服務(wù)請(qǐng)求類型并將所述服務(wù)請(qǐng)求類型發(fā)送至主控制器中的緩存模塊;
[0011 ] 主控制器中的緩存模塊,用于通過主控制器中的緩存同步模塊向從控制器中的緩存同步模塊發(fā)送數(shù)據(jù)同步請(qǐng)求;
[0012]從控制器中的緩存同步模塊,用于根據(jù)數(shù)據(jù)同步請(qǐng)求中攜帶的標(biāo)志特征信息,將數(shù)據(jù)寫入從控制器中的緩存模塊。
[0013]通過以下方案:主控制器中的指令解析模塊對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析,確定服務(wù)請(qǐng)求類型并將所述服務(wù)請(qǐng)求類型發(fā)送至所述主控制器中的緩存模塊;所述主控制器中的緩存模塊根據(jù)所述服務(wù)請(qǐng)求類型,確定對(duì)應(yīng)的數(shù)據(jù)處理策略,實(shí)現(xiàn)了多控制器之間緩存數(shù)據(jù)同步,提高了多控制器存儲(chǔ)系統(tǒng)可靠性。
[0014]通過以下方案:若所述服務(wù)請(qǐng)求類型為寫數(shù)據(jù)請(qǐng)求,則所述主控制器中的緩存模塊通過所述主控制器中的緩存同步模塊向從控制器中的緩存同步模塊發(fā)送數(shù)據(jù)同步請(qǐng)求;所述從控制器中的緩存同步模塊根據(jù)數(shù)據(jù)同步請(qǐng)求中攜帶的標(biāo)志特征信息,將數(shù)據(jù)寫入所述從控制器中的緩存模塊,避免了單點(diǎn)控制器故障導(dǎo)致的數(shù)據(jù)丟失和服務(wù)中斷的問題,實(shí)現(xiàn)了多控制器之間緩存數(shù)據(jù)同步,提高了多控制器存儲(chǔ)系統(tǒng)可靠性。
[0015]通過以下方案:所述服務(wù)請(qǐng)求類型為寫數(shù)據(jù)請(qǐng)求時(shí),則所述主控制器中的緩存模塊進(jìn)一步判斷寫入的數(shù)據(jù)類型并根據(jù)數(shù)據(jù)類型信息,確定對(duì)應(yīng)的數(shù)據(jù)處理策略,實(shí)現(xiàn)了根據(jù)數(shù)據(jù)類型進(jìn)行差異化的同步處理方案,在保證重要數(shù)據(jù)安全性的同時(shí),節(jié)約系統(tǒng)資源。
【附圖說明】
[0016]此處所說明的附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0017]圖1所示為本發(fā)明實(shí)施例1的基于雙控制器的存儲(chǔ)管理方法處理流程圖;
[0018]圖2所示為本發(fā)明實(shí)施例2的基于雙控制器的存儲(chǔ)管理系統(tǒng)結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0019]下文中將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0020]圖1所示為本發(fā)明實(shí)施例1的基于雙控制器的存儲(chǔ)管理方法處理流程圖,包括以下步驟:
[0021]步驟101:主控制器中的指令解析模塊對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析,確定服務(wù)請(qǐng)求類型并將所述服務(wù)請(qǐng)求類型發(fā)送至所述主控制器中的緩存模塊;
[0022]進(jìn)一步地,主控制器中的指令解析模塊對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析之前,還包括:應(yīng)用服務(wù)器向主控制器發(fā)送服務(wù)請(qǐng)求。
[0023]進(jìn)一步地,所述服務(wù)請(qǐng)求類型包括:寫數(shù)據(jù)請(qǐng)求、讀數(shù)據(jù)請(qǐng)求。
[0024]進(jìn)一步地,主控制器中的指令解析模塊對(duì)接收的服務(wù)請(qǐng)求進(jìn)行解析,確定服務(wù)請(qǐng)求類型并將所述服務(wù)請(qǐng)求類型發(fā)送至所述主控制器中的緩存模塊之前,還包括:
[0025]預(yù)先在主控制器、從控制器中分別設(shè)置緩存模塊、緩存同步模塊、故障檢測(cè)模塊。
[0026]步驟102:所述主控制器中的緩存模塊根據(jù)所述服務(wù)請(qǐng)求類型,確定對(duì)應(yīng)的數(shù)據(jù)處理策略。
[0027]進(jìn)一步地,所述主控制器中的緩存模塊根據(jù)所述服務(wù)請(qǐng)求類型,確定對(duì)應(yīng)的數(shù)據(jù)處理策略的過程為:
[0028]若所述服務(wù)請(qǐng)求類型為寫數(shù)據(jù)請(qǐng)求,則所述主控制器中的緩存模塊通過所述主控制器中的緩存同步模塊向從控制器中的緩存同步模塊發(fā)送數(shù)據(jù)同步請(qǐng)求;
[0029]所述從控制器中的緩存同步模塊根據(jù)數(shù)據(jù)同步請(qǐng)求中攜帶的標(biāo)志特征信息,將數(shù)據(jù)寫入所述從控制器中的緩存模塊。
[0030]進(jìn)一步地,所述標(biāo)志特征信息包括更新標(biāo)志信息、替換標(biāo)志信息、回寫標(biāo)志信息、標(biāo)志位更新信息。
[0031]進(jìn)一步地,所述從控制器中的緩存同步模塊根據(jù)數(shù)據(jù)同步請(qǐng)求中攜帶的標(biāo)志特征信息,將數(shù)據(jù)寫入所述從控制器中的緩存模塊之后,還包括:
[0032]所述從控制器向所述主控制器返回?cái)?shù)據(jù)同步成功響應(yīng),其中,所述數(shù)據(jù)同步成功響應(yīng)中攜帶了數(shù)據(jù)同步完成標(biāo)志。
[0033]進(jìn)一步地,所述從控制器向所述主控制器返回?cái)?shù)據(jù)同步響應(yīng)之后,還包括:所述主控制器向應(yīng)用服務(wù)器反饋數(shù)據(jù)同步成功響應(yīng)。
[0034]進(jìn)一步地,若主控制器中的故障檢測(cè)模塊判斷主控制器發(fā)生故障,則切換至從控制器并由所述從控制器將緩存模塊中的數(shù)據(jù)傳輸至磁盤管理設(shè)備。
[0035]進(jìn)一步地,所述主控制器中的緩存模塊根據(jù)所述服務(wù)請(qǐng)求類型,確定對(duì)應(yīng)的數(shù)據(jù)處理策略的過程為:
[0036]所述服務(wù)請(qǐng)求類型為寫數(shù)據(jù)請(qǐng)求時(shí),則所述主控制器中的緩存模塊進(jìn)一步判斷寫入的數(shù)據(jù)類型并根據(jù)數(shù)據(jù)類型信息,確定對(duì)應(yīng)的數(shù)據(jù)處理策略。
[0037]進(jìn)一步地,所述寫入的數(shù)據(jù)類型包括系統(tǒng)配置數(shù)據(jù)、視頻監(jiān)控?cái)?shù)據(jù)、網(wǎng)頁訪問記錄數(shù)據(jù)。
[0038]在具體實(shí)施時(shí),寫入的數(shù)據(jù)類型還可以包括其它類型的數(shù)據(jù),例如:內(nèi)存管理數(shù)據(jù),在此不用于限定本實(shí)施例的保護(hù)范圍。
[0039]進(jìn)一步地,所述服務(wù)請(qǐng)求類型為寫數(shù)據(jù)請(qǐng)求時(shí),則所述主控制器中的緩存模塊進(jìn)一步判斷寫入的數(shù)據(jù)類型并根