一種文件系統(tǒng)讀寫優(yōu)化方法及框架的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及文件系統(tǒng)存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種文件系統(tǒng)讀寫優(yōu)化方法及框架。
【背景技術(shù)】
[0002]在現(xiàn)有的分布式文件系統(tǒng)中,服務(wù)器端通常包括元數(shù)據(jù)模塊和數(shù)據(jù)模塊,向外界多個(gè)客戶端提供服務(wù)。為了避免多客戶端之間發(fā)生沖突,在接收到客戶端發(fā)過來的所有請(qǐng)求后,元數(shù)據(jù)模塊都需要用一把全局鎖進(jìn)行鎖保護(hù),此時(shí)元數(shù)據(jù)模塊對(duì)所有請(qǐng)求均進(jìn)行串發(fā)響應(yīng),也即,每次只能對(duì)一個(gè)請(qǐng)求(文件讀取請(qǐng)求或文件寫入請(qǐng)求)進(jìn)行響應(yīng),這樣雖然保證了多客戶端在進(jìn)行文件讀寫操作時(shí)不會(huì)發(fā)生讀寫沖突,但是,由于在元數(shù)據(jù)模塊上每次只能對(duì)一個(gè)請(qǐng)求進(jìn)行響應(yīng),顯然會(huì)造成文件讀寫請(qǐng)求的響應(yīng)速度較低,從而影響了文件系統(tǒng)整體的文件訪問性能。
[0003]綜上所述可以看出,如何在保證不發(fā)生文件訪問沖突的前提下,提高文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度是目前亟待解決的問題。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明的目的在于提供一種文件系統(tǒng)讀寫優(yōu)化方法及框架,實(shí)現(xiàn)了在保證不發(fā)生文件訪問沖突的前提下,提高文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度的目的。其具體方案如下:
[0005]—種文件系統(tǒng)讀寫優(yōu)化方法,應(yīng)用于分布式文件系統(tǒng);所述分布式文件系統(tǒng)包括元數(shù)據(jù)模塊和數(shù)據(jù)模塊;所述方法包括:
[0006]接收客戶端發(fā)送的文件訪問請(qǐng)求;
[0007]判斷所述文件訪問請(qǐng)求的類型;
[0008]當(dāng)所述文件訪問請(qǐng)求為文件讀取請(qǐng)求,貝Ij在所述元數(shù)據(jù)模塊上對(duì)所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),以通過所述元數(shù)據(jù)模塊將所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求并行發(fā)送至所述數(shù)據(jù)模塊;并將所述數(shù)據(jù)模塊對(duì)所述所有讀取請(qǐng)求進(jìn)行并行響應(yīng)后得到的文件讀取內(nèi)容返回至所述客戶端。
[0009]優(yōu)選的,所述方法,還包括:
[0010]當(dāng)所述文件訪問請(qǐng)求為文件寫入請(qǐng)求,則在所述元數(shù)據(jù)模塊上對(duì)所述文件寫入請(qǐng)求中的所有寫入請(qǐng)求進(jìn)行串發(fā)響應(yīng)。
[0011]優(yōu)選的,所述在所述元數(shù)據(jù)模塊上對(duì)所述文件寫入請(qǐng)求中的所有寫入請(qǐng)求進(jìn)行串發(fā)響應(yīng)的過程,包括:
[0012]在所述元數(shù)據(jù)模塊上添加全局鎖,以通過所述元數(shù)據(jù)模塊對(duì)所述文件寫入請(qǐng)求中的所有與入請(qǐng)求進(jìn)彳丁串發(fā)響應(yīng)。
[0013]優(yōu)選的,所述在所述元數(shù)據(jù)模塊上對(duì)所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng)的過程,包括:
[0014]在所述元數(shù)據(jù)模塊上添加讀寫鎖,以通過所述元數(shù)據(jù)模塊對(duì)所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng)。
[0015]優(yōu)選的,所述判斷所述文件訪問請(qǐng)求的類型的過程,包括:
[0016]提取所述文件訪問請(qǐng)求中攜帶的接口字段標(biāo)識(shí),通過所述接口字段標(biāo)識(shí),判斷所述文件訪問請(qǐng)求的類型;其中,所述接口字段標(biāo)識(shí)包括文件讀取標(biāo)識(shí)或文件寫入標(biāo)識(shí)。
[0017]本發(fā)明還公開了一種文件系統(tǒng)讀寫優(yōu)化框架,應(yīng)用于分布式文件系統(tǒng);所述分布式文件系統(tǒng)包括元數(shù)據(jù)模塊和數(shù)據(jù)模塊;所述框架包括:
[0018]請(qǐng)求接收模塊,用于接收客戶端發(fā)送的文件訪問請(qǐng)求;
[0019]類型判斷模塊,用于判斷所述文件訪問請(qǐng)求的類型;
[0020]并發(fā)響應(yīng)控制模塊,用于當(dāng)所述文件訪問請(qǐng)求為文件讀取請(qǐng)求,則在所述元數(shù)據(jù)模塊上對(duì)所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),以通過所述元數(shù)據(jù)模塊將所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求并行發(fā)送至所述數(shù)據(jù)模塊;并將所述數(shù)據(jù)模塊對(duì)所述所有讀取請(qǐng)求進(jìn)行并行響應(yīng)后得到的文件讀取內(nèi)容返回至所述客戶端。
[0021]優(yōu)選的,所述框架,還包括:
[0022]串發(fā)響應(yīng)控制模塊,用于當(dāng)所述文件訪問請(qǐng)求為文件寫入請(qǐng)求,則在所述元數(shù)據(jù)模塊上對(duì)所述文件寫入請(qǐng)求中的所有寫入請(qǐng)求進(jìn)行串發(fā)響應(yīng)。
[0023]優(yōu)選的,所述串發(fā)響應(yīng)控制模塊,具體用于在所述元數(shù)據(jù)模塊上添加全局鎖,以通過所述元數(shù)據(jù)模塊對(duì)所述文件寫入請(qǐng)求中的所有寫入請(qǐng)求進(jìn)行串發(fā)響應(yīng)。
[0024]優(yōu)選的,所述并發(fā)響應(yīng)控制模塊,具體用于在所述元數(shù)據(jù)模塊上添加讀寫鎖,以通過所述元數(shù)據(jù)模塊對(duì)所述文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng)。
[0025]優(yōu)選的,所述類型判斷模塊包括:
[0026]標(biāo)識(shí)提取單元,用于提取所述文件訪問請(qǐng)求中攜帶的接口字段標(biāo)識(shí);
[0027]類型判斷單元,用于通過所述接口字段標(biāo)識(shí),判斷所述文件訪問請(qǐng)求的類型;其中,所述接口字段標(biāo)識(shí)包括文件讀取標(biāo)識(shí)或文件寫入標(biāo)識(shí)。
[0028]本發(fā)明中,文件系統(tǒng)讀寫優(yōu)化方法包括:接收客戶端發(fā)送的文件訪問請(qǐng)求;判斷文件訪問請(qǐng)求的類型;當(dāng)文件訪問請(qǐng)求為文件讀取請(qǐng)求,則在元數(shù)據(jù)模塊上對(duì)文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),以通過元數(shù)據(jù)模塊將文件讀取請(qǐng)求中的所有讀取請(qǐng)求并行發(fā)送至數(shù)據(jù)模塊;并將數(shù)據(jù)模塊對(duì)所有讀取請(qǐng)求進(jìn)行并行響應(yīng)后得到的文件讀取內(nèi)容返回至客戶端??梢姡景l(fā)明在元數(shù)據(jù)模塊上對(duì)文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),而不是進(jìn)行串發(fā)響應(yīng),這樣,在元數(shù)據(jù)模塊上可以對(duì)多個(gè)讀取請(qǐng)求同時(shí)進(jìn)行響應(yīng),從而大幅提升文件系統(tǒng)對(duì)文件讀取請(qǐng)求的響應(yīng)速度,進(jìn)而提高了文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度,并且由于在對(duì)讀取請(qǐng)求進(jìn)行響應(yīng)時(shí),僅需要對(duì)文件系統(tǒng)中以保存的相應(yīng)文件進(jìn)行讀取操作,而不會(huì)改變現(xiàn)有文件的內(nèi)容,從而不會(huì)引起文件訪問沖突,綜上可知,本發(fā)明實(shí)現(xiàn)了在保證不發(fā)生文件訪問沖突的前提下,提高文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度的目的。
【附圖說明】
[0029]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0030]圖1為本發(fā)明實(shí)施例公開的一種文件系統(tǒng)讀寫優(yōu)化方法流程圖;
[0031]圖2為本發(fā)明實(shí)施例公開的一種文件系統(tǒng)讀寫優(yōu)化框架應(yīng)用結(jié)構(gòu)示意圖;
[0032]圖3為本發(fā)明實(shí)施例公開的一種具體的文件系統(tǒng)讀寫優(yōu)化框架應(yīng)用結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0033]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0034]本發(fā)明實(shí)施例公開了一種文件系統(tǒng)讀寫優(yōu)化方法,應(yīng)用于分布式文件系統(tǒng);分布式文件系統(tǒng)包括元數(shù)據(jù)模塊和數(shù)據(jù)模塊;參見圖1所示,該方法包括:
[0035]步驟Sll:接收客戶端發(fā)送的文件訪問請(qǐng)求;
[0036]步驟S12:判斷文件訪問請(qǐng)求的類型;
[0037]步驟S13:當(dāng)文件訪問請(qǐng)求為文件讀取請(qǐng)求,則在元數(shù)據(jù)模塊上對(duì)文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),以通過元數(shù)據(jù)模塊將文件讀取請(qǐng)求中的所有讀取請(qǐng)求并行發(fā)送至數(shù)據(jù)模塊;
[0038]步驟S14:將數(shù)據(jù)模塊對(duì)所有讀取請(qǐng)求進(jìn)行并行響應(yīng)后得到的文件讀取內(nèi)容返回至客戶端。
[0039]本發(fā)明實(shí)施例中,文件系統(tǒng)讀寫優(yōu)化方法包括:接收客戶端發(fā)送的文件訪問請(qǐng)求;判斷文件訪問請(qǐng)求的類型;當(dāng)文件訪問請(qǐng)求為文件讀取請(qǐng)求,則在元數(shù)據(jù)模塊上對(duì)文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),以通過元數(shù)據(jù)模塊將文件讀取請(qǐng)求中的所有讀取請(qǐng)求并行發(fā)送至數(shù)據(jù)模塊;并將數(shù)據(jù)模塊對(duì)所有讀取請(qǐng)求進(jìn)行并行響應(yīng)后得到的文件讀取內(nèi)容返回至客戶端。
[0040]可見,本發(fā)明實(shí)施例在元數(shù)據(jù)模塊上對(duì)文件讀取請(qǐng)求中的所有讀取請(qǐng)求進(jìn)行并發(fā)響應(yīng),而不是進(jìn)行串發(fā)響應(yīng),這樣,在元數(shù)據(jù)模塊上可以對(duì)多個(gè)讀取請(qǐng)求同時(shí)進(jìn)行響應(yīng),從而大幅提升文件系統(tǒng)對(duì)文件讀取請(qǐng)求的響應(yīng)速度,進(jìn)而提高了文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度,并且由于在對(duì)讀取請(qǐng)求進(jìn)行響應(yīng)時(shí),僅需要對(duì)文件系統(tǒng)中以保存的相應(yīng)文件進(jìn)行讀取操作,而不會(huì)改變現(xiàn)有文件的內(nèi)容,從而不會(huì)引起文件訪問沖突,綜上可知,本發(fā)明實(shí)施例實(shí)現(xiàn)了在保證不發(fā)生文件訪問沖突的前提下,提高文件系統(tǒng)整體的請(qǐng)求響應(yīng)速度的目的。
[0041]本發(fā)明實(shí)施例公開了一種具體的文件系統(tǒng)讀寫優(yōu)化方法