一種分布式文件系統(tǒng)的文件上傳及查找方法
【專利摘要】本發(fā)明公開了一種分布式文件系統(tǒng)的文件上傳及查找方法,明涉及分布式文件系統(tǒng),旨在提供一種能實(shí)現(xiàn)目標(biāo)文件快速定位的基于分布式文件系統(tǒng)的文件上傳及查找方法。本發(fā)明技術(shù)要點(diǎn):客戶端向負(fù)載均衡服務(wù)器發(fā)出文件上傳請(qǐng)求;負(fù)載均衡服務(wù)器接收所述文件上傳請(qǐng)求,并為其生成一個(gè)文件保存名確保該文件名可以直接定位到文件的儲(chǔ)存位置;負(fù)載均衡服務(wù)器為客戶端分配一用于保存將上傳文件的文件服務(wù)器;將所述文件保存名及文件服務(wù)器的地址返回給客戶端;客戶端根據(jù)所述地址訪問文件服務(wù)器,將文件及所述文件保存名發(fā)送給文件服務(wù)器等。
【專利說明】一種分布式文件系統(tǒng)的文件上傳及查找方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及分布式文件系統(tǒng),尤其是一種分布式文件系統(tǒng)的文件上傳及查找的方法。
【背景技術(shù)】
[0002]隨著云存儲(chǔ)技術(shù)的發(fā)展,大量的用戶訪問對(duì)云端服務(wù)器的數(shù)據(jù)吞吐量和系統(tǒng)并發(fā)量都是一個(gè)巨大的考驗(yàn)。
[0003]分布式文件系統(tǒng)是為了滿足大量客戶端對(duì)文件服務(wù)器訪問的需求而提出來的。其基本思想是利用多臺(tái)文件服務(wù)器為大量的客戶端服務(wù)。這種方法有效提高了為客戶端提供的文件服務(wù)的效率。
[0004]后來人們發(fā)現(xiàn),在這種系統(tǒng)中,有的文件服務(wù)器被客戶端訪問的頻率很高、工作負(fù)載量特別大,而有的文件服務(wù)器卻處于閑置狀態(tài)。不能充分利用文件服務(wù)器資源、發(fā)揮系統(tǒng)的優(yōu)勢(shì)。為此,人們提出了負(fù)載均衡的思想。
[0005]分布式文件系統(tǒng)包括一臺(tái)負(fù)載均衡服務(wù)器及多臺(tái)文件服務(wù)器。其工作原理是,客戶端向負(fù)載均衡服務(wù)器發(fā)出訪問請(qǐng)求,要求訪問文件服務(wù)器,負(fù)載均衡服務(wù)器根據(jù)各文件服務(wù)器的工作狀態(tài)為客戶端指派一臺(tái)負(fù)載量較小的文件服務(wù)器為其提供文件服務(wù)。本申請(qǐng)中的文件服務(wù)主要是指文件服務(wù)器為客戶端提供文件存儲(chǔ)空間,客戶端可在文件服務(wù)器上完成文件的上傳、下載、更新等操作。
[0006]文件服務(wù)器內(nèi)儲(chǔ)存了海量文件,若每次客戶端查詢或更新文件時(shí)都需要遍歷整個(gè)文件服務(wù)器儲(chǔ)存空間將導(dǎo)致大量的時(shí)間消耗,對(duì)文件服務(wù)器的遍歷也意味著對(duì)于磁盤訪問壓力很大。
【發(fā)明內(nèi)容】
[0007]本發(fā)明所要解決的技術(shù)問題是:針對(duì)上述存在的問題,本發(fā)明提供了一種新基于分布式文件系統(tǒng)的文件上傳及查找方法,以實(shí)現(xiàn)對(duì)于目標(biāo)文件的直接定位,減少查詢時(shí)間的消耗。
[0008]本發(fā)明提供的分布式文件系統(tǒng)的文件上傳方法,包括:
步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)出文件上傳請(qǐng)求;
步驟2:負(fù)載均衡服務(wù)器接收所述文件上傳請(qǐng)求,為將上傳的文件生成一個(gè)文件保存名;
步驟3:負(fù)載均衡服務(wù)器為客戶端分配一用于保存將上傳文件的文件服務(wù)器;將所述文件保存名及文件服務(wù)器的地址返回給客戶端;
步驟4:客戶端根據(jù)所述地址訪問文件服務(wù)器,將文件及所述文件保存名發(fā)送給文件服務(wù)器;
步驟5:文件服務(wù)器根據(jù)自身文件存儲(chǔ)目錄為所述文件分配一個(gè)存儲(chǔ)路徑,將所述文件保存在所述存儲(chǔ)路徑下,并將文件重命名為所述文件保存名; 步驟6:文件服務(wù)器將上傳成功的消息返回給負(fù)載均衡服務(wù)器并將文件的存儲(chǔ)路徑及文件保存名返回給負(fù)載均衡服務(wù)器;
步驟7:負(fù)載均衡服務(wù)器將文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱返回給客戶端;
步驟8:客戶端向用戶顯示所述文件訪問名稱。
[0009]進(jìn)一步,所述文件保存名包括當(dāng)前時(shí)間及文件屬性;所述文件屬性至少包括文件類型及文件大小。
[0010]進(jìn)一步,所述文件服務(wù)器分為多組,每個(gè)文件服務(wù)器組具有若干文件服務(wù)器,位于同一組的文件服務(wù)器互為數(shù)據(jù)備份。
[0011]進(jìn)一步,所述步驟7為:負(fù)載均衡服務(wù)器將文件服務(wù)器分組信息、文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱返回給客戶端。
[0012]優(yōu)選地,在文件服務(wù)器中,客戶端上傳的文件按照三層樹形文件結(jié)構(gòu)存儲(chǔ)。
[0013]本發(fā)明還提供了一種分布式文件系統(tǒng)的文件查找方法,包括:
步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)起訪問請(qǐng)求并將文件訪問名稱發(fā)送給負(fù)載均衡服務(wù)器;
步驟2:負(fù)載均衡服務(wù)器解析文件訪問名稱得到文件所在的文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名;并將所述文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名返回給客戶端;
步驟3:客戶端根據(jù)文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名在文件服務(wù)器上查找到相應(yīng)的文件。
[0014]綜上所述,由于采用了上述技術(shù)方案,本發(fā)明的有益效果是:
本發(fā)明方法能在大量文件服務(wù)器中快速定位到文件所在的文件服務(wù)器及其存儲(chǔ)路徑,節(jié)省了文件訪問的時(shí)間以及降低了對(duì)文件服務(wù)器磁盤訪問量。此外,本發(fā)明對(duì)文件的真實(shí)保存路徑進(jìn)行加密編碼后顯示給用戶,用戶不能看到文件存儲(chǔ)的真實(shí)路徑,為文件命名提供更大的自由度,實(shí)現(xiàn)系統(tǒng)的高并發(fā)和高安全特性。
【專利附圖】
【附圖說明】
[0015]本發(fā)明將通過例子并參照附圖的方式說明,其中:
圖1為本發(fā)明文件上傳流程圖。
[0016]圖2為本發(fā)明文件查找一個(gè)具體實(shí)施例的流程圖。
[0017]圖3為本發(fā)明中文件服務(wù)器創(chuàng)建文件存儲(chǔ)目錄建立流程圖。
【具體實(shí)施方式】
[0018]本說明書中公開的所有特征,或公開的所有方法或過程中的步驟,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。
[0019]本說明書中公開的任一特征,除非特別敘述,均可被其他等效或具有類似目的的替代特征加以替換。即,除非特別敘述,每個(gè)特征只是一系列等效或類似特征中的一個(gè)例子而已。
[0020]如圖1,本發(fā)明提供的分布式文件系統(tǒng)的文件上傳方法,包括:
步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)出文件上傳請(qǐng)求。在其他實(shí)施例中,負(fù)載均衡服務(wù)器可以是解析服務(wù)器。
[0021]步驟2:負(fù)載均衡服務(wù)器接收所述文件上傳請(qǐng)求,為將上傳的文件生成一個(gè)文件保存名。在其他實(shí)施例中,此步驟為負(fù)載均衡服務(wù)器根據(jù)請(qǐng)求中的文件屬性信息,為所述文件生成一個(gè)包括文件屬性的文件保存名NFS(Name in File Service)。該文件保存名用于文件服務(wù)器端命名所述文件,對(duì)用戶不可見。
[0022]步驟3:負(fù)載均衡服務(wù)器為客戶端分配一用于保存將上傳文件的文件服務(wù)器;將所述文件保存名NFS及文件服務(wù)器的地址返回給客戶端。
[0023]步驟4:客戶端根據(jù)所述地址訪問文件服務(wù)器,將文件及所述文件保存名NFS發(fā)送給文件服務(wù)器。
[0024]步驟5:文件服務(wù)器根據(jù)自身文件存儲(chǔ)目錄為所述文件分配一個(gè)存儲(chǔ)路徑,將所述文件保存在所述存儲(chǔ)路徑下,并將文件重命名為所述文件保存名NFS。
[0025]步驟6:文件上傳完成后文件服務(wù)器將上傳成功的消息返回給負(fù)載均衡服務(wù)器并將文件的存儲(chǔ)路徑及文件保存名NFS返回給負(fù)載均衡服務(wù)器。
[0026]步驟7:負(fù)載均衡服務(wù)器將文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱NFC(Name of File in Client)返回給客戶端。在其他實(shí)施例中,負(fù)載均衡服務(wù)器通過原文件屬性、分配的文件服務(wù)器地址及存儲(chǔ)路徑、在文件服務(wù)器中的儲(chǔ)存名NFS這三組信息分別作為加密編碼的三個(gè)信息來源S1、S2和S3,對(duì)S1、S2及S3分別進(jìn)行加密編碼,得到由數(shù)字和字母組成的三段中間字符串Ml、M2和M3,再將Ml、M2和M3組合在一起統(tǒng)一加密編碼成為最終返回給客戶端的文件訪問名稱NFC,加密使用現(xiàn)有的DES加密算法實(shí)現(xiàn)。
[0027]步驟8:客戶端向用戶顯示所述文件訪問名稱NFC。
[0028]在其他實(shí)施例中,所述文件保存名還包括當(dāng)前時(shí)間。所述文件屬性至少包括文件類型及文件大小。
[0029]所述文件服務(wù)器分為多組,每個(gè)文件服務(wù)器組具有若干文件服務(wù)器,位于同一組的文件服務(wù)器互為數(shù)據(jù)備份。所謂的互為數(shù)據(jù)備份,即是說位于同一組的文件服務(wù)器定時(shí)向同組的其他文件服務(wù)器同步其自身存儲(chǔ)的文件,這樣同組中的文件服務(wù)器上的文件是同樣的,互為備份。
[0030]那么在本實(shí)施例中,步驟7中,負(fù)載均衡服務(wù)器將文件服務(wù)器分組信息、文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱返回給客戶端。
[0031]如圖3,在另一實(shí)施例中,文件服務(wù)器將客戶端上傳的文件按照三層樹形文件結(jié)構(gòu)存儲(chǔ)。首先文件服務(wù)器的文件儲(chǔ)存位置下建立編號(hào)從00到99的一百個(gè)文件夾(第一層),然后分別在每個(gè)文件夾下再建立從00到99的一百個(gè)文件夾(第二層),再在第二層中的內(nèi)個(gè)文件夾下建立00到99的一百個(gè)文件夾(第三層),形成100萬(wàn)個(gè)根文件夾,各根文件夾(即最底層的文件夾)下可以儲(chǔ)存至少一個(gè)文件,根據(jù)文件服務(wù)器的總體負(fù)載情況而定。
[0032]文件服務(wù)器下的樹形目錄在文件服務(wù)器開始運(yùn)行時(shí)檢測(cè)其是否存在,若不存在則說明該文件服務(wù)器是第一次運(yùn)行服文件存儲(chǔ)服務(wù),則按照上述的方式建立三層文件目錄。若存在,則在日志文件中讀取文件夾的存儲(chǔ)情況到內(nèi)存中,作為監(jiān)控其文件存儲(chǔ)目錄使用情況的依據(jù),以便根據(jù)其為來自客戶端上傳的文件分配合適的存儲(chǔ)路徑。
[0033]如圖2,本發(fā)明提供的分布式文件系統(tǒng)的文件查找方法的一個(gè)具體實(shí)施例包括: 步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)起訪問請(qǐng)求并將文件訪問名稱NFC發(fā)送給負(fù)載均衡服務(wù)器;更具體的,訪問請(qǐng)求為文件下載、更新等請(qǐng)求。
[0034]步驟2:負(fù)載均衡服務(wù)器解析文件訪問名稱NFC得到文件所在的文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名;并將所述文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名返回給客戶端。更具體的,負(fù)載均衡服務(wù)器首先將文件訪問名稱NFC解析為三個(gè)獨(dú)立的中間字符串M1、M2和M3,再分別解析三個(gè)中間字符串,獲得包括源文件屬性、文件服務(wù)器地址及存儲(chǔ)路徑、文件服務(wù)器中的文件名稱NFS的三組信息S1、S2和S3,將這些信息返回給客戶端。
[0035]步驟3:客戶端根據(jù)文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名在文件服務(wù)器上查找到相應(yīng)的文件。進(jìn)一步完成文件下載、查看及更新操作。
[0036]對(duì)于文件服務(wù)器有分組的實(shí)施例,上述步驟2中負(fù)載均衡服務(wù)器解析文件訪問名稱NFC得到的信息中還包括文件服務(wù)器的分組信息。
[0037]本發(fā)明并不局限于前述的【具體實(shí)施方式】。本發(fā)明擴(kuò)展到任何在本說明書中披露的新特征或任何新的組合,以及披露的任一新的方法或過程的步驟或任何新的組合。
【權(quán)利要求】
1.一種分布式文件系統(tǒng)的文件上傳方法,所述分布式文件系統(tǒng)包括若干客戶端、至少一臺(tái)負(fù)載均衡服務(wù)器及若干文件服務(wù)器;負(fù)載均衡服務(wù)器具有所有文件服務(wù)器的狀態(tài)信息;所述負(fù)載均衡服務(wù)器用于接收客戶端的訪問請(qǐng)求,并根據(jù)文件服務(wù)器的狀態(tài)信息為客戶端分配為其提供文件服務(wù)的文件服務(wù)器; 其特征在于,包括: 步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)出文件上傳請(qǐng)求; 步驟2:負(fù)載均衡服務(wù)器接收所述文件上傳請(qǐng)求,為將上傳的文件生成一個(gè)文件保存名; 步驟3:負(fù)載均衡服務(wù)器為客戶端分配一用于保存將上傳文件的文件服務(wù)器;將所述文件保存名及文件服務(wù)器的地址返回給客戶端; 步驟4:客戶端根據(jù)所述地址訪問文件服務(wù)器,將文件及所述文件保存名發(fā)送給文件服務(wù)器; 步驟5:文件服務(wù)器根據(jù)自身文件存儲(chǔ)目錄為所述文件分配一個(gè)存儲(chǔ)路徑,將所述文件保存在所述存儲(chǔ)路徑下,并將文件重命名為所述文件保存名; 步驟6:文件服務(wù)器將上傳成功的消息返回給負(fù)載均衡服務(wù)器并將文件的存儲(chǔ)路徑及文件保存名返回給負(fù)載均衡服務(wù)器; 步驟7:負(fù)載均衡服務(wù)器將文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱返回給客戶端; 步驟8:客戶端向用戶顯示所述文件訪問名稱。
2.根據(jù)權(quán)利要求1所述的一種分布式文件系統(tǒng)的文件上傳方法,其特征在于,所述文件保存名包括當(dāng)前時(shí)間及文件屬性;所述文件屬性至少包括文件類型及文件大小。
3.根據(jù)權(quán)利要求1所述的一種分布式文件系統(tǒng)的文件上傳方法,其特征在于,所述文件服務(wù)器分為多組,每個(gè)文件服務(wù)器組具有若干文件服務(wù)器,位于同一組的文件服務(wù)器互為數(shù)據(jù)備份。
4.根據(jù)權(quán)利要求3所述的一種分布式件系統(tǒng)的文件上傳方法,其特征在于,所述步驟7為:負(fù)載均衡服務(wù)器將文件服務(wù)器分組信息、文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼,得到一字符串,并將所述字符串作為上傳文件的文件訪問名稱返回給客戶端。
5.根據(jù)權(quán)利要求1所述的一種分布式件系統(tǒng)的文件上傳方法,其特征在于,在文件服務(wù)器中,客戶端上傳的文件按照三層樹形文件結(jié)構(gòu)存儲(chǔ)。
6.一種分布式文件系統(tǒng)的文件查找方法,所述分布式文件系統(tǒng)包括若干客戶端、至少一臺(tái)負(fù)載均衡服務(wù)器及若干文件服務(wù)器;負(fù)載均衡服務(wù)器具有所有文件服務(wù)器的狀態(tài)信息;所述負(fù)載均衡服務(wù)器用于接收客戶端的訪問請(qǐng)求,并根據(jù)文件服務(wù)器的狀態(tài)信息為客戶端分配為其提供文件服務(wù)的文件服務(wù)器; 其特征在于,包括: 步驟1:客戶端向負(fù)載均衡服務(wù)器發(fā)起訪問請(qǐng)求并將文件訪問名稱發(fā)送給負(fù)載均衡服務(wù)器; 步驟2:負(fù)載均衡服務(wù)器解析文件訪問名稱得到文件所在的文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名;并將所述文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名返回給客戶端; 步驟3:客戶端根據(jù)文件服務(wù)器地址、文件存儲(chǔ)路徑及文件保存名在文件服務(wù)器上查找到相應(yīng)的文件。
7.根據(jù)權(quán)利要求6所述的一種分布式文件系統(tǒng)的文件查找方法,其特征在于,所述文件保存名包括當(dāng)前時(shí)間及文件屬性;所述文件屬性至少包括文件類型及文件大小。
8.根據(jù)權(quán)利要求6所述的一種分布式文件系統(tǒng)的文件查找方法,其特征在于,所述文件服務(wù)器分為多組,每個(gè)文件服務(wù)器組具有若干文件服務(wù)器,位于同一組的文件服務(wù)器互為數(shù)據(jù)備份。
9.根據(jù)權(quán)利要求8所述的一種分布式件系統(tǒng)的文件查找方法,其特征在于,所述文件訪問名稱為負(fù)載均衡服務(wù)器將文件服務(wù)器分組信息、文件服務(wù)器路徑、文件存儲(chǔ)路徑及文件保存名組合在一起進(jìn)行加密編碼得到的一字符串。
10.根據(jù)權(quán)利要求6所述的一種分布式件系統(tǒng)的文件上傳方法,其特征在于,在文件服務(wù)器中,客戶端上傳的文件按照三層樹形文件結(jié)構(gòu)存儲(chǔ)。
【文檔編號(hào)】H04L29/08GK104202384SQ201410425307
【公開日】2014年12月10日 申請(qǐng)日期:2014年8月27日 優(yōu)先權(quán)日:2014年8月27日
【發(fā)明者】肖鋒, 黃德俊, 林小賓, 劉 東, 李曉東 申請(qǐng)人:四川長(zhǎng)虹電器股份有限公司