以上就是Ceph和Swift的相似之處。
數(shù)據(jù)訪問
Swift是由Rackspace開發(fā)的用來為云計(jì)算提供可擴(kuò)展存儲(chǔ)的項(xiàng)目。它是為云而開發(fā)的,云原生的,所以它主要的訪問方法RESTful API。應(yīng)用程序繞開操作系統(tǒng)直接去Swif對(duì)接。這樣做的好處是在云環(huán)境中使用時(shí)非常方便,但在訪問云外的Swift存儲(chǔ)時(shí)就比較麻煩了。
從一開始,Ceph就比Swift開放,Ceph有四種數(shù)據(jù)訪問方式:
Ceph可通過Rados網(wǎng)關(guān)用兼容S3的RESTful API訪問:這點(diǎn)Ceph與Swift相類似,不過S3以外,Ceph對(duì)AWS云環(huán)境下的其他內(nèi)容也能很好的兼容,要知道,AWS為現(xiàn)代云環(huán)境畫下了廣闊的藍(lán)圖,有許多新的可能。
CephFS:這是一個(gè)POSIX兼容的文件系統(tǒng),可以在任何Linux發(fā)行版上運(yùn)行,操作系統(tǒng)可直接訪問Ceph存儲(chǔ)。
RDB:RBD是一個(gè)Linux內(nèi)核級(jí)的塊設(shè)備,允許用戶像任何其他Linux塊設(shè)備一樣訪問Ceph。
ISCSI 網(wǎng)關(guān): 這一增加的功能是SUSE加上去的,它允許管理員在Ceph之上運(yùn)行iSCSI網(wǎng)關(guān),從而將其轉(zhuǎn)變?yōu)槿魏尾僮飨到y(tǒng)都可以訪問的SAN文件管理器。
Ceph架構(gòu)的組成
因?yàn)镃eph可以提供多種方式來訪問對(duì)象存儲(chǔ),所以比Swift更有可用性,擴(kuò)展性更好。
訪問存儲(chǔ)信息
Ceph與Swift另外一種最大的不同還在于客戶端訪問對(duì)象存儲(chǔ)系統(tǒng)方式。 在Swift中,客戶端必須聯(lián)到Swift網(wǎng)關(guān),這樣有出現(xiàn)單點(diǎn)故障的可能。 為了解決這一問題,許多Swift環(huán)境為Swift網(wǎng)關(guān)實(shí)現(xiàn)了高可用性。
Ceph的存儲(chǔ)節(jié)點(diǎn)上運(yùn)行著OSD,Ceph通過OSD能獲得存儲(chǔ)拓?fù)鋱D,能通過OSD收集到二進(jìn)制對(duì)象最后找到原始數(shù)據(jù),別的部分都是訪問運(yùn)行在客戶端上的對(duì)象的主要組件,Ceph訪問存儲(chǔ)的方式不只有單個(gè)入口,所以與Swift相比更加靈活。
用戶案例
Ceph與Swift有很大不同,但并不能說誰比誰好。
兩個(gè)項(xiàng)目都是綠色開源項(xiàng)目,都有來自全球的用戶,用戶用Ceph的理由多種多樣。
在單一環(huán)境下,Ceph與虛擬機(jī),數(shù)據(jù)庫以及別的數(shù)據(jù)類型之間的數(shù)據(jù)交互表現(xiàn)良好,這些環(huán)境都對(duì)數(shù)據(jù)一致性有很高要求。
Swift在處理海量數(shù)據(jù)的時(shí)候比較有優(yōu)勢。數(shù)據(jù)一致性決定了兩者對(duì)應(yīng)兩類應(yīng)用場景。
Ceph是始終跨集群強(qiáng)一致性,Swift數(shù)據(jù)是最終一致的,同步一致數(shù)據(jù)需要時(shí)間。
所以說,不能說誰比誰好,這是因?yàn)樵O(shè)計(jì)和使用的場景根本上是有區(qū)別的。