面向不同需求的物件儲存系統對比:Ceph與Swift

儲存頻道發表於2018-11-07

   【IT168編譯】在Ceph與Swift之間,存在一些孰優孰劣的爭辯。Ceph在訪問資料和儲存資訊方面提供了更大的靈活性,但這並不完全意味著它是一個比Swift更好的物件儲存系統。

  Swift和Ceph都提供物件儲存,將資料分割成二進位制物件並將其複製到儲存中。使用Ceph和Swift,物件儲存都是在Linux檔案系統之上建立的。此外,Ceph和Swift都是在考慮可伸縮性的情況下構建的,因此可以很容易地根據需要新增儲存節點。兩者的不同之處主要在於:

   訪問資料

  Swift是由Rackspace開發的,目的是為該公司的雲提供可擴充套件儲存。因為它是基於雲開發的,所以它的主要訪問方法是透過RESTful API。應用程式可以直接對Swift定址(繞過作業系統)並將資料提交給Swift儲存。這在純基於雲的環境中非常有用,但它也使訪問雲外的快速儲存變得更加複雜。

  至於Ceph,從一開始,其開發人員就致力於使其成為一個比Swift更開放的物件儲存系統。Ceph有四種訪問方法:

  ·透過Rados閘道器訪問Amazon S3相容的RESTful API:這使得Ceph可以與Swift相媲美,也可以與Amazon S3雲環境中的任何東西相媲美。

  ·CephFS:這是一個可移植作業系統介面相容的檔案系統,執行在任何Linux發行版上,所以作業系統可以直接訪問Ceph儲存。

  ·Rados Block Device (RBD): RBD是一個Linux核心級的塊裝置,允許使用者像訪問其他Linux塊裝置一樣訪問Ceph。

  ·ISCSI 閘道器:這是SUSE對Ceph專案的補充。它允許管理員在Ceph上執行iSCSI閘道器,將其轉換為任何作業系統都可以訪問的SAN檔案。

  因此在對比評估Ceph與Swift時,請記住,Ceph提供了更多訪問物件儲存系統的方法。正因如此,它比Swift更實用、更靈活。

   訪問儲存資訊

  Ceph與Swift截然不同的另一個方面是客戶端如何訪問物件儲存系統。在Swift中,客戶端必須聯絡Swift閘道器,這會帶來一些潛在的單點故障。為了解決這個問題,許多Swift環境為Swift閘道器實現了高可用性。

  Ceph使用一個物件儲存裝置(OSD),執行在每個儲存節點上執行。Ceph可以透過OSD獲取關於儲存拓撲的資訊,以及在哪裡收集二進位制物件以訪問原始資料。訪問物件儲存所需的另一個元件在客戶機上執行,因此Ceph對儲存的訪問沒有一個單獨的入口點。這使得它比Swift更靈活。

   關於用例

  Ceph和Swift的組織方式存在著根本性的差異,但這並不意味著兩者孰優孰劣。兩者都是非常優秀的開源專案,被世界各地區的使用者積極使用——出於不同的原因。Ceph在需要高度一致性的虛擬機器、資料庫和其他資料型別互動的單站點環境中表現良好,Swift更適合處理大量資料的大型環境,這種差異是兩個物件儲存系統如何在其複製演算法中處理資料一致性的直接結果。

  Ceph資料在整個叢集中是強一致的,而Swift資料是最終一致的,它透過在軟體層面引入一致性雜湊技術和資料冗餘性,犧牲一定程度的資料一致性來達到高可用性和可伸縮性,在跨叢集同步資料之前可能會需要一些時間。

  所以總的來說,Ceph與Swift這兩種物件儲存系統,誰都不能說絕對優於另一種,因為它們服務於不同目的。

  原文作者:Sander van Vugt 來源:TechTarget


來自 “ TechTarget ”,原文連結:http://blog.itpub.net/31545805/viewspace-2219127/,如需轉載,請註明出處,否則將追究法律責任。

相關文章