分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!
我現在有海量的資料檔案(1000萬個檔案)需要儲存,需要讓其他計算機可以很容易地訪問,資料無價,我還希望這個檔案系統帶冗餘功能。
我首先注意到的是ubuntu enterprise cloud的提供者:eucalyptus。它提供了和aws(amazon web service)幾乎完全相容的雲計算介面。看起來似乎是個雲儲存的靠譜解決方案。
eucalyptus模仿amazon的s3服務,提供了乙個叫做walrus的儲存服務元件。
可是,經過一番探索,我發現eucalyptus想說愛你不容易。
一方面是因為eucalyptus配置起來很麻煩,缺乏文件,網上幾乎找不到任何相關幫助,
另一方面,雖然理論上eucalyptus和aws的ec2/s3相容,但實際上並非如此,很多在aws上可以用的工具,在eucalyptus上就無法使用
最關鍵是,直到最後我把walrus配置完成之後,才發現walrus根本不像我想的那樣,是乙個帶冗餘的雲儲存系統。而只是乙個實現了s3介面的單機軟體而已。
實際上walrus和eucalyptus的另乙個元件sc(storage controller)沒有任何關聯,walrus只是提供了和s3一致的介面,而它的實現方式,既不帶冗餘,也不能分開部署在多台伺服器上。
於是我開始尋找乙個真正的分布式檔案系統,來解決我的儲存難題。一找才發現,市面上各種分布式檔案系統品種繁多,層出不窮。列舉幾個主要的:
fastdfs:國人在mogilefs的基礎上進行改進的key-value型檔案系統,同樣不支援fuse,提供比mogilefs更好的效能。
moosefs:支援fuse,相對比較輕量級,對master伺服器有單點依賴,用perl編寫,效能相對較差,國內用的人比較多
glusterfs:支援fuse,比moosefs龐大
ceph:支援fuse,客戶端已經進入了linux-2.6.34核心,也就是說可以像ext3/rasierfs一樣,選擇ceph為檔案系統。徹底的分布式,沒有單點依賴,用c編寫,效能較好。基於不成熟的btrfs,其本身也非常不成熟。
lustre:oracle公司的企業級產品,非常龐大,對核心和ext3深度依賴
nfs:老牌網路檔案系統,具體不了解,反正nfs最近幾年沒發展,肯定不能用。
本來我打算用mogilefs,因為它用的人最多,而且我的主要需求都是在web方面。
但是研究了它的api之後發現,key-value型檔案系統沒有目錄結構,導致不能用list某個子目錄的所有檔案,不能直接像本地檔案系統一樣操作,幹什麼事情都需要乙個api,讓人十分不爽。
mogilefs這種做法,可能是受同乙個開發團隊的另乙個大名鼎鼎的產品memcached的偵聽埠+api模式影響,也有可能是mogilefs剛開始設計的時候,fuse還沒有開始流行。
總之我決心要找乙個支援fuse的分布式檔案系統,最後就在moosefs, glusterfs, ceph中選擇。從技術上來看,ceph肯定是最棒的,用c編寫,進入linux-2.6.34核心,基於btrfs檔案系統,保證了它的高效能,而多台master的結構徹底解決了單點依賴問題,從而實現了高可用。可是ceph太不成熟了,它基於的btrfs本身就不成熟,它的官方**上也明確指出不要把ceph用在生產環境中。
而且國內用的人較少,linux發行版中,ubuntu10.04的核心版本是2.6.32,仍然不能直接使用ceph。
而glusterfs比較適合大型應用,口碑相對較差,因此也不考慮。
最後我選擇了缺點和優點同樣明顯的moosefs。雖然它有單點依賴,它的master非常佔記憶體。但是根據我的需求,moosefs已經足夠滿足我的儲存需求。國內moosefs的人比較多,並且有很多人用在了生產環境,更加堅定了我的選擇。
打算用一台高效能伺服器(雙路至強5500, 24gb記憶體)作為為master,兩台hp dl360g4(6塊scsi 146gb)作為chunk伺服器,搭建乙個冗餘度為2的分布式檔案系統,提供給web服務中的每一台伺服器使用。
給我老師的人工智慧教程打call!
流行的開源分布式檔案系統比較
源自 我現在有海量的資料檔案 1000萬個檔案 需要儲存,需要讓其他計算機可以很容易地訪問,資料無價,我還希望這個檔案系統帶冗餘功能。我首先注意到的是ubuntu enterprise cloud的提供者 eucalyptus。它提供了和aws amazon web service 幾乎完全相容的雲...
開源分布式檔案系統
mogilefs乙個開源的分布式檔案系統 1.應用層 沒有特殊的元件要求 2.無單點失敗 mogilefs啟動的三個元件 儲存節點 跟蹤用的資料庫 均可執行在多個 機器上,因此沒有單點失敗。你也可以將 和儲存節點執行在同一臺機器上,這樣你就沒有必要用4臺機器 推薦至少兩台機器。3.自動的檔案複製 檔...
分布式檔案系統比較
我現在有海量的資料檔案 1000萬個檔案 需要儲存,需要讓其他計算機可以很容易地訪問,資料無價,我還希望這個檔案系統帶冗餘功能。我首先注意到的是ubuntu enterprise cloud的提供者 eucalyptus。它提供了和aws amazon web service 幾乎完全相容的雲計算介...