專(zhuān)利名稱(chēng):分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法和裝置以及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及通信技術(shù),尤其涉及一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法和裝置以及系統(tǒng)。
背景技術(shù):
隨著計(jì)算機(jī)網(wǎng)絡(luò)和信息技術(shù)的飛速發(fā)展,全球信息存儲(chǔ)容量急劇增長(zhǎng),同時(shí)網(wǎng)絡(luò)存儲(chǔ)技術(shù)也在不斷發(fā)展,使得分布式存儲(chǔ)運(yùn)用廣泛,網(wǎng)絡(luò)規(guī)模不斷擴(kuò)大,訪問(wèn)的節(jié)點(diǎn)越來(lái)越多,在容量和帶寬增長(zhǎng)的同時(shí),用戶數(shù)量也在快速的增長(zhǎng),但是訪問(wèn)用戶的增多勢(shì)必會(huì)增加系統(tǒng)的訪問(wèn)時(shí)延,對(duì)用戶使用效果帶來(lái)不好的影響,這樣就使得流控技術(shù)成為在保證系統(tǒng)可用度的情況下,盡可能得為大多數(shù)用戶服務(wù)的一種技術(shù)趨勢(shì)?,F(xiàn)有的流控技術(shù)中,通過(guò)實(shí)時(shí)監(jiān)控系統(tǒng)中外部的訪問(wèn)情況以及系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的物理資源使用情況,自動(dòng)調(diào)節(jié)存儲(chǔ)節(jié)點(diǎn)的帶寬資源來(lái)限制外部的一些請(qǐng)求,但是現(xiàn)有的流控技術(shù)只能通過(guò)控制系統(tǒng)中網(wǎng)絡(luò)和硬件等資源的使用情況來(lái)限制外部的一些請(qǐng)求,使得經(jīng)常會(huì)出現(xiàn)有些用戶獨(dú)占資源,分布式系統(tǒng)利用率和吞吐量低的問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法和裝置以及系統(tǒng),以提高分布式存儲(chǔ)系統(tǒng)的利用率和吞吐量。本發(fā)明實(shí)施例第一方面提供一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,包括:接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求;根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限;根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。結(jié)合第一方面,在第一方面的第一種可能的實(shí)施方式中,所述根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限,包括:根據(jù)發(fā)起所述文件訪問(wèn)請(qǐng)求的用戶,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn);根據(jù)所述文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在所述流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。結(jié)合第一方面的第一種可能的實(shí)施方式,在第一方面的第二種可能的實(shí)施方式中,所述方法,還包括:當(dāng)接收到用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。結(jié)合第一方面或第一方面的第一種可能的實(shí)施方式或第一方面的第二種可能的實(shí)施方式,在第一方面的第三種可能的實(shí)施方式中,在根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限之后,還包括:
根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式;則所述根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作包括:當(dāng)識(shí)別到所述文件的訪問(wèn)模式為獨(dú)占方式時(shí),禁止所述用戶訪問(wèn)所述文件;當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件。結(jié)合第一方面的第三種可能的實(shí)施方式,在第一方面的第四種可能的實(shí)施方式中,在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,還包括:根據(jù)所述文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置所述文件在流控表項(xiàng)中的訪問(wèn)模式。結(jié)合第一方面的第三種可能的實(shí)施方式,在第一方面的第五種可能的實(shí)施方式中,所述當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件包括:當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),在所述流控表項(xiàng)中查詢(xún)所述文件的重定向存儲(chǔ)位置; 從所述重定向存儲(chǔ)位置執(zhí)行所述用戶對(duì)所述文件的訪問(wèn)操作。結(jié)合第一方面的第五種可能的實(shí)施方式,在第一方面的第六種可能的實(shí)施方式中,所述方法,還包括:根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置;根據(jù)其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置。結(jié)合第一方面,在第一方面的第七種可能的實(shí)施方式中,所述方法,還包括:監(jiān)控所述流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除所述流控表項(xiàng)。本發(fā)明第二方面提供一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,包括:接收模塊,用于接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求;查詢(xún)模塊,用于根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限;處理模塊,用于根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。結(jié)合第二方面,在第二方面的第一種可能的實(shí)施方式中,所述查詢(xún)模塊包括:權(quán)限查詢(xún)單元,用于根據(jù)發(fā)起所述文件訪問(wèn)請(qǐng)求的用戶,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn);時(shí)間查詢(xún)單元,用于根據(jù)所述文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在所述流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。結(jié)合第二方面的第一種可能的實(shí)施方式,在第二方面的第二種可能的實(shí)施方式中,所述裝置,還包括:設(shè)置模塊,用于當(dāng)接收到所述用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置所述流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。結(jié)合第二方面或第二方面的第一種可能的實(shí)施方式或第二方面的第二種可能的實(shí)施方式,在第二方面的第三種可能的實(shí)施方式中,所述裝置,還包括:模式識(shí)別模塊,用于在根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限之后,根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式;
則所述處理模塊包括:獨(dú)占禁止單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為獨(dú)占方式時(shí),禁止所述用戶訪問(wèn)所述文件;共享指示單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件。結(jié)合第二方面的第三種可能的實(shí)施方式,在第二方面的第四種可能的實(shí)施方式中,所述裝置,還包括:模式設(shè)置模塊,用于在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,根據(jù)所述文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置所述文件在流控表項(xiàng)中的訪問(wèn)模式。結(jié)合第二方面的第四種可能的實(shí)施方式,在第二方面的第五種可能的實(shí)施方式中,所述共享指示單元,包括:位置查詢(xún)子單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),在所述流控表項(xiàng)中查詢(xún)所述文件的重定向存儲(chǔ)位置;重定向子單元,用于從所述重定向存儲(chǔ)位置執(zhí)行所述用戶對(duì)所述文件的訪問(wèn)操作。結(jié)合第二方面的第五種可能的實(shí)施方式,在第二方面的第六種可能的實(shí)施方式中,所述裝置,還包括:位置確定模塊,用于根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置;位置選擇模塊,用于根據(jù)所述其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置。結(jié)合第二方面,在第二方面的第七種可能的實(shí)施方式中,所述裝置,還包括:監(jiān)控模塊,用于監(jiān)控所述流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除所述流控表項(xiàng)。本發(fā)明第三方面提供一種分布式存儲(chǔ)系統(tǒng),包括至少兩個(gè)存儲(chǔ)節(jié)點(diǎn),每個(gè)所述存儲(chǔ)節(jié)點(diǎn)包括第二方面至第二方面的第七種可能的實(shí)施方式中任一項(xiàng)所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置。本實(shí)施例提供的方案中,通過(guò)文件對(duì)應(yīng)的流控表項(xiàng),以用戶粒度來(lái)控制是否具有訪問(wèn)該文件的權(quán)限,通過(guò)這種文件流控的限制,使得分布式網(wǎng)絡(luò)中對(duì)節(jié)點(diǎn)流量的控制粒度細(xì)化到發(fā)起訪問(wèn)請(qǐng)求的用戶,解決了現(xiàn)有技術(shù)中因流控粒度大,造成某些用戶獨(dú)占資源,分布式系統(tǒng)的利用率低的問(wèn)題。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1A為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法實(shí)施例一的流程示意圖;圖1B本發(fā)明實(shí)施例所適用的分布式存儲(chǔ)系統(tǒng)的架構(gòu)示意圖;圖2為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法實(shí)施例四的流程示意圖;圖3為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例七的結(jié)構(gòu)示意圖4為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例八的結(jié)構(gòu)示意圖;圖5為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例九的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖1A為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法實(shí)施例一的流程示意圖。圖1B為本發(fā)明實(shí)施例所適用的分布式存儲(chǔ)系統(tǒng)的架構(gòu)示意圖,在分布式存儲(chǔ)系統(tǒng)中,包括至少兩個(gè)存儲(chǔ)節(jié)點(diǎn),每個(gè)文件可存儲(chǔ)在一個(gè)或多個(gè)存儲(chǔ)節(jié)點(diǎn)上,可單獨(dú)存儲(chǔ)一份,也可以備份存儲(chǔ)在多個(gè)存儲(chǔ)節(jié)點(diǎn)中。每個(gè)存儲(chǔ)節(jié)點(diǎn)均可獲知整個(gè)分布式存儲(chǔ)系統(tǒng)中的文件分布位置。本實(shí)施例的方法由分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置執(zhí)行,該裝置可以集成在存儲(chǔ)節(jié)點(diǎn)中。本實(shí)施例的方法包括如下步驟:SlOl:接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求。S102:根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限。具體的,用戶向分布式系統(tǒng)的存儲(chǔ)節(jié)點(diǎn)發(fā)送文件訪問(wèn)的請(qǐng)求,該存儲(chǔ)節(jié)點(diǎn)接收用戶發(fā)起的該文件訪問(wèn)的請(qǐng)求,并根據(jù)該請(qǐng)求,在上述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)?cè)撚脩舻氖欠窬哂性L問(wèn)該文件的權(quán)限。S103:根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。具體的,上述存儲(chǔ)節(jié)點(diǎn)在查詢(xún)到該用戶具有訪問(wèn)文件的權(quán)限時(shí),則執(zhí)行該文件對(duì)應(yīng)的相關(guān)訪問(wèn)操作,若該存儲(chǔ)節(jié)點(diǎn)查詢(xún)到該用戶并不具有訪問(wèn)該文件的權(quán)限時(shí),則可以返回一個(gè)結(jié)果給用戶,告知該用戶該存儲(chǔ)節(jié)點(diǎn)上的文件禁止被該用戶訪問(wèn)。本實(shí)施例提供的方法中,通過(guò)根據(jù)用戶發(fā)起的文件訪問(wèn)的請(qǐng)求,在所訪問(wèn)的文件流控表項(xiàng)中查詢(xún)?cè)撚脩羰欠窬哂性L問(wèn)文件的權(quán)限,并根據(jù)所查詢(xún)的訪問(wèn)文件權(quán)限的具體內(nèi)容,執(zhí)行相應(yīng)的文件操作,通過(guò)文件對(duì)應(yīng)的流控表項(xiàng),來(lái)控制外部用戶是否具有訪問(wèn)該節(jié)點(diǎn)上文件的權(quán)限,通過(guò)這種文件流控的限制,使得分布式網(wǎng)絡(luò)中對(duì)節(jié)點(diǎn)流量的控制粒度細(xì)化到發(fā)起訪問(wèn)請(qǐng)求的用戶,解決了現(xiàn)有技術(shù)中因流控粒度大,造成某些用戶獨(dú)占資源,分布式系統(tǒng)的利用率低的問(wèn)題。在本發(fā)明的實(shí)施例二中,在上述圖1所示實(shí)施例的基礎(chǔ)上,根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限優(yōu)選的,可以為:根據(jù)發(fā)起上述文件訪問(wèn)請(qǐng)求的用戶,在該文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)?cè)撚脩舻脑L問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn);并根據(jù)該文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在該流控表項(xiàng)中查詢(xún)?cè)撚脩舻脑L問(wèn)權(quán)限的訪問(wèn)時(shí)間。具體的,當(dāng)分布式系統(tǒng)的存儲(chǔ)節(jié)點(diǎn)接收用戶發(fā)起的該文件訪問(wèn)的請(qǐng)求之后,根據(jù)發(fā)起該訪問(wèn)請(qǐng)求的用戶,在該文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)?cè)撚脩羰欠窬哂性L問(wèn)權(quán)限,以及可進(jìn)一步識(shí)別訪問(wèn)權(quán)限的內(nèi)容,例如,訪問(wèn)權(quán)限可以為允許訪問(wèn)或禁止訪問(wèn)。流控表項(xiàng)中還可包括該訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。訪問(wèn)權(quán)限和訪問(wèn)時(shí)間的表示形式可以有多種,例如該文件對(duì)應(yīng)的流控表項(xiàng)中包含了用戶標(biāo)識(shí)、禁止位以及時(shí)間信息,該用戶標(biāo)識(shí)用于表示該用戶,禁止位標(biāo)識(shí)允許(Allow)或者禁止(Deny)訪問(wèn)該文件,流控表項(xiàng)中的時(shí)間信息,用于指示上述用戶標(biāo)識(shí)對(duì)應(yīng)的用戶在時(shí)間信息所指定的時(shí)間里允許或者禁止訪問(wèn)該文件。時(shí)間信息的形式多樣,例如規(guī)定該訪問(wèn)權(quán)限的開(kāi)始執(zhí)行時(shí)間,或規(guī)定開(kāi)始執(zhí)行的時(shí)間段等。本實(shí)施例提供的方法中,通過(guò)根據(jù)用戶發(fā)起的文件訪問(wèn)的請(qǐng)求,在所訪問(wèn)的文件流控表項(xiàng)中通過(guò)查詢(xún)流控表項(xiàng)中的用戶標(biāo)識(shí)、時(shí)間信息以及禁止位的值,確定該發(fā)起文件訪問(wèn)請(qǐng)求的用戶是否具有訪問(wèn)文件的權(quán)限,通過(guò)這種文件流控的限制,使得分布式網(wǎng)絡(luò)中對(duì)節(jié)點(diǎn)流量的控制粒度細(xì)化到發(fā)起訪問(wèn)請(qǐng)求的用戶,解決了現(xiàn)有技術(shù)中因流控粒度大,造成某些用戶獨(dú)占資源,分布式系統(tǒng)的利用率低的問(wèn)題。在本發(fā)明的實(shí)施例三中,在上述實(shí)施例一以及實(shí)施例二的基礎(chǔ)上,根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限優(yōu)選的,還可以為:當(dāng)接收到用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。具體的,用戶的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間可以通過(guò)用戶訪問(wèn)權(quán)限設(shè)置指令在任意時(shí)刻進(jìn)行設(shè)置。通常是分布式存儲(chǔ)系統(tǒng)根據(jù)需要進(jìn)行設(shè)置。可以是針對(duì)某一個(gè)特定用戶進(jìn)行設(shè)置,也可以是對(duì)一組用戶進(jìn)行權(quán)限設(shè)置,還可以是對(duì)滿足某個(gè)特定條件的所有用戶進(jìn)行統(tǒng)一的權(quán)限設(shè)置。例如,可以由管理員向存儲(chǔ)節(jié)點(diǎn)發(fā)送用戶訪問(wèn)權(quán)限設(shè)置指令,該存儲(chǔ)節(jié)點(diǎn)接收管理員發(fā)送的用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),在流控表項(xiàng)中為各訪問(wèn)該存儲(chǔ)節(jié)點(diǎn)的文件的用戶設(shè)置訪問(wèn)權(quán)限和訪問(wèn)時(shí)間,通過(guò)設(shè)置流控表項(xiàng)里的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間,對(duì)外部發(fā)起訪問(wèn)文件的用戶進(jìn)行流控。若在管理員向該存儲(chǔ)節(jié)點(diǎn)發(fā)送用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),該存儲(chǔ)節(jié)點(diǎn)已經(jīng)有用戶在請(qǐng)求訪問(wèn)文件,則該存儲(chǔ)節(jié)點(diǎn)直接對(duì)該用戶進(jìn)行允許訪問(wèn)文件的操作,直接打開(kāi)文件;若在管理員向該存儲(chǔ)節(jié)點(diǎn)發(fā)送用戶訪問(wèn)權(quán)限設(shè)置指令之后,該存儲(chǔ)節(jié)點(diǎn)的文件的流控表項(xiàng)已經(jīng)設(shè)置完成,用戶向該存儲(chǔ)節(jié)點(diǎn)發(fā)送文件訪問(wèn)請(qǐng)求,則當(dāng)該存儲(chǔ)節(jié)點(diǎn)接收到外部用戶發(fā)起的訪問(wèn)文件的請(qǐng)求時(shí),即需要通過(guò)查詢(xún)?cè)撛O(shè)置之后的文件流控表項(xiàng),通過(guò)文件流控表項(xiàng)中的用戶標(biāo)識(shí)、禁止位和時(shí)間信息,判斷當(dāng)前發(fā)起訪問(wèn)文件請(qǐng)求的用戶的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。對(duì)流控表項(xiàng)中用戶訪問(wèn)權(quán)限的設(shè)置,不僅可以由人工手動(dòng)設(shè)置,也可以由存儲(chǔ)系統(tǒng)按照設(shè)定的配置策略自動(dòng)進(jìn)行設(shè)置。例如,存儲(chǔ)節(jié)點(diǎn)記錄文件訪問(wèn)歷史信息,對(duì)經(jīng)常獨(dú)占訪問(wèn)某個(gè)文件的用戶,設(shè)置其訪問(wèn)權(quán)限為禁止訪問(wèn)。本發(fā)明對(duì)配置策略并不做限制。本實(shí)施例提供的方法中,通過(guò)向存儲(chǔ)節(jié)點(diǎn)發(fā)送用戶訪問(wèn)權(quán)限設(shè)置指令,存儲(chǔ)節(jié)點(diǎn)接收該指令后,根據(jù)該指令設(shè)置流控表項(xiàng)中各用戶的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間,對(duì)外部發(fā)起訪問(wèn)文件請(qǐng)求的用戶進(jìn)行流控,即外部用戶在訪問(wèn)該存儲(chǔ)節(jié)點(diǎn)時(shí)就需要通過(guò)查詢(xún)?cè)摿骺乇眄?xiàng)來(lái)獲知當(dāng)前是否具有訪問(wèn)該存儲(chǔ)節(jié)點(diǎn)的文件的權(quán)限,通過(guò)這種文件流控的限制,使得分布式網(wǎng)絡(luò)中對(duì)節(jié)點(diǎn)流量的控制粒度細(xì)化到發(fā)起訪問(wèn)請(qǐng)求的用戶,解決了現(xiàn)有技術(shù)中因流控粒度大,造成某些用戶獨(dú)占資源,分布式系統(tǒng)的利用率低的問(wèn)題。圖2為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法實(shí)施例四的流程示意圖。該方法由分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置執(zhí)行,該裝置可以集成在存儲(chǔ)節(jié)點(diǎn)中。本實(shí)施例的方法包括如下步驟:S201:接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求。S202:根據(jù)文件訪問(wèn)請(qǐng)求,在該文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)?cè)撚脩舻脑L問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn),若為禁止訪問(wèn),則結(jié)束此次訪問(wèn)請(qǐng)求,若為允許訪問(wèn),則繼續(xù)執(zhí)行后續(xù)步驟。或者,也可以不指示訪問(wèn)權(quán)限為禁止或允許,而根據(jù)后續(xù)文件的訪問(wèn)模式?jīng)Q定是否可訪問(wèn)。S203:根據(jù)該文件訪問(wèn)請(qǐng)求,在該文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別該文件的訪問(wèn)模式為獨(dú)占方式或共享方式;若識(shí)別該文件的訪問(wèn)模式為獨(dú)占模式,則執(zhí)行步驟204 ;若識(shí)別該文件的訪問(wèn)模式為共享模式,則執(zhí)行步驟205。S204:禁止該用戶訪問(wèn)該文件,結(jié)束此次訪問(wèn)請(qǐng)求。S205:指示該用戶從其他存儲(chǔ)位置訪問(wèn)該文件。具體的指示方式可以向用戶返回通知,告知其可以再發(fā)送訪問(wèn)請(qǐng)求,從其他位置訪問(wèn),也可以進(jìn)一步告知用戶該文件的其它副本的存儲(chǔ)位置?;蛘?,可將此訪問(wèn)請(qǐng)求直接重定向到其他存儲(chǔ)位置。具體的,該存儲(chǔ)節(jié)點(diǎn)根據(jù)當(dāng)前的文件訪問(wèn)請(qǐng)求,查詢(xún)到當(dāng)前發(fā)起文件訪問(wèn)請(qǐng)求的用戶允許訪問(wèn)該文件,則該存儲(chǔ)節(jié)點(diǎn)根據(jù)該文件訪問(wèn)請(qǐng)求,在該文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式。其中,獨(dú)占方式為在一個(gè)時(shí)刻僅允許一個(gè)用戶訪問(wèn)該文件,共享方式為允許同一時(shí)刻有多個(gè)用戶訪問(wèn)該文件的多個(gè)副本。例如,寫(xiě)文件操作一般為獨(dú)占方式,讀文件一般為共享方式。當(dāng)然,也可以由其他因素決定該文件采用哪種方式訪問(wèn)。在本實(shí)施例中,以文件的訪問(wèn)模式進(jìn)一步精細(xì)化控制用戶的文件訪問(wèn)。在訪問(wèn)過(guò)程中,在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,還可以包括:S206:根據(jù)該文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置該文件在流控表項(xiàng)中的訪問(wèn)模式。例如,當(dāng)文件訪問(wèn)請(qǐng)求為讀請(qǐng)求時(shí),設(shè)置文件在流控表項(xiàng)中的訪問(wèn)模式為共享方式,當(dāng)文件訪問(wèn)請(qǐng)求為寫(xiě)請(qǐng)求時(shí),設(shè)置在流控表項(xiàng)中的訪問(wèn)模式為獨(dú)占方式。設(shè)置為獨(dú)占方式的文件,在該用戶訪問(wèn)結(jié)束之前將不能被其他用戶訪問(wèn),當(dāng)該用戶訪問(wèn)結(jié)束后,可更改其訪問(wèn)模式為共享方式。當(dāng)然,訪問(wèn)模式也可以有其它配置方式,例如由管理員通過(guò)指令來(lái)配置。本發(fā)明對(duì)此不限制。S207:監(jiān)控該流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除該流控表項(xiàng)。進(jìn)一步地,在執(zhí)行上述操作時(shí)該存儲(chǔ)節(jié)點(diǎn)會(huì)實(shí)時(shí)監(jiān)控該文件流控表項(xiàng)的老化時(shí)間,當(dāng)流控表項(xiàng)中的流控信息到達(dá)老化時(shí)間,則刪除當(dāng)前的流控表項(xiàng),取消該節(jié)點(diǎn)對(duì)文件的流控。本實(shí)施例的方法還通過(guò)根據(jù)用戶訪問(wèn)文件請(qǐng)求的類(lèi)型設(shè)置文件訪問(wèn)模式,在文件訪問(wèn)模式為共享模式時(shí),指示訪問(wèn)當(dāng)前存儲(chǔ)節(jié)點(diǎn)的下一個(gè)用戶從文件的其他存儲(chǔ)位置訪問(wèn)該文件,通過(guò)將用戶的訪問(wèn)請(qǐng)求分擔(dān)到其他存儲(chǔ)節(jié)點(diǎn)上的網(wǎng)絡(luò)負(fù)載分擔(dān)的方式,提高了用戶的響應(yīng)時(shí)間,也有效的提高了分布式系統(tǒng)的利用率。進(jìn)一步地,在本發(fā)明的實(shí)施例五中,在上述實(shí)施例四的基礎(chǔ)上,指示該用戶從其他存儲(chǔ)位置訪問(wèn)該文件優(yōu)選的,可以為:當(dāng)識(shí)別到該文件的訪問(wèn)模式為共享方式時(shí),在上述流控表項(xiàng)中查詢(xún)?cè)撐募闹囟ㄏ虼鎯?chǔ)位置;從該重定向存儲(chǔ)位置執(zhí)行該用戶對(duì)該文件的訪問(wèn)操作。具體的,當(dāng)該存儲(chǔ)節(jié)點(diǎn)識(shí)別到該文件的訪問(wèn)模式為共享模式時(shí),在上述文件流控表項(xiàng)中查詢(xún)?cè)撐募闹囟ㄏ虼鎯?chǔ)位置。該文件流控表項(xiàng)中還包括了當(dāng)前文件存儲(chǔ)在其他節(jié)點(diǎn)的位置信息,則該存儲(chǔ)節(jié)點(diǎn)通過(guò)查詢(xún)?cè)撐募骺乇眄?xiàng)中當(dāng)前訪問(wèn)文件的其他存儲(chǔ)位置,將該用戶訪問(wèn)該文件的請(qǐng)求重定向到該文件的其他存儲(chǔ)位置上。更具體的,當(dāng)該存儲(chǔ)節(jié)點(diǎn)將該用戶訪問(wèn)該文件的請(qǐng)求重定向到該文件的其他存儲(chǔ)位置上之后,從文件的其他存儲(chǔ)位置上訪問(wèn)該文件。在本發(fā)明的實(shí)施例六中,在上述實(shí)施例四和實(shí)施例五的基礎(chǔ)上,指示該用戶從其他存儲(chǔ)位置訪問(wèn)該文件優(yōu)選的,還可以為:根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置;根據(jù)其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置;從上述重定向存儲(chǔ)位置執(zhí)行該用戶對(duì)該文件的訪問(wèn)操作。具體的,當(dāng)該存儲(chǔ)節(jié)點(diǎn)識(shí)別到該文件的訪問(wèn)模式為共享模式時(shí),在上述文件流控表項(xiàng)中查詢(xún)?cè)撐募闹囟ㄏ虼鎯?chǔ)位置,進(jìn)一步地,該文件流控表項(xiàng)中還包括了當(dāng)前文件存儲(chǔ)在其他節(jié)點(diǎn)的位置信息,該存儲(chǔ)節(jié)點(diǎn)的文件在創(chuàng)建時(shí),文件的其他存儲(chǔ)位置是當(dāng)前存儲(chǔ)節(jié)點(diǎn)所預(yù)知的,則當(dāng)前的存儲(chǔ)節(jié)點(diǎn)根據(jù)文件的其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置,即根據(jù)文件的其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)用戶的訪問(wèn)情況,決定將當(dāng)前存儲(chǔ)節(jié)點(diǎn)的當(dāng)前用戶的訪問(wèn)請(qǐng)求定向到負(fù)載較輕的文件存儲(chǔ)的某一個(gè)節(jié)點(diǎn)上,從而在重定向的節(jié)點(diǎn)上執(zhí)行該用戶對(duì)該文件的訪問(wèn)操作。上述技術(shù)方案中,由于存儲(chǔ)節(jié)點(diǎn)可獲知文件的分布信息,所以可從多個(gè)存儲(chǔ)位置中為用戶選擇可獲取此文件的位置,將訪問(wèn)請(qǐng)求直接重定向到該存儲(chǔ)位置的存儲(chǔ)節(jié)點(diǎn),以供用戶訪問(wèn),而不必由用戶重新發(fā)起訪問(wèn)請(qǐng)求,減少了信息交互資源的占用。若當(dāng)前存儲(chǔ)節(jié)點(diǎn)將當(dāng)前用戶的訪問(wèn)請(qǐng)求定向到負(fù)載較輕的文件存儲(chǔ)的某一個(gè)存儲(chǔ)節(jié)點(diǎn)上,進(jìn)而在重定向的存儲(chǔ)節(jié)點(diǎn)上執(zhí)行該用戶對(duì)該文件的訪問(wèn)操作,可以與前述執(zhí)行的過(guò)程相同,在重定向的存儲(chǔ)節(jié)點(diǎn)上根據(jù)該文件的流控表項(xiàng)進(jìn)行流控。具體為:重定向的存儲(chǔ)節(jié)點(diǎn)接收用戶發(fā)起的訪問(wèn)文件的請(qǐng)求,并根據(jù)文件的訪問(wèn)請(qǐng)求,在該文件對(duì)飲的流控表項(xiàng)中查詢(xún)?cè)撚脩舻脑L問(wèn)權(quán)限,若重定向的存儲(chǔ)節(jié)點(diǎn)的文件流控表項(xiàng)中沒(méi)有該用戶的流控信息,則該重定向的存儲(chǔ)節(jié)點(diǎn)直接打開(kāi)該用戶所訪問(wèn)的文件,以使用戶執(zhí)行相應(yīng)的操作,之后,將該用戶的流控信息記錄到該文件的流控表項(xiàng)中,以使該重定向的存儲(chǔ)節(jié)點(diǎn)對(duì)下一個(gè)訪問(wèn)該節(jié)點(diǎn)的用戶進(jìn)行流控;若重定向的存儲(chǔ)節(jié)點(diǎn)的文件流控表項(xiàng)中有該用戶的流控信息,則重定向的存儲(chǔ)節(jié)點(diǎn)會(huì)識(shí)別當(dāng)前所訪問(wèn)文件的文件訪問(wèn)模式為獨(dú)占方式或共享方式,若識(shí)別該文件的訪問(wèn)模式為獨(dú)占模式,則重定向的存儲(chǔ)節(jié)點(diǎn)仍會(huì)返回禁止訪問(wèn)當(dāng)前文件的結(jié)果給用戶;若識(shí)別該文件的訪問(wèn)模式為共享模式,則重定向的存儲(chǔ)節(jié)點(diǎn)會(huì)如上一個(gè)存儲(chǔ)節(jié)點(diǎn)的處理方式一樣,將該用戶訪問(wèn)該文件的請(qǐng)求重定向到另外一個(gè)文件的存儲(chǔ)節(jié)點(diǎn)上,進(jìn)一步地,在執(zhí)行上述操作時(shí)該存儲(chǔ)節(jié)點(diǎn)會(huì)實(shí)時(shí)監(jiān)控該文件流控表項(xiàng)的老化時(shí)間,當(dāng)流控表項(xiàng)中的流控信息到達(dá)老化時(shí)間,則刪除當(dāng)前的流控表項(xiàng),取消該節(jié)點(diǎn)對(duì)文件的流控。具體的實(shí)施方式參見(jiàn)上述實(shí)施例二。本實(shí)施例的方法在文件訪問(wèn)模式為共享模式時(shí),指示訪問(wèn)當(dāng)前存儲(chǔ)節(jié)點(diǎn)的下一個(gè)用戶從文件的其他存儲(chǔ)位置訪問(wèn)該文件,通過(guò)將用戶的訪問(wèn)請(qǐng)求分擔(dān)到其他存儲(chǔ)節(jié)點(diǎn)上的網(wǎng)絡(luò)負(fù)載分擔(dān)的方式,提高了用戶的響應(yīng)時(shí)間,也有效的提高了分布式系統(tǒng)的利用率。本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述各方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成。前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。該程序在執(zhí)行時(shí),執(zhí)行包括上述各方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:R0M、RAM、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。圖3為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例七的結(jié)構(gòu)示意圖,該裝置包括:接收模塊31、查詢(xún)模塊32以及處理模塊33,其中,接收模塊31,用于接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求;查詢(xún)模塊32,用于根據(jù)所述文件訪問(wèn)請(qǐng)求,在文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限;處理模塊33,用于根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。本實(shí)施例的文件訪問(wèn)裝置可以執(zhí)行圖1所示方法實(shí)施例,其實(shí)現(xiàn)原理和技術(shù)效果類(lèi)似,此處不再贅述。圖4為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例八的結(jié)構(gòu)示意圖,在圖3所示實(shí)施例的基礎(chǔ)上,上述查詢(xún)模塊32包括:權(quán)限查詢(xún)單元320,用于根據(jù)發(fā)起所述文件訪問(wèn)請(qǐng)求的用戶,在文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn);時(shí)間查詢(xún)單元321,用于根據(jù)所述文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在所述流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。則在圖3所示實(shí)施例的基礎(chǔ)上,該裝置還包括:設(shè)置模塊34,用于當(dāng)接收到用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。。本實(shí)施例的文件訪問(wèn)裝置可以執(zhí)行方法實(shí)施例二和方法實(shí)施例三,其實(shí)現(xiàn)原理和技術(shù)效果類(lèi)似,此處不再贅述。進(jìn)一步地,在上述圖4所示實(shí)施例的基礎(chǔ)上,上述處理模塊還可以包括獨(dú)占禁止單元330和共享指示單元331,其中,獨(dú)占禁止單元330,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為獨(dú)占方式時(shí),禁止所述用戶訪問(wèn)所述文件;共享指示單元331,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件。則在上述圖4所示實(shí)施例的基礎(chǔ)上,該裝置還可以包括模式識(shí)別模塊35,用于在根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限之后,根據(jù)所述文件訪問(wèn)請(qǐng)求,在文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式。本實(shí)施例的文件訪問(wèn)裝置可以執(zhí)行方法實(shí)施例二和方法實(shí)施例三,其實(shí)現(xiàn)原理和技術(shù)效果類(lèi)似,此處不再贅述。圖5為本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置實(shí)施例九的結(jié)構(gòu)示意圖,在圖3和圖4所示實(shí)施例的基礎(chǔ)上,上述共享指示單元還可以包括:位置查詢(xún)子單元401和重定向子單元402,其中,位置查詢(xún)子單元401,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),在所述流控表項(xiàng)中查詢(xún)所述文件的重定向存儲(chǔ)位置;重定向子單元402,用于從所述重定向存儲(chǔ)位置執(zhí)行所述用戶對(duì)所述文件的訪問(wèn)操作,則上述裝置還可以包括模式設(shè)置模塊36,用于在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,根據(jù)所述文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置所述文件在流控表項(xiàng)中的訪問(wèn)模式。本實(shí)施例的文件訪問(wèn)裝置可以執(zhí)行方法實(shí)施例四至方法實(shí)施例六,其實(shí)現(xiàn)原理和技術(shù)效果類(lèi)似,此處不再贅述。
進(jìn)一步地,在上述圖5所示實(shí)施例的基礎(chǔ)上,該裝置還可以包括:位置確定模塊37和位置選擇模塊38,其中,位置確定模塊37,用于根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置;位置選擇模塊38,用于根據(jù)所述其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置。還可以包括監(jiān)控模塊39,用于監(jiān)控所述流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除所述流控表項(xiàng)。本實(shí)施例的文件訪問(wèn)裝置可以執(zhí)行方法實(shí)施例四至方法實(shí)施例六,其實(shí)現(xiàn)原理和技術(shù)效果類(lèi)似,此處不再贅述。在本發(fā)明提供的分布式存儲(chǔ)系統(tǒng)實(shí)施例中,該分布式存儲(chǔ)系統(tǒng)包括至少兩個(gè)存儲(chǔ)節(jié)點(diǎn),每個(gè)存儲(chǔ)節(jié)點(diǎn)包括上述實(shí)施例所示的分布式系統(tǒng)的文件訪問(wèn)裝置,具體實(shí)施方式
及技術(shù)效果在此不再贅述。最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。
權(quán)利要求
1.一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,包括: 接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求; 根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限; 根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。
2.根據(jù)權(quán)利要求1所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,所述根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限,包括: 根據(jù)發(fā)起所述文件訪問(wèn)請(qǐng)求的用戶,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn); 根據(jù)所述文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在所述流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。
3.根據(jù)權(quán)利要求2所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,還包括: 當(dāng)接收到所述用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置所述流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。
4.根據(jù)權(quán)利要求1或2或3所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,在根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限之后,還包括: 根據(jù)所述文件訪問(wèn)請(qǐng) 求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式; 則所述根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作包括:當(dāng)識(shí)別到所述文件的訪問(wèn)模式為獨(dú)占方式時(shí),禁止所述用戶訪問(wèn)所述文件;當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件。
5.根據(jù)權(quán)利要求4所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,還包括: 根據(jù)所述文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置所述文件在流控表項(xiàng)中的訪問(wèn)模式。
6.根據(jù)權(quán)利要求4所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,所述當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件包括: 當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),在所述流控表項(xiàng)中查詢(xún)所述文件的重定向存儲(chǔ)位置; 從所述重定向存儲(chǔ)位置執(zhí)行所述用戶對(duì)所述文件的訪問(wèn)操作。
7.根據(jù)權(quán)利要求6所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,還包括: 根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置; 根據(jù)其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置。
8.根據(jù)權(quán)利要求1所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,其特征在于,還包括: 監(jiān)控所述流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除所述流控表項(xiàng)。
9.一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,包括: 接收模塊,用于接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求; 查詢(xún)模塊,用于根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限; 處理模塊,用于根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。
10.根據(jù)權(quán)利要求9所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,所述查詢(xún)模塊包括: 權(quán)限查詢(xún)單元,用于根據(jù)發(fā)起所述文件訪問(wèn)請(qǐng)求的用戶,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限為允許訪問(wèn)或禁止訪問(wèn); 時(shí)間查詢(xún)單元,用于根據(jù)所述文件訪問(wèn)請(qǐng)求的發(fā)起時(shí)間,在所述流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限的訪問(wèn)時(shí)間。
11.根據(jù)權(quán)利要求10所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,還包括: 設(shè)置模塊,用于當(dāng)接收到所述用戶訪問(wèn)權(quán)限設(shè)置指令時(shí),設(shè)置流控表項(xiàng)中為各用戶設(shè)置的訪問(wèn)權(quán)限和訪問(wèn)時(shí)間。
12.根據(jù)權(quán)利要求9或10或11所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,還包括: 模式識(shí)別模塊,用于在根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限之后,根據(jù)所述文件訪問(wèn)請(qǐng)求,在文件對(duì)應(yīng)的流控表項(xiàng)中識(shí)別所述文件的訪問(wèn)模式為獨(dú)占方式或共享方式; 則所述處理模塊包括: 獨(dú)占禁止單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為獨(dú)占方式時(shí),禁止所述用戶訪問(wèn)所述文件; 共享指示單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),指示所述用戶從其他存儲(chǔ)位置訪問(wèn)所述文件。
13.根據(jù)權(quán)利要求12所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,還包括: 模式設(shè)置模塊,用于在根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作之后,根據(jù)所述文件訪問(wèn)請(qǐng)求的類(lèi)型,設(shè)置所述文件在流控表項(xiàng)中的訪問(wèn)模式。
14.根據(jù)權(quán)利要求12所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,共享指示單元包括: 位置查詢(xún)子單元,用于當(dāng)識(shí)別到所述文件的訪問(wèn)模式為共享方式時(shí),在所述流控表項(xiàng)中查詢(xún)所述文件的重定向存儲(chǔ)位置; 重定向子單元,用于從所述重定向存儲(chǔ)位置執(zhí)行所述用戶對(duì)所述文件的訪問(wèn)操作。
15.根據(jù)權(quán)利要求14所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,還包括: 位置確定模塊,用于根據(jù)文件在其他存儲(chǔ)節(jié)點(diǎn)的分布信息確定其他存儲(chǔ)位置; 位置選擇模塊,用于根據(jù)所述其他存儲(chǔ)位置所在存儲(chǔ)節(jié)點(diǎn)的負(fù)載情況選擇重定向存儲(chǔ)位置。
16.根據(jù)權(quán)利要求9所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置,其特征在于,還包括: 監(jiān)控模塊,用于監(jiān)控所述流控表項(xiàng)的老化時(shí)間,當(dāng)?shù)竭_(dá)老化時(shí)間時(shí),刪除所述流控表項(xiàng)。
17.—種分布式存儲(chǔ)系統(tǒng),包括至少兩個(gè)存儲(chǔ)節(jié)點(diǎn),其特征在于,每個(gè)所述存儲(chǔ)節(jié)點(diǎn)包括權(quán)利要求9-16任一所述的分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)裝置。
全文摘要
本發(fā)明實(shí)施例提供一種分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法和裝置以及系統(tǒng)。本發(fā)明分布式存儲(chǔ)系統(tǒng)的文件訪問(wèn)方法,包括接收用戶發(fā)起的文件訪問(wèn)請(qǐng)求;根據(jù)所述文件訪問(wèn)請(qǐng)求,在所述文件對(duì)應(yīng)的流控表項(xiàng)中查詢(xún)所述用戶的訪問(wèn)權(quán)限;根據(jù)查詢(xún)到的訪問(wèn)權(quán)限執(zhí)行所述文件的訪問(wèn)操作。本發(fā)明實(shí)施例解決了分布式系統(tǒng)中因流控技術(shù)控制粒度不夠細(xì)導(dǎo)致某些用戶獨(dú)占資源,使得分布式系統(tǒng)利用率和吞吐量低的問(wèn)題。
文檔編號(hào)H04L29/08GK103078926SQ20121058644
公開(kāi)日2013年5月1日 申請(qǐng)日期2012年12月28日 優(yōu)先權(quán)日2012年12月28日
發(fā)明者黃志昊 申請(qǐng)人:華為技術(shù)有限公司