背景
Ceph现在已经是Openstack官方主要支持的存储后端,而最新的Ceph不仅可以提供快服务,文件服务,而且还可以提供对象存储。Openstack Swift也提供对象存储服务,那这两者到底是竞争关系,还是互补关系呢?
Ceph
Ceph是一个基于伪随机算法的强一致性分布式存储系统,它主要提供块服务,能很好的支持顺序IO和随机IO。除了用作cinder后端给虚拟机提供卷服务,同时也可以作为glance的后端;
一般来说,为了同时保证写性能和一致性,一个强一致性系统节点间通讯的延迟要尽量小,所以这样的系统一般不支持跨机房,跨地域的大规模部署。
Swift
swift天生就是专门为对象存储模型设计的,这些特征包括:
- 支持不同的存储后端,不依赖后端的任何如多副本,RAID特性来提供可靠性;
- 最终一致性模型;
- 支持跨机房,跨地域部署;
- 主要用来支持append io和顺序io;
对比
下面是Mirantis针对ceph和swift在对象存储服务的对比: