本發(fā)明涉及分布式文件技術(shù)領(lǐng)域,尤其涉及一種分布式文件系統(tǒng)元數(shù)據(jù)處理方法和裝置。
背景技術(shù):
隨著互聯(lián)網(wǎng)向著更寬更廣方向發(fā)展,計算機及信息系統(tǒng)在各行各業(yè)的應(yīng)用越來越廣泛,要求也越來越高。分布式系統(tǒng)相對于集中式系統(tǒng)具有并行應(yīng)用、高性能、高可靠性等特點,因而廣泛應(yīng)用于操作系統(tǒng)、文件系統(tǒng)、數(shù)據(jù)庫系統(tǒng)等計算機技術(shù)領(lǐng)域。
但分布式系統(tǒng)也有其缺點,其中很大一個便是操作指令執(zhí)行問題,如何保障操作請求指令在通信傳送過程中的高效可靠的執(zhí)行,成為一個亟待解決的問題
上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提供一種分布式文件系統(tǒng)元數(shù)據(jù)處理方法,旨在解決操作請求指令在通信過程中的高效可靠執(zhí)行,及其保密性的問題。
本發(fā)明提供的一種分布式文件系統(tǒng)元數(shù)據(jù)處理方法,包括步驟:
獲取客戶端對元數(shù)據(jù)服務(wù)器對象的操作請求指令,所述操作請求指令的對象為元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄;
將獲取到的操作請求指令緩存至請求隊列保存;
統(tǒng)計請求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比;
若請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,則執(zhí)行請求隊列中的操作請求指令。
優(yōu)選地,所述統(tǒng)計求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,還包括:
若請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,維持當(dāng)前操作狀態(tài),直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
優(yōu)選地,所述若請求隊列的請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,執(zhí)行該請求隊列中的操作請求指令之后,還包括:
設(shè)置接收操作請求指令的元數(shù)據(jù)服務(wù)器為不可識別狀態(tài)。
優(yōu)選地,所述若請求隊列的請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,執(zhí)行該請求隊列中的操作請求指令之后,還包括:
請求隊列中的操作請求指令執(zhí)行完成后,根據(jù)已執(zhí)行完成的操作請求指令,解除對應(yīng)對象文件的鎖定。
優(yōu)選地,所述方法還包括:
獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),若元數(shù)據(jù)服務(wù)器狀態(tài)都被設(shè)置為不可識別時,重置元數(shù)據(jù)服務(wù)器狀態(tài),將元數(shù)據(jù)服務(wù)器狀態(tài)設(shè)置為可識別狀態(tài)。
此外,為實現(xiàn)上述目的,本發(fā)明還提供一種分布式文件系統(tǒng)元數(shù)據(jù)處理裝置,包括:
獲取模塊,用于獲取客戶端對元數(shù)據(jù)服務(wù)器的操作請求指令,所述操作請求指令的對象為元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄;
緩存模塊,用于將獲取到的操作請求指令緩存至請求隊列保存;
統(tǒng)計模塊,用于統(tǒng)計請求隊列中的操作請求指令數(shù)量;
對比模塊,用于將統(tǒng)計的操作請求指令數(shù)量與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比;
執(zhí)行模塊,用于若請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,則執(zhí)行請求隊列中的操作請求指令。
優(yōu)選地,所述裝置還包括:
確認(rèn)模塊,用于若請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,維持當(dāng)前操作狀態(tài),直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
優(yōu)選地,所述裝置還包括:
設(shè)置模塊,用于設(shè)置原接收操作請求指令的元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài)。
優(yōu)選地,所述裝置還包括:
解鎖模塊,用于請求隊列中的操作請求指令執(zhí)行完成后,根據(jù)已執(zhí)行完成的操作請求指令,解除對應(yīng)對象文件的鎖定。
優(yōu)選地,所述裝置還包括重置模塊,
所述獲取模塊,還用于獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài);
所述重置模塊,用于若元數(shù)據(jù)服務(wù)器狀態(tài)都被設(shè)置為不可識別時,重置元數(shù)據(jù)服務(wù)器狀態(tài)為可識別狀態(tài)。
本發(fā)明通過獲取客戶端對元數(shù)據(jù)服務(wù)器對象的操作請求指令,所述操作請求指令的對象為元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄;將獲取到的操作請求指令緩存至請求隊列保存;統(tǒng)計請求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比;若請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,則執(zhí)行請求隊列中的操作請求指令。解決操作請求指令的高效可靠的執(zhí)行,及其針對指令保密性的問題。
附圖說明
圖1為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第一實施例的流程示意圖;
圖2為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第二實施例的流程示意圖;
圖3為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第三實施例的流程示意圖;
圖4為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第一實施例的功能模塊示意圖;
圖5為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第二實施例的功能模塊示意圖;
圖6為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第三實施例的功能模塊示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做進一步說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
基于上述問題,本發(fā)明提供一種分布式文件系統(tǒng)元數(shù)據(jù)處理方法。
參照圖1,圖1為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第一實施例的流程示意圖。
在一實施例中,所述方法包括:
步驟S10,獲取客戶端對元數(shù)據(jù)服務(wù)器對象的操作請求指令,所述操作請求指令的對象為元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄;
自客戶端發(fā)起對元數(shù)據(jù)服務(wù)器對對象的操作請求指令,所述客戶端為有發(fā)送操作請求指令的電子設(shè)備,或與該電子設(shè)備關(guān)聯(lián)的其他終端,或定制的專屬終端;該終端與元數(shù)據(jù)服務(wù)器通過無線網(wǎng)絡(luò)或有線網(wǎng)絡(luò)關(guān)聯(lián),用以進行操作請求指令的發(fā)送,所述關(guān)聯(lián)方式為現(xiàn)有技術(shù),在此不多贅述。在對應(yīng)元數(shù)據(jù)服務(wù)器中,接收客戶端發(fā)送的操作請求指令,所述操作請求指令對應(yīng)當(dāng)前接收的元數(shù)據(jù)服務(wù)器對象,所述對象為該元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄的文件,稱之為操作請求指令對應(yīng)的對象文件。即,每個操作請求指令都有對應(yīng)的對象文件用以進行當(dāng)前的操作請求指令。
步驟S20,將獲取到的操作請求指令緩存至請求隊列保存;
已獲取到的操作請求指令,按目標(biāo)順序?qū)⒉僮髡埱笾噶罹彺嬷琳埱箨犃兄斜4?,所述目?biāo)順序可以為接收操作請求指令的時間,或者按操作請求指令的緊急程度在請求隊列中排列,相關(guān)順序于元數(shù)據(jù)服務(wù)器中相關(guān)功能設(shè)置。
步驟S30,統(tǒng)計請求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比;
已在請求隊列中排列的操作請求指令,統(tǒng)計所述請求隊列中緩存的操作請求指令的數(shù)量,將所述數(shù)量與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,所述預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,根據(jù)服務(wù)器的操作請求指令的執(zhí)行能力設(shè)置,即,該預(yù)設(shè)操作請求指令目標(biāo)數(shù)值的數(shù)值為當(dāng)前元數(shù)據(jù)服務(wù)器操作請求指令的較佳執(zhí)行數(shù)量。在所述元數(shù)據(jù)服務(wù)器接收客戶端發(fā)送的操作請求指令之前,在所述元數(shù)據(jù)服務(wù)器中相關(guān)功能設(shè)置完成,并根據(jù)元數(shù)據(jù)服務(wù)器的最佳執(zhí)行數(shù)量更改預(yù)設(shè)操作請求指令目標(biāo)數(shù)值或提示重新設(shè)置預(yù)設(shè)操作請求指令目標(biāo)數(shù)值。
步驟S40,若請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,則執(zhí)行請求隊列中的操作請求指令。
當(dāng)前緩存于請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)閾值時,表示當(dāng)前已接收并緩存的操作請求指令不能夠繼續(xù)進行緩存保留或當(dāng)前操作請求指令緩存的數(shù)量已達到當(dāng)前請求隊列的最大緩存內(nèi)存,按照當(dāng)前請求隊列中排列的操作請求指令,執(zhí)行每一條操作請求指令的內(nèi)容。
進一步的,所述統(tǒng)計求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,還包括:
若請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,維持當(dāng)前操作狀態(tài),直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
當(dāng)前緩存于請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,維持當(dāng)前操作狀態(tài)不變,即繼續(xù)接收自客戶端發(fā)送的操作請求指令,并將接收到的操作請求指令緩存于請求隊列中,直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
進一步的,根據(jù)預(yù)設(shè)周期統(tǒng)計請求隊列中操作請求指令的數(shù)量,并與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,用以監(jiān)控已緩存的操作請求指令,待請求隊列中緩存的操作請求指令數(shù)量滿足執(zhí)行條件時執(zhí)行請求隊列中的操作請求指令。所述預(yù)設(shè)周期,在元數(shù)據(jù)服務(wù)器中設(shè)置當(dāng)前請求隊列檢查周期,周期內(nèi)統(tǒng)計當(dāng)前請求隊列中已緩存的操作請求指令。
本實施例通過接收客戶端發(fā)送的針對于元數(shù)據(jù)服務(wù)器下分布式文件目錄中統(tǒng)一目錄及其子目錄中對象文件的操作請求指令,并將之緩存至請求隊列中,在請求隊列中緩存的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,停止接收操作請求指令并執(zhí)行請求隊列中的操作請求指令內(nèi)容,統(tǒng)一執(zhí)行已接收到的操作請求指令,并控制接收操作請求指令的數(shù)量,保證了信息在通信過程的高度保密性,并高效率執(zhí)行操作請求指令。
參照圖2,圖2為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第二實施例的流程示意圖?;谏鲜龇椒ǖ牡谝粚嵤├?,所述若請求隊列的請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,執(zhí)行該請求隊列中的操作請求指令之后,還包括:
步驟S50,設(shè)置原接收操作請求指令的元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài);
在執(zhí)行請求隊列中的操作請求指令時,為避免依舊接收操作請求指令造成操作請求指令執(zhí)行出錯,設(shè)置當(dāng)前執(zhí)行操作請求指令的元數(shù)據(jù)服務(wù)器為不可識別狀態(tài),所述不可識別狀態(tài),用以使客戶端不能搜索到該元數(shù)據(jù)服務(wù)器,進而不能針對該元數(shù)據(jù)服務(wù)器發(fā)起操作請求指令,從根本上阻止操作請求指令的發(fā)送及接收。保證操作請求指令執(zhí)行的保密性及高效率。所述設(shè)置元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài),可通過設(shè)置當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識控制元數(shù)據(jù)服務(wù)器是否為可識別狀態(tài),例如,設(shè)置元數(shù)據(jù)服務(wù)器標(biāo)識為0,為元數(shù)據(jù)服務(wù)器不可識別狀態(tài)。
進一步的,在當(dāng)前元數(shù)據(jù)服務(wù)器設(shè)置為不可識別狀態(tài),即不能接收自客戶端發(fā)送的操作請求指令后,切換與當(dāng)前執(zhí)行操作執(zhí)行指令的元數(shù)據(jù)服務(wù)器關(guān)聯(lián)的另一元數(shù)據(jù)服務(wù)器,用以獲取客戶端發(fā)送的操作請求指令,并進行與當(dāng)前執(zhí)行操作請求指令的元數(shù)據(jù)服務(wù)器同樣的操作。
步驟S60,請求隊列中的操作請求指令執(zhí)行完成后,根據(jù)已執(zhí)行完成的操作請求指令,解除對應(yīng)對象文件的鎖定。
自客戶端發(fā)送的操作請求指令,所述操作請求指令根據(jù)指令內(nèi)容,對應(yīng)元數(shù)據(jù)服務(wù)器中分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄的文件,即操作請求指令的對象文件??紤]到元數(shù)據(jù)服務(wù)器的系統(tǒng)容量及其對象文件靈活性,請求隊列中的操作請求指令待執(zhí)行完成后,解除該操作請求指令的對應(yīng)對象文件,便于該對象文件的二次使用及釋放分布式文件系統(tǒng)容量。
參照圖3,圖3為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理方法的第三實施例的流程示意圖?;谏鲜龇椒ǖ牡谝粚嵤├龇椒?,還包括:
步驟S70,獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),若元數(shù)據(jù)服務(wù)器狀態(tài)都被設(shè)置為不可識別時,重置元數(shù)據(jù)服務(wù)器狀態(tài)為可識別狀態(tài)。
獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),所述元數(shù)據(jù)服務(wù)器不止一個,根據(jù)客戶需求及其分布式文件系統(tǒng)文件的存儲情況,設(shè)置多個元數(shù)據(jù)服務(wù)器進行數(shù)據(jù)存儲,并將已存儲數(shù)據(jù)的元數(shù)據(jù)服務(wù)器進行關(guān)聯(lián),并以元數(shù)據(jù)服務(wù)器為單位,依次接收自客戶端發(fā)送的操作請求指令,待一元數(shù)據(jù)服務(wù)器執(zhí)行操作請求指令后,將該元數(shù)據(jù)服務(wù)器狀態(tài)設(shè)置為不可識別后,切換另一元數(shù)據(jù)服務(wù)器接收操作請求指令;并逐一對當(dāng)前所有元數(shù)據(jù)服務(wù)器進行此種操作。
進一步的,根據(jù)預(yù)設(shè)周期,在周期內(nèi)獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),若獲取到的元數(shù)據(jù)服務(wù)器狀態(tài)都為不可識別狀態(tài)時,重置元數(shù)據(jù)服務(wù)器狀態(tài)為可識別狀態(tài)。所述預(yù)設(shè)周期,在元數(shù)據(jù)服務(wù)器中設(shè)置當(dāng)前獲取元數(shù)據(jù)服務(wù)器狀態(tài)檢查周期,周期內(nèi)獲取當(dāng)前元數(shù)據(jù)服務(wù)器的狀態(tài)。所述設(shè)置元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài),可通過設(shè)置當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識控制元數(shù)據(jù)服務(wù)器是否為可識別狀態(tài),例如,設(shè)置元數(shù)據(jù)服務(wù)器標(biāo)識為0,為元數(shù)據(jù)服務(wù)器不可識別狀態(tài)。在當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識都為0的狀態(tài)下,重置所有元數(shù)據(jù)服務(wù)器的標(biāo)識為1,用以重置元數(shù)據(jù)服務(wù)器為可識別狀態(tài)。
上述第一至第三實施例的分布式文件系統(tǒng)元數(shù)據(jù)處理方法的執(zhí)行主體均可以為發(fā)送操作請求指令功能的電子終端或與該電子終端連接的其他電子設(shè)備。更進一步地,該分布式文件系統(tǒng)元數(shù)據(jù)處理方法可以由分布式文件系統(tǒng)安裝客戶端程序?qū)崿F(xiàn),其中,該電子設(shè)備可以包括但不限于手機、pad、筆記本電腦等。
本發(fā)明進一步提供一種分布式文件系統(tǒng)元數(shù)據(jù)處理裝置。
參照圖4,圖4為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第一實施例的功能模塊示意圖。
在一實施例中,所述裝置包括:獲取模塊10、緩存模塊20、統(tǒng)計模塊30、對比模塊40、執(zhí)行模塊50及確認(rèn)模塊60。
獲取模塊10,用于獲取客戶端對元數(shù)據(jù)服務(wù)器的操作請求指令,所述操作請求指令的對象為元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄;
自客戶端發(fā)起對元數(shù)據(jù)服務(wù)器對對象的操作請求指令,所述客戶端為有發(fā)送操作請求指令的電子設(shè)備,或與該電子設(shè)備關(guān)聯(lián)的其他終端,或定制的專屬終端;該終端與元數(shù)據(jù)服務(wù)器通過無線網(wǎng)絡(luò)或有線網(wǎng)絡(luò)關(guān)聯(lián),用以進行操作請求指令的發(fā)送,所述關(guān)聯(lián)方式為現(xiàn)有技術(shù),在此不多贅述。在對應(yīng)元數(shù)據(jù)服務(wù)器中,接收客戶端發(fā)送的操作請求指令,所述操作請求指令對應(yīng)當(dāng)前接收的元數(shù)據(jù)服務(wù)器對象,所述對象為該元數(shù)據(jù)服務(wù)器下的分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄的文件,稱之為操作請求指令對應(yīng)的對象文件。即,每個操作請求指令都有對應(yīng)的對象文件用以進行當(dāng)前的操作請求指令。
緩存模塊20,用于將獲取到的操作請求指令緩存至請求隊列保存;
已獲取到的操作請求指令,按目標(biāo)順序?qū)⒉僮髡埱笾噶罹彺嬷琳埱箨犃兄斜4?,所述目?biāo)順序可以為接收操作請求指令的時間,或者按操作請求指令的緊急程度在請求隊列中排列,相關(guān)順序于元數(shù)據(jù)服務(wù)器中相關(guān)功能設(shè)置。
統(tǒng)計模塊30,用于統(tǒng)計請求隊列中的操作請求指令數(shù)量;
已在請求隊列中排列的操作請求指令,統(tǒng)計所述請求隊列中緩存的操作請求指令的數(shù)量。
對比模塊40,用于將統(tǒng)計的操作請求指令數(shù)量與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比;
將所述數(shù)量與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,所述預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,根據(jù)服務(wù)器的操作請求指令的執(zhí)行能力設(shè)置,即,該預(yù)設(shè)操作請求指令目標(biāo)數(shù)值的數(shù)值為當(dāng)前元數(shù)據(jù)服務(wù)器操作請求指令的較佳執(zhí)行數(shù)量。在所述元數(shù)據(jù)服務(wù)器接收客戶端發(fā)送的操作請求指令之前,在所述元數(shù)據(jù)服務(wù)器中相關(guān)功能設(shè)置完成,并根據(jù)元數(shù)據(jù)服務(wù)器的最佳執(zhí)行數(shù)量更改預(yù)設(shè)操作請求指令目標(biāo)數(shù)值或提示重新設(shè)置預(yù)設(shè)操作請求指令目標(biāo)數(shù)值。
執(zhí)行模塊50,用于若請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,則執(zhí)行請求隊列中的操作請求指令。
當(dāng)前緩存于請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)閾值時,表示當(dāng)前已接收并緩存的操作請求指令不能夠繼續(xù)進行緩存保留或當(dāng)前操作請求指令緩存的數(shù)量已達到當(dāng)前請求隊列的最大緩存內(nèi)存,按照當(dāng)前請求隊列中排列的操作請求指令,執(zhí)行每一條操作請求指令的內(nèi)容。
進一步的,所述計算請求隊列中的操作請求指令數(shù)量,與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,還包括:
確認(rèn)模塊60,用于若請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值,維持當(dāng)前操作狀態(tài),直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
當(dāng)前緩存于請求隊列中的操作請求指令數(shù)量小于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,維持當(dāng)前操作狀態(tài)不變,即繼續(xù)接收自客戶端發(fā)送的操作請求指令,并將接收到的操作請求指令緩存于請求隊列中,直至請求隊列中的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值后,執(zhí)行請求隊列中的操作請求指令。
進一步的,根據(jù)預(yù)設(shè)周期統(tǒng)計請求隊列中操作請求指令的數(shù)量,并與預(yù)設(shè)操作請求指令目標(biāo)數(shù)值對比,用以監(jiān)控已緩存的操作請求指令,待請求隊列中緩存的操作請求指令數(shù)量滿足執(zhí)行條件時執(zhí)行請求隊列中的操作請求指令。所述預(yù)設(shè)周期,在元數(shù)據(jù)服務(wù)器中設(shè)置當(dāng)前請求隊列檢查周期,周期內(nèi)統(tǒng)計當(dāng)前請求隊列中已緩存的操作請求指令。
本實施例通過接收客戶端發(fā)送的針對于元數(shù)據(jù)服務(wù)器下分布式文件目錄中統(tǒng)一目錄及其子目錄中對象文件的操作請求指令,并將之緩存至請求隊列中,在請求隊列中緩存的操作請求指令數(shù)量大于或等于預(yù)設(shè)操作請求指令目標(biāo)數(shù)值時,停止接收操作請求指令并執(zhí)行請求隊列中的操作請求指令內(nèi)容,統(tǒng)一執(zhí)行已接收到的操作請求指令,并控制接收操作請求指令的數(shù)量,保證了信息在通信過程的高度保密性,并高效率執(zhí)行操作請求指令。
參照圖5,圖5為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第二實施例的功能模塊示意圖。所述裝置還包括:設(shè)置模塊70及解鎖模塊80。
設(shè)置模塊70,用于設(shè)置原接收操作請求指令的元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài)。
在執(zhí)行請求隊列中的操作請求指令時,為避免依舊接收操作請求指令造成的操作請求指令執(zhí)行出錯,設(shè)置當(dāng)前執(zhí)行操作請求指令的元數(shù)據(jù)服務(wù)器為不可識別狀態(tài),所述不可識別狀態(tài),用以使客戶端不能搜索到該元數(shù)據(jù)服務(wù)器,進而不能針對該元數(shù)據(jù)服務(wù)器發(fā)起操作請求指令,從根本上阻止操作請求指令的發(fā)送及接收。保證操作請求指令執(zhí)行的保密性及高效率。所述設(shè)置元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài),可通過設(shè)置當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識控制元數(shù)據(jù)服務(wù)器是否為可識別狀態(tài),例如,設(shè)置元數(shù)據(jù)服務(wù)器標(biāo)識為0,為元數(shù)據(jù)服務(wù)器不可識別狀態(tài)。
進一步的,在當(dāng)前元數(shù)據(jù)服務(wù)器設(shè)置為不可識別狀態(tài),即不能接收自客戶端發(fā)送的操作請求指令后,切換與當(dāng)前執(zhí)行操作執(zhí)行指令的元數(shù)據(jù)服務(wù)器關(guān)聯(lián)的另一元數(shù)據(jù)服務(wù)器,用以獲取客戶端發(fā)送的操作請求指令,并進行與當(dāng)前執(zhí)行操作請求指令的元數(shù)據(jù)服務(wù)器同樣的操作。
解鎖模塊80,用于請求隊列中的操作請求指令執(zhí)行完成后,根據(jù)已執(zhí)行完成的操作請求指令,解除對應(yīng)對象文件的鎖定。
自客戶端發(fā)送的操作請求指令,所述操作請求指令根據(jù)指令內(nèi)容,對應(yīng)元數(shù)據(jù)服務(wù)器中分布式文件系統(tǒng)根目錄下統(tǒng)一目錄及其子目錄的文件,即操作請求指令的對象文件??紤]到元數(shù)據(jù)服務(wù)器的系統(tǒng)容量及其對象文件靈活性,請求隊列中的操作請求指令待執(zhí)行完成后,解除該操作請求指令的對應(yīng)對象文件,便于該對象文件的二次使用及釋放分布式文件系統(tǒng)容量。
參照圖6,圖6為本發(fā)明分布式文件系統(tǒng)元數(shù)據(jù)處理裝置的第三實施例的功能模塊示意圖。所述裝置還包括:重置模塊90。
所述獲取模塊10,還用于獲取當(dāng)前所有元數(shù)據(jù)服務(wù)器狀態(tài);
獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),所述元數(shù)據(jù)服務(wù)器不止一個,根據(jù)客戶需求及其分布式文件系統(tǒng)文件的存儲情況,設(shè)置多個元數(shù)據(jù)服務(wù)器進行數(shù)據(jù)存儲,并將已存儲數(shù)據(jù)的元數(shù)據(jù)服務(wù)器進行關(guān)聯(lián),并以元數(shù)據(jù)服務(wù)器為單位,依次接收自客戶端發(fā)送的操作請求指令,待一元數(shù)據(jù)服務(wù)器執(zhí)行操作請求指令后,將該元數(shù)據(jù)服務(wù)器狀態(tài)設(shè)置為不可識別后,切換另一元數(shù)據(jù)服務(wù)器接收操作請求指令;并逐一對當(dāng)前所有元數(shù)據(jù)服務(wù)器進行此種操作。
重置模塊90,用于若元數(shù)據(jù)服務(wù)器狀態(tài)都被設(shè)置為不可識別時,重置元數(shù)據(jù)服務(wù)器狀態(tài)為可識別狀態(tài)。
根據(jù)預(yù)設(shè)周期,在周期內(nèi)獲取當(dāng)前元數(shù)據(jù)服務(wù)器狀態(tài),若獲取到的元數(shù)據(jù)服務(wù)器狀態(tài)都為不可識別狀態(tài)時,重置元數(shù)據(jù)服務(wù)器狀態(tài)為可識別狀態(tài)。所述預(yù)設(shè)周期,在元數(shù)據(jù)服務(wù)器中設(shè)置當(dāng)前獲取元數(shù)據(jù)服務(wù)器狀態(tài)檢查周期,周期內(nèi)獲取當(dāng)前元數(shù)據(jù)服務(wù)器的狀態(tài)。所述設(shè)置元數(shù)據(jù)服務(wù)器狀態(tài)為不可識別狀態(tài),可通過設(shè)置當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識控制元數(shù)據(jù)服務(wù)器是否為可識別狀態(tài),例如,設(shè)置元數(shù)據(jù)服務(wù)器標(biāo)識為0,為元數(shù)據(jù)服務(wù)器不可識別狀態(tài)。在當(dāng)前元數(shù)據(jù)服務(wù)器標(biāo)識都為0的狀態(tài)下,重置所有元數(shù)據(jù)服務(wù)器的標(biāo)識為1,用以重置元數(shù)據(jù)服務(wù)器為可識別狀態(tài)。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。