如何區(qū)分分布式/集群/并行文件系統(tǒng)?
分布式文件系統(tǒng)、集群文件系統(tǒng)、并行文件系統(tǒng),這三種概念很容易混淆,實(shí)際中大家也經(jīng)常不加區(qū)分地使用。總是有人問(wèn)起這三者的區(qū)別和聯(lián)系,其實(shí)它們之間在概念上的確有交叉重疊的地方,但是也存在顯著不同之處。
分布式文件系統(tǒng)
自然地,“分布式”是重點(diǎn),它是相對(duì)與本地文件系統(tǒng)而言的。分布式文件系統(tǒng)通常指C/S架構(gòu)或網(wǎng)絡(luò)文件系統(tǒng),用戶數(shù)據(jù)沒(méi)有直接連接到本地主機(jī),而是存儲(chǔ)在遠(yuǎn)程存儲(chǔ)服務(wù)器上。NFS/CIFS是最為常見(jiàn)的分布式文件系統(tǒng),這就是我們說(shuō)的NAS系統(tǒng)。分布式文件系統(tǒng)中,存儲(chǔ)服務(wù)器的節(jié)點(diǎn)數(shù)可能是1個(gè)(如傳統(tǒng)NAS),也可以有多個(gè)(如集群NAS)。對(duì)于單個(gè)節(jié)點(diǎn)的分布式文件系統(tǒng)來(lái)說(shuō),存在單點(diǎn)故障和性能瓶頸問(wèn)題。除了NAS以外,典型的分布式文件系統(tǒng)還有AFS,以及下面將要介紹的集群文件系統(tǒng)(如Lustre, GlusterFS, PVFS2等)。
集群文件系統(tǒng)
“集群”主要分為高性能集群HPC(High Performance Cluster)、高可用集群HAC(High Availablity Cluster)和負(fù)載均衡集群LBC(Load Balancing Cluster)。集群文件系統(tǒng)是指協(xié)同多個(gè)節(jié)點(diǎn)提供高性能、高可用或負(fù)載均衡的文件系統(tǒng),它是分布式文件系統(tǒng)的一個(gè)子集,消除了單點(diǎn)故障和性能瓶問(wèn)題。對(duì)于客戶端來(lái)說(shuō)集群是透明的,它看到是一個(gè)單一的全局命名空間,用戶文件訪問(wèn)請(qǐng)求被分散到所有集群上進(jìn)行處理。此外,可擴(kuò)展性(包括Scale-Up和Scale-Out)、可靠性、易管理等也是集群文件系統(tǒng)追求的目標(biāo)。在元數(shù)據(jù)管理方面,可以采用專用的服務(wù)器,也可以采用服務(wù)器集群,或者采用完全對(duì)等分布的無(wú)專用元數(shù)據(jù)服務(wù)器架構(gòu)。目前典型的集群文件系統(tǒng)有SONAS, ISILON, IBRIX, NetAPP-GX, Lustre, PVFS2, GlusterFS, Google File System, LoongStore, CZSS等。
并行文件系統(tǒng)
這種文件系統(tǒng)能夠支持并行應(yīng)用,比如MPI。在并行文件系統(tǒng)環(huán)境下,所有客戶端可以在同一時(shí)間并發(fā)讀寫(xiě)同一個(gè)文件。并發(fā)讀,大部分文件系統(tǒng)都能夠?qū)崿F(xiàn)。并發(fā)寫(xiě)實(shí)現(xiàn)起來(lái)要復(fù)雜許多,既要保證數(shù)據(jù)一致性,又要***限度提高并行性,因此在鎖機(jī)制方面需要特別設(shè)計(jì),如細(xì)粒度的字節(jié)鎖。通常SAN共享文件系統(tǒng)都是并行文件系統(tǒng),如GPFS、StorNext、GFS、BWFS,集群文件系統(tǒng)大多也是并行文件系統(tǒng),如Lustre, Panasas等。
如何區(qū)分?
區(qū)分這三者的重點(diǎn)是“分布式”、“集群”、“并行”三個(gè)前綴關(guān)鍵字。簡(jiǎn)單來(lái)說(shuō),非本地直連的、通過(guò)網(wǎng)絡(luò)連接的,這種為分布式文件系統(tǒng);分布式文件系統(tǒng)中,服務(wù)器節(jié)點(diǎn)由多個(gè)組成的,這種為集群文件系統(tǒng);支持并行應(yīng)用(如MPI)的,這種為并行文件系統(tǒng)。在上面所舉的例子中也可以看出,這三個(gè)概念之間具有重疊之處,比如Lustre,它既是分布式文件系統(tǒng),也是集群和并行文件系統(tǒng)。但是,它們也有不同之處。集群文件系統(tǒng)是分布式文件系統(tǒng),但反之則不成立,比如NAS、AFS。SAN文件系統(tǒng)是并行文件系統(tǒng),但可能不是集群文件系統(tǒng),如StorNext。GFS、HDFS之類,它們是集群文件系統(tǒng),但可能不是并行文件系統(tǒng)。實(shí)際中,三者概念搞理清后,分析清楚文件系統(tǒng)的特征,應(yīng)該還是容易正確地為其劃分類別的。