新四季網

基於索引編碼的虛擬文件系統及建立方法、訪問方法

2023-07-23 08:49:21

專利名稱:基於索引編碼的虛擬文件系統及建立方法、訪問方法
技術領域:
本發明涉及計算機文件系統領域,尤其涉及文件合併操作相關的文件系統。
背景技術:
為了在複雜的網絡環境下提供優質的網絡服務,現今提供網絡服務的網站(如論壇、門戶網站、網路遊戲、視頻等等)都普遍自建或購買內容分發網絡來對網絡服務進行加速,同時也降低了源站的壓力。內容分發網絡的使用導致訪問日誌散布在大量的機器上,需要進行排序和合併。為了提高排序和日誌合併的效率,一般以較小的時間粒度來處理日誌文件,再對排序完的日誌進行合併,因此產生了大量的日誌文件合併的操作。在現有的文件系統中,要將兩個或多個文件合併成一個文件需要將文件內容從文件系統中讀出,再重新寫入到文件系統中。其兩種合併過程如下:(I)創建一個新的空文件,並發所有待合併文件的內容從文件系統中讀出,並追加到選定文件的末尾,如圖1所示。首先,創建一個新的空文件,讀取第一個待合併的文件的內容然後寫入到空文件中,再繼續讀下一個待合併的文件。(2)選定兩個或多個文件中的一個,從文件系統中讀取其他待合併文件的內容,並追加寫入到選定文件的末尾,如圖2所示。首先,從眾多待合併的文件中選擇一個作為選定文件,然後將其餘的待合併文件逐個的進行讀取然後寫入到選定文件的末尾。這種現有文件系統的文件合成方式有以下的不足:
1.大量的IO操作,導致系統IP負載過高,進一步導致伺服器性能下降。2.合併操作需要的時間長,導致系統延時增加。3.多數時候,系統需要保存合併前後的文件,例如上面的日誌系統,這樣就需要消耗兩倍的存儲空間。

發明內容
本發明的目的是解決上述問題,提供了一種基於索引編碼的虛擬文件系統及建立方法、訪問方法,減少了合併文件過程中產生的讀取和寫入操作,降低系統IO負載,使文件在不需要讀取和寫入內容的情況下完成文件合併的操作。本發明的技術方案為:本發明揭示了一種基於索引編碼的虛擬文件系統,包括:接口模塊,接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件;索引目錄模塊,連接接口模塊,通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件--對應,索引文件中包含目標鏡像文件和原始文件的文件信息;鏡像文件系統,連接索引目錄模塊,根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件。根據本發明的基於索引編碼的虛擬文件系統的一實施例,索引目錄模塊的索引目錄結構存放在任何可訪問的文件系統上。
根據本發明的基於索引編碼的虛擬文件系統的一實施例,鏡像文件系統還包括:
文件信息查詢單元,供用戶查詢鏡像文件系統中的目標鏡像文件的文件信息,根據目標鏡像文件在索引目錄結構中的對應的索引文件中的信息直接響應查詢;
文件內容訪問單元,供用戶訪問鏡像文件系統中的目標鏡像文件的文件內容,根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。
根據本發明的基於索引編碼的虛擬文件系統的一實施例,文件信息包括但不限於文件大小、文件名稱、最後修改時間。
本發明揭示了一種基於索引編碼的虛擬文件系統的建立方法,包括:
接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件;
通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件--對應,索引文件中包含目標鏡像文件和原始文件的文件信息;
根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成對應的目標鏡像文件,多個目標鏡像文件形成鏡像文件系統。
根據本發明的基於索引編碼的虛擬文件系統的建立方法的一實施例,索引目錄模塊的索引目錄結構存放在任何可訪問的文件系統上。
根據本發明的基於索引編碼的虛擬文件系統的建立方法的一實施例,文件信息包括但不限於文件大小、文件名稱、最後修改時間。
本發明揭示了一種基於索引編碼的虛擬文件系統的訪問方法,包括:
接收用戶對目標鏡像文件的訪問請求;
根據用戶要求訪問的目標鏡像文件訪問其--對應的索引文件,從索引文件的記錄中獲取目標鏡像文件的文件信息和原始文件的文件信息;
判斷用戶所要訪問的對象,若是訪問目標鏡像文件的文件信息,則直接返回獲取到的目標鏡像文件的文件信息和原始文件的文件信息;
若是訪問目標鏡像文件的文件內容,則根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。
根據本發明的基於索引編碼的`虛擬文件系統的訪問方法的一實施例,文件信息包括但不限於文件大小、文件名稱、最後修改時間。
本發明對比現有技術有如下的有益效果:本發明的方案是通過接口模塊接收用戶的合併請求生成索引文件,索引目錄模塊通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件--對應,鏡像文件系統根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件。相較於傳統技術,本發明在不讀取和重新寫入文件內容的情況下,將若干指定文件合併成新的文件,即鏡像文件。鏡像文件和使用傳統文件合併出來的文件一樣,但是合併過程中並不會發生文件內容的讀取和寫入操作,同時該鏡像文件不佔用實際的存儲空間。


圖1和圖2示出了傳統的文件合併方式。圖3A示出了本發明的基於索引編碼的虛擬文件系統的較佳實施例的結構圖。圖3B示出了圖3A所示的虛擬文件系統實施例的原理圖。圖4A示出了本發明的基於索引編碼的虛擬文件系統的建立方法的較佳實施例的流程圖。圖4B示出了圖4A所示的虛擬文件系統的建立方法的示意圖。圖5A示出了本發明的基於索引編碼的虛擬文件系統的訪問方法的較佳實施例的流程圖。圖5B示出了圖5A所示的虛擬文件系統的訪問方法的示意圖。
具體實施例方式下面結合附圖和實施例對本發明作進一步的描述。基於索引編碼的虛擬文件系統的實施例圖3A示出了本發明的基於索引編碼的虛擬文件系統的較佳實施例的結構,圖3B示出了圖3A所示的虛擬文件系統實施例的原理。請參見圖3A,本實施例的基於索引編碼的虛擬文件系統包括:接口模塊10、索引目錄模塊11、鏡像文件系統12。索引目錄模塊11連接接口模塊10,鏡像文件系統12連接索引目錄模塊11。請同時參見圖3B,接口模塊10接收用戶的合併請求生成索引文件,其中合併請求包括若干用於生成目標文件的原始文件和用戶指定的目標鏡像文件。接口模塊10在收到用戶的指令後檢查用戶指定的所有原始文件,記錄這些原始文件的文件信息(包括但不限於文件大小、文件名稱、最後修改時間等),並根據這些原始文件的文件信息以及用戶指定生成的目標文件的文件信息,接口模塊10將創建一個與目標文件—對應的索引文件,把目標文件的文件信息以及所有原始文件的文件信息編碼並寫入該索引文件中。索引目錄模塊11通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件一一對應,索引文件中包含目標鏡像文件和原始文件的文件信息,文件信息包括但不限於文件大小、文件名稱、最後修改時間。索引目錄模塊11的索引目錄結構存放在任何可訪問的文件系統上,例如傳統文件系統的磁碟、光碟文件系統、快閃記憶體文件系統、內存文件系統、網絡文件系統等。鏡像文件系統12根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件,供用戶查看和讀取使用。鏡像文件系統12包括文件信息查詢單元120和文件內容訪問單元122。鏡像文件系統12的API接口被重寫後接管用戶對鏡像文件系統的訪問。當用戶訪問一個路徑/文件時,如果該路徑/文件屬於鏡像文件系統12,那麼訪問過程中屬於鏡像文件系統部分的文件系統訪問接口將由虛擬文件系統接管提供。用戶像讀取傳統文件系統中的文件一樣,從鏡像文件系統12中讀取目標鏡像文件,用戶不會也不需要感知到該文件是鏡像文件而不是在傳統文件系統中真實存在的文件。組織鏡像文件的文件系統,由虛擬文件系統根據索引目錄結構生成。用戶由此讀取使用鏡像文件。鏡像文件系統12像其他的文件系統一樣掛載在目錄樹上。用戶可以像訪問傳統文件系統一樣訪問鏡像文件系統(寫屬性操作除外),鏡像文件系統提供和傳統文件系統一樣的訪問接口,用戶不會也不需要感知到其訪問的是鏡像文件系統12。用戶對鏡像文件系統12內所有文件和目錄的寫屬性的操作都會返回失敗,寫屬性的操作用戶需要通過重新生成索引文件來實現,也就是說,鏡像文件系統本身是一個只讀文件系統。文件信息查詢單元120供用戶查詢鏡像文件系統中的目標鏡像文件的文件信息(例如響應Is、stat之類命令的操作),根據目標鏡像文件在索引目錄結構中的對應的索引文件中的信息直接響應查詢。文件內容訪問單元122供用戶訪問鏡像文件系統中的目標鏡像文件的文件內容,根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。基於索引編碼的虛擬文件系統的建立方法的實施例基於上述的基於索引編碼的虛擬文件系統,其建立方法如圖4A所示,而圖4B示出了一個具體示例的示意圖。請參見圖4A,下面是對本實施例的虛擬文件系統的建立方法的各個步驟的詳細描述。

步驟SlO:接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件。系統在收到用戶的指令後檢查用戶指定的所有原始文件,記錄這些原始文件的文件信息(文件信息包括但不限於文件大小、文件名稱、最後修改時間等),並根據這些原始文件的文件信息以及用戶指定生成的目標文件的文件信息,創建一個與目標文件一一對應的索引文件,把目標文件的文件信息以及所有原始文件的文件信息編碼並寫入該索引文件中。步驟Sll:通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件--對應,索引文件中包含目標鏡像文件和原始文件的文件信息。索引目錄結構存放在任何可訪問的文件系統上,例如傳統文件系統的磁碟、光碟文件系統、快閃記憶體文件系統、內存文件系統、網絡文件系統等。步驟S12:根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成對應的目標鏡像文件,多個目標鏡像文件形成鏡像文件系統。鏡像文件系統根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件,供用戶查看和讀取使用。鏡像文件系統的API接口被重寫後接管用戶對鏡像文件系統的訪問。當用戶訪問一個路徑/文件時,如果該路徑/文件屬於鏡像文件系統,那麼訪問過程中屬於鏡像文件系統部分的文件系統訪問接口將由虛擬文件系統接管提供。鏡像文件系統像其他的文件系統一樣掛載在目錄樹上。用戶可以像訪問傳統文件系統一樣訪問鏡像文件系統(寫屬性操作除外),鏡像文件系統提供和傳統文件系統一樣的訪問接口,用戶不會也不需要感知到其訪問的是鏡像文件系統。用戶對鏡像文件系統內所有文件和目錄的寫屬性的操作都會返回失敗,寫屬性的操作用戶需要通過重新生成索引文件來實現,也就是說,鏡像文件系統本身是一個只讀文件系統。請參見圖4B,用戶向接口模塊要求生成目標鏡像文件/index/test/ws.file,用於生成該目標文件的 3 個原始文件為 /src/sl/wsl.fI,/src/sl/ws2.f2,/src/s2/ws3.f3。接口模塊根據用戶輸入查找上述3個原始文件,並訪問其文件信息,若訪問及建立索引文件失敗,則向用戶報告錯誤。反之根據原始文件信息和用戶輸入的目標鏡像文件生成目標鏡像文件的文件信息:文件名為用戶輸入的目標鏡像文件的文件名,文件的大小為上述3個原始文件合成後的大小,文件的最後修改時間為上述3個原始文件最後修改時間中最新的那一個,其他文件屬性類似處理生成等。接口模塊創建一個與目標鏡像文件一一對應的索引文件,並把在上一步中生成的目標鏡像文件的文件信息和訪問到的原始文件的文件信息寫入改索引文件。
基於索引編碼的虛擬文件系統的訪問方法的實施例
圖5A示出了上述實施例的基於索引編碼的虛擬文件系統的訪問方法的較佳實施例的流程。圖5B示出了圖5A所示的虛擬文件系統的訪問方法的示意圖。
請參見圖5A,下面是對本實施例的虛擬文件系統的訪問方法的各個步驟的詳細描述。
步驟S20:接收用戶對目標鏡像文件的訪問請求。
步驟S21:根據用戶要求訪問的目標鏡像文件訪問其一一對應的索引文件,從索引文件的記錄中獲取目標鏡像文件的文件信息和原始文件的文件信息。文件信息包括文件大小、文件名稱、最後修改時間等。
步驟S22:判斷用戶所要訪問的對象,若是訪問目標鏡像文件的文件信息,則直接返回獲取到的目標鏡像文件的文件信息和原始文件的文件信息。
步驟S23:若是訪問目標鏡像文件的文件內容,則根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。
請參見圖5B,用戶要求訪問文件/dst/test/ws.file。虛擬文件系統根據用戶要求訪問的目標鏡像文件訪問其--對應的索引文件/index/test/ws.file,獲取目標鏡像文件的文件信息及原始文件的文件信息。若用戶要求訪問的是鏡像文件的文件信息,例如用戶要求知道文件名、文件大小、最後修改時間等信息,則虛擬文件系統根據索引文件中記錄的信息直接返回。若用戶要求訪問的是文件的內容,則虛擬文件系統根據用戶要求訪問的內容在鏡像文件中的文件偏移和原始文件的信息計算出這段內容所在的原始文件(可能有多個)及相應的文件偏移。虛擬文件系統從原始文件中讀取出相應的內容,並返回給用戶。用戶獲取到文件信息/內容,用戶像訪問傳統的文件系統一樣訪問了文件,並獲取到了想要的結果,而不關心相應的文件系統底層API已被虛擬文件系統接管。
上述實施例是提供給本領域普通技術人員來實現和使用本發明的,本領域普通技術人員可在不脫離本發明的發明思想的情況下,對上述實施例做出種種修改或變化,因而本發明的保護範圍並不被上述實施例所限,而應該是符合權利要求書所提到的創新性特徵的最大範圍。
權利要求
1.一種基於索引編碼的虛擬文件系統,包括: 接口模塊,接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件; 索引目錄模塊,連接接口模塊,通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件—對應,索引文件中包含目標鏡像文件和原始文件的文件信息; 鏡像文件系統,連接索引目錄模塊,根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件。
2.根據權利要求1所述的基於索引編碼的虛擬文件系統,其特徵在於,索引目錄模塊的索引目錄結構存放在任何可訪問的文件系統上。
3.根據權利要求1所述的基於索引編碼的虛擬文件系統,其特徵在於,鏡像文件系統還包括: 文件信息查詢單元,供用戶查詢鏡像文件系統中的目標鏡像文件的文件信息,根據目標鏡像文件在索引目錄結構中的對應的索引文件中的信息直接響應查詢; 文件內容訪問單元,供用戶訪問鏡像文件系統中的目標鏡像文件的文件內容,根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。
4.根據 權利要求1-3中任一項所述的基於索引編碼的虛擬文件系統,其特徵在於,文件信息包括但不限於文件大小、文件名稱、最後修改時間。
5.一種基於索引編碼的虛擬文件系統的建立方法,包括: 接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件; 通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件--對應,索引文件中包含目標鏡像文件和原始文件的文件信息; 根據索弓丨目錄結構中的索引文件和索弓I文件中指出的原始文件,生成對應的目標鏡像文件,多個目標鏡像文件形成鏡像文件系統。
6.根據權利要求5所述的基於索引編碼的虛擬文件系統的建立方法,其特徵在於,索引目錄模塊的索引目錄結構存放在任何可訪問的文件系統上。
7.根據權利要求5或6所述的基於索引編碼的虛擬文件系統的建立方法,其特徵在於,文件信息包括但不限於文件大小、文件名稱、最後修改時間。
8.一種基於索引編碼的虛擬文件系統的訪問方法,包括: 接收用戶對目標鏡像文件的訪問請求; 根據用戶要求訪問的目標鏡像文件訪問其--對應的索引文件,從索引文件的記錄中獲取目標鏡像文件的文件信息和原始文件的文件信息; 判斷用戶所要訪問的對象,若是訪問目標鏡像文件的文件信息,則直接返回獲取到的目標鏡像文件的文件信息和原始文件的文件信息; 若是訪問目標鏡像文件的文件內容,則根據用戶要求訪問的內容在目標鏡像文件中的文件偏移和原始文件的信息計算出該內容所在的原始文件及相應的文件偏移,從原始文件中讀取出相應的內容並返回給用戶。
9.根據權利要求8所述的基於索引編碼的虛擬文件系統的訪問方法,其特徵在於,文件信息包括但不限 於文件大小、文件名稱、最後修改時間。
全文摘要
本發明公開了基於索引編碼的虛擬文件系統及建立方法、訪問方法,減少了合併文件過程中產生的讀取和寫入操作,降低系統IO負載,使文件在不需要讀取和寫入內容的情況下完成文件合併的操作。其技術方案為系統包括接口模塊,接收用戶的合併請求生成索引文件,其中合併請求包括若干原始文件和目標鏡像文件;索引目錄模塊,連接接口模塊,通過一索引目錄結構存儲生成的索引文件,索引文件和目標鏡像文件一一對應,索引文件中包含目標鏡像文件和原始文件的文件信息;鏡像文件系統,連接索引目錄模塊,根據索引目錄結構中的索引文件和索引文件中指出的原始文件,生成鏡像文件系統中對應的目標鏡像文件。
文檔編號G06F17/30GK103150402SQ20131010249
公開日2013年6月12日 申請日期2013年3月27日 優先權日2013年3月27日
發明者洪珂, 鄒寧勇, 林志遠 申請人:網宿科技股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀