LFS 輕量級分布式文件儲存系統
LFS是一個輕量級分布式文件系統。
LFS有著高容錯性的特點,并且設計用來部署在低廉的(low-cost)硬件上。而且它提供高傳輸率(high throughput)來訪問應用程序的數據,適合那些有著超大數據集(large data set)的應用程序。LFS放寬了(relax)POSIX的要求(requirements)這樣可以流的形式訪問(streaming access)文件系統中的數據。
文件系統中使用的技術都是最簡單的,在1.0版本之前沒有刻意的追求性能
RPC傳輸統一采用int8_t,int32_t,int64_t數據類型
如果你有什么疑問可以發送郵件到:redchen1255@gmail.com
1.0版目標
1.實現driver中所有功能
2.chunk備份數目自動遷移
3.沒有內存泄露
4.管理控制工具
5.支持100個節點
接口API
Status lfs_write(LFS * lfs,SFile * file)
參數:
lfs :系統實例
file :要寫入的文件
返回:
返回該方法處理狀態碼
Status lfs_read(LFS * lfs,const char * namespace,/ *out */SFile * file);
參數:
lfs :系統實例
namespace:需要讀取文件的命名空間
file :文件指針,取得文件將放入這個指針的地址中
返回:
返回該方法處理狀態碼
實例
當前支持寫,讀,刪除操作
(完全支持x86_32,x86_64)
測試環境:Ubuntu 10.04 32位 64位
操作命令:
1.下載源代碼到lfs文件夾中(文件夾不用預先建立)
svn export http://lemon-file-system.googlecode.com/svn/trunk/ lfs
2.進入lfs文件夾,打開lfs.py,檢查user config項目,檢查配置是否正確(lfs現在還不支持遠程自動部署,因為測試和開發者服務器數量有限,只僅限在單機啟動多個進程的辦法,如果有需要的用戶,可以自己修改lfs.py來支持遠程自動部署)
cd lfs
3.運行lfs.py,查看系統支持的命令
python lfs.py help
4.啟動lfs(如果系統已經編譯部署,啟動lfs,可以直接運行 python lfs.py start)
python lfs.py all
5.運行測試case進入到build目錄(系統默認是 ~/work/build,如果更改配置,按照自己的配置的路徑)
cd ~/work/build
6.運行driver_unittest
./driver_unittest
(沒有出現紅色的FAIL,表示測試例子成功通過)
7.停止lfs
python lfs.py stop