主流分散式文件系統的的應用場景和優缺點?
01-21
想了解一下主流分散式文件系統的的應用場景和優缺點。
謝謝!
————————————————————————————————————————
是我理解錯老闆的意思了 Orz。
老闆本來就是打算用Hadoop做分散式計算的,是我自己自作多情聯繫到公司目前的產品了上。
既然是關於分散式文件系統的,就多說幾句
1.GlusterFS 文件系統標準的posix介面支持,可以做分散式NAS,也有人HPC,甚至支持KVM的虛機卷;做分散式NAS最多,其他方面用的不多,很多互聯網視頻公司用GlusterFS來做片庫;
2.ceph,支持塊ceph RBD,對象ceph RGW,文件cephfs;ceph RBD和ceph RGW比較成熟,在openstack社區比較火,做虛機塊存儲用的很多,cephfs的前期bug比較多,社區目前也在解決這些問題;3.Lustre,比較老牌的分散式文件系統,部署在多個san陣列上,不支持副本,支持分散式鎖,主要做HPC高性能計算;4.HDFS只支持追加寫,設計中沒有考慮修改寫、截斷寫、稀疏寫等複雜的posix語義,目的並不是通用的文件系統,一般作為hadoop ecosystem的存儲引擎;5.moosefs 比較接近GoogleFS的c++實現,通過fuse支持了標準的posix,算是通用的文件系統,可惜社區不是太活躍;6.IBM的GPFS也是一個很老牌的分散式文件系統,非常強大,有兩個分支,一個是通用文件系統,一個是兼容hadoop mapreduce,可惜沒有開源,國內也沒人買的起;
7.facebook Haystack是一個專有的圖片存儲系統的原型,適合小文件和worm場景(write once read many),本身並沒有開源,github上已經有一個比較成熟的實現Terry-Mao/bfs(不是百度的BFS)這裡有一個混淆的概念,分散式文件系統vs分散式計算。
我看題目的描述,你需要分散式計算(音視頻處理放在雲端),所以你後來提到的GlusterFS等等不能解決你的問題。它們只是分散式文件系統。分散式計算至少要求任務是可分解的,音視頻要看你具體的文件格式,沒有通用的解決方案。
傳統的處理音頻視頻大文件的方法是SAN,用一台很貴的機器,接一個很貴的網,連上很貴的存儲。
P.S. @黃繼新 知乎能不能開個收費功能啊?這類具體解決方案和作業設計的問題屢禁不止,乾脆疏導給大家掙點兒錢吧。主要看你的具體業務和存儲+訪問場景,其實現在音視頻比如制播之類用得多的還是類似於SAN之類的東西。
FastDFS 針對大量小文件存儲有優勢,這種場景嗯...沒有用過。hadoop的hdfs適合大文件存儲,順序讀取類型的應用,你看看你們的應用場景是否適合,btw,hdfs隨機訪問延時挺大的. 順序訪問也要優化好才吞吐高啊。
其它沒有用過的系統不做評價。你是想說HDFS吧HDFS存那些視頻不合適,HDFS存那些被處理的大文本文件很有用試試glusterfs吧,安裝也很方便
可以用七牛。省得自己操心了
推薦閱讀:
※如何評價kudu存儲引擎?
※自研文件系統本身通用功能要達到那些標準才算通用呢?
※如何評價阿里雲把SSD雲盤的IOPS提升到100萬?
※Facebook 為什麼不用 Cassandra 了?
※有沒有比paxos/raft更簡單的存儲複製協議?
