![課件文稿hadoopvfs改進_第1頁](http://file4.renrendoc.com/view/2b84b04c367f7ee1fe6eb125a07e5cf0/2b84b04c367f7ee1fe6eb125a07e5cf01.gif)
![課件文稿hadoopvfs改進_第2頁](http://file4.renrendoc.com/view/2b84b04c367f7ee1fe6eb125a07e5cf0/2b84b04c367f7ee1fe6eb125a07e5cf02.gif)
![課件文稿hadoopvfs改進_第3頁](http://file4.renrendoc.com/view/2b84b04c367f7ee1fe6eb125a07e5cf0/2b84b04c367f7ee1fe6eb125a07e5cf03.gif)
![課件文稿hadoopvfs改進_第4頁](http://file4.renrendoc.com/view/2b84b04c367f7ee1fe6eb125a07e5cf0/2b84b04c367f7ee1fe6eb125a07e5cf04.gif)
![課件文稿hadoopvfs改進_第5頁](http://file4.renrendoc.com/view/2b84b04c367f7ee1fe6eb125a07e5cf0/2b84b04c367f7ee1fe6eb125a07e5cf05.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、HadoopVFS改進劉可嘉2008年5月16日背景與現(xiàn)狀FUSE工具HDFS(append)API舊版HadoopVFS的問題新版HadoopVFS的實現(xiàn)測試、分析與優(yōu)化內(nèi)容提要Hadoop開源分布式存儲(HDFS)、計算、索引Hadoop Distributed File SystemNameNode + DataNodesAPI: Java客戶端, C客戶端libhdfs (JNI,不完善)現(xiàn)有工程遷移 (如: PS的離線日志分析)大多用C語言編寫,不兼容Hadoop API1. 移植到新API2. 造橋:Hadoop VFS 成本低起因與背景網(wǎng)上可以找到:fuse-hadoop 0.1
2、.1, John Xing基于FUSE-j,只讀fuse-j-hadoopfs 0.03, IBM支持一次性寫入fuse_dfs 0.2.0, 未知FUSE + C + libhdfsBaidu.SYS版基于FUSE-j有一些新功能(追加),也有一些BUG和不足HadoopVFS現(xiàn)有版本FUSE:實現(xiàn)用戶態(tài)文件系統(tǒng)的工具包fuse_operations接口例:NTFS-3gFUSE-j: Java綁定3種Filesystem接口優(yōu)點:開發(fā)成本低缺點:功能有限制,但夠用性能不是瓶頸*FUSE與FUSE-j文件訪問:只允許一次性寫入create 返回FSDataOutputStream osope
3、n 返回FSDataInputStream is其他接口:不完全匹配不(完全)支持:權(quán)限控制,時間戳,擴展屬性語義不一致:unlink/rmdir removeHadoop appendopen(, mode):3種讀寫模式createFile:只創(chuàng)建,不打開HDFS API舊版Hadoop VFS V1存在的問題BUG長期讀文件后fd資源枯竭ls l, df, du等命令結(jié)果不正確rmdir等命令語義性能不支持多線程并發(fā)操作阻塞問題,響應(yīng)時間問題質(zhì)量分發(fā)部署過程、文檔、編碼、日志 不規(guī)范Hadoop VFS V2設(shè)計目標修正已知BUG支持多線程并發(fā)操作完整的設(shè)計、開發(fā)、測試流程標準安裝配置腳
4、本統(tǒng)一代碼、注釋、日志風(fēng)格BUG1: fd資源枯竭現(xiàn)象:工作一段時間后,拋異常:Too many open files.不能繼續(xù)提供服務(wù)原因:Hadoop bug: 有一些socket沒有關(guān)閉*解決:給Hadoop打patchBUG2: 命令結(jié)果錯誤ls l原因:未實現(xiàn)擴展屬性接口解決:實現(xiàn)并返回 ENOTSUPPdf (statfs 塊大小、總塊數(shù)、已用塊數(shù))原因:1. df默認塊大小,2. 塊數(shù)32位溢出解決:1. 硬寫塊大小512字節(jié) 2. 修改FUSE-jdu (同df)BUG3: 命令語義錯誤rmdir不判斷目錄是否為空原因:HDFS API中的remove為遞歸刪除解決:手動判斷m
5、kdir不檢查父目錄是否存在原因:HDFS API中的mkdirs為級聯(lián)創(chuàng)建解決:手動判斷mv等命令報錯與實際原因不符解決:增加大量手動判斷,返回正確的錯誤號多線程并發(fā)支持1障礙:文件打開句柄的維護HashMap全局資源爭用、引用計數(shù)FUSE層支持-s參數(shù) 強制串行請求,先來先服務(wù)默認:類似accept-fork模式解決:改用FUSE-j Filesystem3接口Filesystem1 vs Filesystem3Filesystem1: void open(path, flags) throws ;void read(path, buf, offset)Filesystem3:int op
6、en(path, flags, openSetter)int read(path, Object fh, buf, offset)fh:FileHandle flags, is, os, fpos多線程并發(fā)支持2fd:fh:file對象=n:1:1open():創(chuàng)建file對象和fd指向file對象dup(), fork()等:創(chuàng)建、復(fù)制fd指向fget(file)close():關(guān)閉fd,fput(file)同一個fh可能被多個線程爭用flush與releaseflush: 每次close調(diào)用release: file對象引用計數(shù)為0時調(diào)用HadoopVFS:open時打開is, os,re
7、lease時關(guān)閉,read, write要加鎖多線程并發(fā)支持3異步release問題現(xiàn)象:$ cp bigfile.tar /mnt/HadoopVFS/$ ls l /mnt/HadoopVFS/bigfile.tar-rwxrwxrwx 1 root root 0 May 9 2008 bigfile.tar$ sleep 10; ls l /mnt/HadoopVFS/bigfile.tar-rwxrwxrwx 1 root root 12345 May 9 2008 bigfile.tar原因:FUSE中release實現(xiàn)為后臺執(zhí)行解決(待商榷):修改FUSE代碼flush時關(guān)閉再打開
8、測試及結(jié)果分析(進行中)正確性測試(單線程/多線程)Shell命令級 testing 34/64C接口級 todo性能測試(針對多線程)吞吐率 almost done響應(yīng)時間 almost done其他測試HDFS節(jié)點重啟,網(wǎng)絡(luò)中斷 todo日志情況 todo性能測試結(jié)果1(1N4D集群)單線程讀45.9MB/s2, 3, 4線程讀相同文件2x60.5MB/s, 3x63.5MB/s, 4x71.5MB/s超過網(wǎng)絡(luò)極限?Page Cache2, 3, 4線程讀不同文件2x38.2MB/s, 3x33.5MB/s, 4x27.1MB/sHadoop FsShell單線程92.8MB/s性能測試結(jié)
9、果21-4線程寫不同文件1x35.8MB/s2x23.9MB/s3x23.3MB/s4x16.5MB/sHadoop FsShell:56.4MB/s瓶頸*:本地緩存-I/O網(wǎng)絡(luò)不均勻響應(yīng)&調(diào)度:讀寫過程可以ls, df各線程完成時間無顯著差異性能優(yōu)化讀:“pread” - seek + read單線程讀速率上升到106.3MB/s寫:關(guān)Page Cache (1x48.3MB/s, 2x32MB/s,讀62.4MB/s)雙緩沖 (HadoopVFS V1: 71MB/s)要求多個文件同時上傳Page Cache:默認打開。注意:不一致自動安裝配置腳本(編寫中)自動編譯、安裝FUSE, FUSE-j testing自動配置、編譯HadoopVFS testing提供易用mount.sh腳本 done自動生成二進制分發(fā)包 todo資源鏈接文檔(Co-worker):SOS23新人入門練習(xí)-劉可嘉_調(diào)研報告_VFS與FUSE接口對比.xlsSOS23新人入門練習(xí)-劉可嘉_概要設(shè)計_HadoopVFS概要設(shè)計.docSOS23新人入門練習(xí)-劉可嘉_詳細設(shè)計_Hado
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美容院前臺服務(wù)員工作總結(jié)
- 家居建材行業(yè)營銷工作總結(jié)
- 二零二五年度二手車交易個人信用貸款合作協(xié)議3篇
- 二零二五版消費信貸合同參考范本3篇
- 二零二五版小產(chǎn)權(quán)房屋交易協(xié)議(附裝修及配套設(shè)施承諾)6篇
- 2025版淘寶商家與消費者金融支付合同3篇
- 二零二五年度汽車租賃及維修一體化服務(wù)協(xié)議4篇
- 2025版石榴品牌授權(quán)與市場推廣合作協(xié)議3篇
- 二零二五年度個人消費貸款合同個人信息保護條款3篇
- 二零二五年度綠色蔬菜直供社區(qū)配送合同2篇
- 安全生產(chǎn)法律法規(guī)匯編(2025版)
- 2024年英語高考全國各地完形填空試題及解析
- 2024至2030年中國餐飲管理及無線自助點單系統(tǒng)數(shù)據(jù)監(jiān)測研究報告
- 2024年服裝門店批發(fā)管理系統(tǒng)軟件項目可行性研究報告
- 體育概論(第二版)課件第三章體育目的
- T-GDASE 0042-2024 固定式液壓升降裝置安全技術(shù)規(guī)范
- 香港朗文4B單詞及句子
- 運動技能學(xué)習(xí)與控制課件第五章運動中的中樞控制
- 財務(wù)部規(guī)范化管理 流程圖
- 斷絕關(guān)系協(xié)議書范文參考(5篇)
- 農(nóng)村集體“三資”管理流程圖
評論
0/150
提交評論