保存有文件的元數據,文件的元數據中包含文件的索引信息。
[0148]通過調用存儲器405存儲的來自應用層的文件訪問請求和其它相關的信息,處理器401用于:在文件訪問請求是根據查詢條件獲取所述文件的內容時,從存儲器405中獲取該文件的元數據,該文件的元數據中包含文件的索引信息,查詢條件是針對所述文件的索引信息選擇所述文件的內容;根據所述文件的索引信息,確定符合所述查詢條件的文件的內容,調用磁盤1控制器獲取所有符合查詢條件的文件的內容,并保存在存儲器405中,以便于應用層訪問所述文件。
[0149]在上述各個實施方式中,進一步地,所述處理器401還用于:對所述文件按照預設要求進行預處理,獲得所述文件的索引信息;將所述文件的索引信息保存在存儲器405中所述文件的元數據中。
[0150]其中,所述索引信息至少包括規則類型和每個簇包含的范圍,所述規則類型中規定了對所述文件進行預處理的方式。
[0151]所述處理器401還用于:判斷所述文件訪問請求是否是根據查詢條件獲取所述文件的內容;在所述文件訪問請求中至少包含文件描述符、與所述查詢條件相關的參數以及緩沖區時,判斷結果為所述文件訪問請求是根據查詢條件獲取所述文件的內容。
[0152]其中,所述緩沖區包括完全匹配緩沖區和半匹配緩沖區。
[0153]所述處理器401還用于:在所述獲取的文件的內容完全匹配所述查詢條件時,將所述獲取的文件的內容放入存儲器405的完全匹配緩沖區,在所述獲取的文件的內容部分匹配所述查詢條件時,將所述獲取的文件的內容放入存儲器405的半匹配緩沖區。
[0154]可見,采用上述方案后,根據文件的元數據的索引信息,即可通過磁盤1控制器獲取所有符合查詢條件的文件的內容,因此,通過本發明實施方式,能夠避免一次查詢帶來的多次缺頁中斷以及多次磁盤10,并且通過過濾部分數據減少內存使用。
[0155]另外,通過文件訪問請求中是否包含與查詢條件相關的參數來有效區分一般性文件訪問請求和特殊文件訪問請求;通過區分完全匹配緩沖區和半匹配緩沖區可以更加提高訪問文件的效率。
[0156]在本發明所提供的幾個實施方式中,應該理解到,所揭露的系統,裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施方式僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
[0157]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施方式方案的目的。
[0158]另外,在本發明各個實施方式中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。
[0159]所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執行本發明各個實施方式所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM, Read-Only Memory)、隨機存取存儲器(RAM, Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
[0160]以上所述僅為本發明的實施方式,并非因此限制本發明的專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,或直接或間接運用在其他相關的技術領域,均同理包括在本發明的專利保護范圍內。
【主權項】
1.一種文件的訪問方法,其特征在于,包括: 文件系統接收來自應用層的文件訪問請求; 若所述文件訪問請求是根據查詢條件獲取所述文件的內容,則獲取所述文件的元數據,其中,所述文件的元數據中包含所述文件的索引信息,所述查詢條件是針對所述文件的索引信息選擇所述文件的內容; 根據所述文件的索引信息,確定符合所述查詢條件的所述文件的內容; 通過磁盤1控制器獲取所有符合所述查詢條件的所述文件的內容,以便于所述應用層訪問所述文件。
2.根據權利要求1所述的方法,其特征在于,所述文件系統接收來自應用層的文件訪問請求的步驟之前,包括: 所述文件系統對所述文件按照預設要求進行預處理,獲得所述文件的索引信息; 將所述文件的索引信息保存在所述文件的元數據中。
3.根據權利要求2所述的方法,其特征在于,所述索引信息至少包括規則類型和每個簇包含的范圍,其中,所述規則類型中規定了對所述文件進行預處理的方式。
4.根據權利要求1所述的方法,其特征在于,所述若所述文件訪問請求是根據查詢條件獲取所述文件的內容,則獲取所述文件的元數據的步驟之前,包括: 判斷所述文件訪問請求是否是根據查詢條件獲取所述文件的內容; 若所述文件訪問請求中至少包含文件描述符、與所述查詢條件相關的參數以及緩沖區,則所述文件訪問請求是根據查詢條件獲取所述文件的內容。
5.根據權利要求4所述的方法,其特征在于,所述緩沖區包括完全匹配緩沖區和半匹配緩沖區。
6.根據權利要求5所述的方法,其特征在于,所述通過磁盤1控制器獲取所有符合所述查詢條件的所述文件的內容的步驟之后,包括: 若所述獲取的所述文件的內容完全匹配所述查詢條件,則將所述獲取的所述文件的內容放入所述完全匹配緩沖區,若所述獲取的所述文件的內容部分匹配所述查詢條件,則將所述獲取的所述文件的內容放入所述半匹配緩沖區。
7.一種文件的訪問裝置,其特征在于,所述裝置包括:接收模塊、第一獲取模塊、確定模塊以及第二獲取模塊; 所述接收模塊用于接收來自應用層的文件訪問請求; 所述第一獲取模塊用于在所述接收模塊接收來自應用層的文件訪問請求后,在所述文件訪問請求是根據查詢條件獲取所述文件的內容時,獲取所述文件的元數據,其中,所述文件的元數據中包含所述文件的索引信息,所述查詢條件是針對所述文件的索引信息選擇所述文件的內容; 所述確定模塊用于在所述第一獲取模塊獲取所述文件的元數據后,根據所述文件的索引信息,確定符合所述查詢條件的所述文件的內容; 所述第二獲取模塊用于在所述確定模塊確定符合所述查詢條件的所述文件的內容后,通過磁盤1控制器獲取所有符合所述查詢條件的所述文件的內容,以便于所述應用層訪問所述文件。
8.根據權利要求7所述的裝置,其特征在于,所述裝置還包括:獲得模塊和保存模塊; 所述獲得模塊用于對所述文件按照預設要求進行預處理,獲得所述文件的索引信息; 所述保存模塊用于在所述獲得模塊獲得所述文件的索引信息后,將所述文件的索引信息保存在所述文件的元數據中。
9.根據權利要求8所述的裝置,其特征在于,所述索引信息至少包括規則類型和每個簇包含的范圍,其中,所述規則類型中規定了對所述文件進行預處理的方式。
10.根據權利要求1所述的裝置,其特征在于,所述裝置還包括:判斷模塊; 所述判斷模塊用于判斷所述文件訪問請求是否是根據查詢條件獲取所述文件的內容,在所述文件訪問請求中至少包含文件描述符、與所述查詢條件相關的參數以及緩沖區時,判斷所述文件訪問請求是根據查詢條件獲取所述文件的內容。
11.根據權利要求10所述的裝置,其特征在于,所述緩沖區包括完全匹配緩沖區和半匹配緩沖區。
12.根據權利要求11所述的裝置,其特征在于,所述裝置還包括存放模塊; 所述存放模塊用于在所述獲取的所述文件的內容完全匹配所述查詢條件時,將所述獲取的所述文件的內容放入所述完全匹配緩沖區,在所述獲取的所述文件的內容部分匹配所述查詢條件時,將所述獲取的所述文件的內容放入所述半匹配緩沖區。
【專利摘要】本發明公開了一種文件的訪問方法及裝置,該方法包括:文件系統接收來自應用層的文件訪問請求;若文件訪問請求是根據查詢條件獲取文件的內容,則獲取文件的元數據,文件的元數據中包含文件的索引信息,查詢條件是針對文件的索引信息選擇文件的內容;根據文件的索引信息,確定符合查詢條件的文件的內容,通過磁盤IO控制器獲取所有符合查詢條件的文件的內容,以便于應用層訪問文件。通過上述方式,本發明能夠避免一次查詢帶來的多次缺頁中斷以及多次磁盤IO,并且通過過濾部分數據減少內存使用。
【IPC分類】G06F17-30
【公開號】CN104572723
【申請號】CN201310496825
【發明人】時家幸, 李俊, 方帆
【申請人】華為技術有限公司
【公開日】2015年4月29日
【申請日】2013年10月21日
【公告號】WO2015058628A1