中文字幕无码日韩视频无码三区

文件的訪問方法及裝置的制造方法

文檔序號:8258595閱讀:261來源:國知局
文件的訪問方法及裝置的制造方法
【技術領域】
[0001]本發明涉及文件系統技術領域,特別是涉及一種文件的訪問方法及裝置。
【背景技術】
[0002]在很多情況下,數據庫與文件系統是相對獨立的,兩者間的運行也是只有“利用”關系,而無“結盟”關系,數據庫只是調用文件系統的讀寫功能,文件系統也不管接收的請求是否是數據庫的請求。文件系統提供它自己的接口,數據庫只能讓文件系統將所有數據取出,然后再一個個篩選,文件系統返回了很多無用的數據,增大了開銷,并且文件系統對待接口的操作方式是:嘗試在內存中讀取這個文件,如果文件還未加載到內存,則導致缺頁中斷,然后真正調用1驅動獲取數據。
[0003]IBM公司做了一款產品:它將數據庫的業務放在文件系統中實現。即文件系統允許用戶按照條件輸入,但文件系統只能判斷該條件的邊界,實際運行時還是需要調用文件系統接口來獲取數據,即用戶通過文件描述符及偏移量,調用文件系統接口獲取數據。每次調用文件系統接口獲取數據時,都需要判斷內存中是否加載該數據,如果還未加載該數據則缺頁中斷,并調用1驅動獲取該數據,而不會一次性將所有符合條件的數據都加載到內存中。
[0004]本申請的發明人在長期的研發中發現,上述方案均會由于一次查詢帶來多次的缺頁中斷以及磁盤的1開銷,導致文件系統的查詢性能較低。

【發明內容】

[0005]本發明主要解決的技術問題是提供一種文件的訪問方法及裝置,能夠避免一次查詢帶來的多次缺頁中斷以及多次磁盤10。
[0006]第一方面,本發明提供一種文件的訪問方法,包括:文件系統接收來自應用層的文件訪問請求;若所述文件訪問請求是根據查詢條件獲取所述文件的內容,則獲取所述文件的元數據,其中,所述文件的元數據中包含所述文件的索引信息,所述查詢條件是針對所述文件的索引信息選擇所述文件的內容;根據所述文件的索引信息,確定符合所述查詢條件的所述文件的內容;通過磁盤1控制器獲取所有符合查詢條件的所述文件的內容,以便于所述應用層訪問所述文件。
[0007]在第一方面的第一種可能的實現方式中,所述文件系統接收來自應用層的文件訪問請求的步驟之前,包括:所述文件系統對所述文件按照預設要求進行預處理,獲得所述文件的索引信息;將所述文件的索引信息保存在所述文件的元數據中。
[0008]結合第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述索引信息至少包括規則類型和每個簇包含的范圍,其中,所述規則類型中規定了對所述文件進行預處理的方式。
[0009]在第一方面的第三種可能的實現方式中,所述若所述文件訪問請求是根據查詢條件獲取所述文件的內容,則獲取所述文件的元數據的步驟之前,包括:判斷所述文件訪問請求是否是根據查詢條件獲取所述文件的內容;若所述文件訪問請求中至少包含文件描述符、與所述查詢條件相關的參數以及緩沖區,則所述文件訪問請求是根據查詢條件獲取所述文件的內容。
[0010]結合第一方面的第三種可能的實現方式,在第一方面的第四種可能的實現方式中,所述緩沖區包括完全匹配緩沖區和半匹配緩沖區。
[0011]結合第一方面的第四種可能的實現方式,在第一方面的第五種可能的實現方式中,所述通過磁盤1控制器獲取所有符合所述查詢條件的所述文件的內容的步驟之后,包括:若所述獲取的所述文件的內容完全匹配所述查詢條件,則將所述獲取的所述文件的內容放入所述完全匹配緩沖區,若所述獲取的所述文件的內容部分匹配所述查詢條件,則將所述獲取的所述文件的內容放入所述半匹配緩沖區。
[0012]第二方面,本發明提供一種文件的訪問裝置,所述裝置包括:接收模塊、第一獲取模塊、確定模塊以及第二獲取模塊;所述接收模塊用于接收來自應用層的文件訪問請求;所述第一獲取模塊用于在所述接收模塊接收來自應用層的文件訪問請求后,在所述文件訪問請求是根據查詢條件獲取所述文件的內容時,獲取所述文件的元數據,其中,所述文件的元數據中包含所述文件的索引信息,所述查詢條件是針對所述文件的索引信息選擇所述文件的內容;所述確定模塊用于在所述第一獲取模塊獲取所述文件的元數據后,根據所述文件的索引信息,確定符合所述查詢條件的所述文件的內容;所述第二獲取模塊用于在所述確定模塊確定符合所述查詢條件的所述文件的內容后,通過磁盤1控制器獲取所有符合所述查詢條件的所述文件的內容,以便于所述應用層訪問所述文件。
[0013]在第二方面的第一種可能的實現方式中,所述裝置還包括:獲得模塊和保存模塊;所述獲得模塊用于對所述文件按照預設要求進行預處理,獲得所述文件的索引信息;所述保存模塊用于在所述獲得模塊獲得所述文件的索引信息后,將所述文件的索引信息保存在所述文件的元數據中。
[0014]結合第二方面的第一種可能的實現方式,在第二方面的第二種可能的實現方式中,所述索引信息至少包括規則類型和每個簇包含的范圍,其中,所述規則類型中規定了對所述文件進行預處理的方式。
[0015]在第二方面的第三種可能的實現方式中,所述裝置還包括:判斷模塊;所述判斷模塊用于判斷所述文件訪問請求是否是根據查詢條件獲取所述文件的內容,在所述文件訪問請求中至少包含文件描述符、與所述查詢條件相關的參數以及緩沖區時,判斷所述文件訪問請求是根據查詢條件獲取所述文件的內容。
[0016]結合第二方面的第三種可能的實現方式,在第二方面的第四種可能的實現方式中,所述緩沖區包括完全匹配緩沖區和半匹配緩沖區。
[0017]結合第二方面的第四種可能的實現方式,在第二方面的第五種可能的實現方式中,所述裝置還包括存放模塊;所述存放模塊用于在所述獲取的所述文件的內容完全匹配所述查詢條件時,將所述獲取的所述文件的內容放入所述完全匹配緩沖區,在所述獲取的所述文件的內容部分匹配所述查詢條件時,將所述獲取的所述文件的內容放入所述半匹配緩沖區。
[0018]本發明的有益效果是:區別于現有技術的情況,本發明由于文件的元數據中保存有文件的索引信息,在接收到來自應用層的包含針對索引信息的查詢條件的文件訪問請求時,根據文件的索引信息,即可通過磁盤1控制器獲取所有符合查詢條件的文件的內容,因此,通過這種方式,能夠避免一次查詢帶來的多次缺頁中斷以及多次磁盤10,并且通過過濾部分數據減少內存使用。
【附圖說明】
[0019]圖1是本發明文件的訪問方法一實施方式的流程圖;
[0020]圖2是本發明文件的訪問方法另一實施方式的流程圖;
[0021]圖3是本發明文件的訪問方法又一實施方式的流程圖;
[0022]圖4是本發明文件的訪問方法一個具體實例的應用示意圖;
[0023]圖5是本發明文件的訪問裝置一實施方式的結構示意圖;
[0024]圖6是本發明文件的訪問裝置另一實施方式的結構示意圖;
[0025]圖7是本發明文件的訪問裝置又一實施方式的結構示意圖;
[0026]圖8是本發明文件的訪問裝置又一實施方式的結構示意圖。
【具體實施方式】
[0027]下面結合附圖和實施方式對本發明進行詳細說明。
[0028]參閱圖1,圖1是本發明文件的訪問方法一實施方式的流程圖,包括:
[0029]步驟SlOl:文件系統接收來自應用層的文件訪問請求。
[0030]本發明文件的訪問系統包括三層:一個是應用層,數據庫通常在應用層;第二個是文件系統層,第三個是磁盤,即文件的存放位置。
[0031]文件系統是操作系統用于明確磁盤或分區上的文件的方法和數據結構,即在磁盤上數據的組織方法。具體地說,它負責為用戶建立文件,存入、讀出、修改、轉儲文件,當用戶不再使用時撤銷文件等。
[0032]在一般情況下,文件系統對文件是不做任何處理的,數據庫是按照數據結構來組織、存儲和管理數據的倉庫,在本發明實施方式中,文件系統已經按照預設要求對文件進行了預處理,即將數據庫的部分功能加入文件系統中來。預設要求是預先設定的對文件進行預處理(例如組織、排序、分類、整理等等)的要求,例如:按照某種條件對文件進行排序,列數據庫文件記錄某個列的信息,可以按照某列進行排序;或者按照哈希值對文件進行處理;或者按照該文件的某個參數的范圍對該文件進行處理等等。
[0033]步驟S102:若文件訪問請求是根據查詢條件獲取文件的內容,則獲取文件的元數據,其中,文件的元數據中包含文件的索引信息,查詢條件是針對文件的索引信息選擇文件的內容。
[0034]元數據(Metadata)是描述其它數據的數據(data about other data),或者說是用于提供某種資源的有關信息的結構數據(structured data)。
[0035]索引本身是數據庫中經常需要使用的信息,是對數據庫表中一列或多列的值進行排序的一種結構,使用索引可快速訪問數據庫表中的特定信息。在本發明實施方式中,將索引信息引入到文件系統中,將對文件預處理后獲得的索引信息保存在該文件的元數據中。
[0036]在文件系統對文件按照預設要求進行預處理后,獲得該文件的索引信息,將該文件的索引信息保存在該文件的元數據中。如果文件訪問請求是根據查詢條件獲取文件的內容,那么獲取該文件的元數據。因為元數據中保存有已預處理的文件的索引信息,查詢條件是針對文件的索引信息選擇文件的內容的,那么根據該索引信息,
當前第1頁1 2 3 4 5 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1