[發明專利]一種面向MongoDB的用戶空間文件系統實現方法有效
| 申請號: | 201410469287.2 | 申請日: | 2014-09-15 |
| 公開(公告)號: | CN104239511A | 公開(公告)日: | 2014-12-24 |
| 發明(設計)人: | 鄭慶華;陳亞興;董博;楊源杰;李慶喻;戴立言;胡偉雄;陳志敏 | 申請(專利權)人: | 西安交通大學;上海網達軟件股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 西安通大專利代理有限責任公司 61200 | 代理人: | 陸萬壽 |
| 地址: | 710049 陜*** | 國省代碼: | 陜西;61 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 面向 mongodb 用戶 空間 文件系統 實現 方法 | ||
1.一種面向MongoDB的用戶空間文件系統實現方法,其特征在于,包括以下步驟:構建用于儲存文件目錄結構信息以及節點元數據信息的fs.nodes集合,再利用MongoDB?GridFS存儲文件,同時在利用MongoDB?GridFS存儲文件的過程中自動生成用于存儲文件元數據信息的fs.files集合及用于存儲文件數據信息的fs.chunks集合,Linux文件系統與MongoDB數據庫實現節點的創建及刪除過程中通過fs.nodes集合、fs.files集合及fs.chunks集合關聯,具體的,目錄節點與fs.nodes集合相互關聯,文件節點與fs.nodes集合、fs.files集合以及fs.chunks集合相互關聯,節點與節點之間的父子關系由fs.nodes集合的鏈接結構所決定。
2.根據權利要求1所述的面向MongoDB的用戶空間文件系統實現方法,其特征在于,所述fs.nodes集合中的各個字段的含義如下:
_id字段:用于記錄節點的全局唯一標識ID,類型為Object_id,由mongoDB默認自動賦值;
name字段:用于記錄節點的名稱,類型為字符串;
type字段:用于記錄節點的類型,類型為整型;
depth字段:用于記錄節點所在樹結構的深度,類型為整型;
abs_path字段:用于記錄節點的絕對路徑名稱,即為根節點到當前節點的路徑,類型為字符串;
parent_id:用于記錄節點的父節點ID,類型為Object_id;
meta_data:用于記錄節點的元數據信息,類型為BSON;
其中,meta_data各個字段含義如下:
file_id字段:用于記錄文件ID,類型為Object_id,其中,當節點是文件,則file_id字段有效;當節點為目錄時,則file_id字段無效;
mode字段:用于記錄節點訪問模式,類型為整型;
uid字段:用于記錄用戶id,類型為整型;
gid字段:用于記錄組id,類型為整型;
nlink字段:用于記錄節點連接數,類型為整型,當節點為文件時,則nlink字段為該節點的連接數;當節點為目錄時,則nlink字段為該目錄下所包含的子目錄數;
atime字段:用于記錄節點上一次存取時間;
mtime字段:用于記錄節點上一次修改時間;
ctime字段:用于記錄上一次狀態修改時間。
3.根據權利要求1所述的面向MongoDB的用戶空間文件系統實現方法,其特征在于,所述節點的創建包括文件節點的創建及目錄節點的創建。
4.根據權利要求3所述的面向MongoDB的用戶空間文件系統實現方法,其特征在于,所述文件節點的創建包括以下步驟:
檢查所需創建的文件節點是否為空文件節點,當所述文件節點為空文件節點時,則關閉MongoDB數據庫,當所述文件節點不為空文件節點時,則將Linux文件系統連接MongoDB數據庫,并根據所需創建的文件節點的絕對路徑名稱在MongoDB數據庫中查找是否已存在該文件節點,當在MongoDB數據庫中已存在該文件節點時,則關閉MongoDB數據庫,當在MongoDB數據庫中不存在該文件節點時,則創建MongoDB?GridFS對象,通過所述MongoDB?GridFS對象將文件節點的內容寫入MongoDB數據庫中,并獲取文件ID,當沒有成功獲取文件ID,則直接關閉MongoDB數據庫,當成功獲取文件ID,則根據當前絕對路徑名稱計算父節點的絕對路徑名,并通過父節點的絕對路徑名查詢獲取父節點ID,當不能通過父節點的絕對路徑名查詢獲取父節點ID,則直接關閉MongoDB數據庫,當成功通過父節點的絕對路徑名查詢獲取父節點ID,則填充fs.nodes集合中各字段的值,并將該節點插入MongoDB數據庫中,當成功將該節點插入MongoDB數據庫中時,則完成文件節點的創建,當不能將該節點插入MongoDB數據庫中時,則直接關閉MongoDB數據庫。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于西安交通大學;上海網達軟件股份有限公司,未經西安交通大學;上海網達軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410469287.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:重復數據刪除方法和裝置
- 下一篇:一種非結構化數據處理方法及裝置





