Openstack 对象存储服务之争:Ceph或者Swift
来源:互联网 发布:centos yum 源更新 编辑:程序博客网 时间:2024/05/26 07:28
背景
Ceph现在已经是Openstack官方主要支持的存储后端,而最新的Ceph不仅可以提供快服务,文件服务,而且还可以提供对象存储。Openstack Swift也提供对象存储服务,那这两者到底是竞争关系,还是互补关系呢?
Ceph
Ceph是一个基于伪随机算法的强一致性分布式存储系统,它主要提供块服务,能很好的支持顺序IO和随机IO。除了用作cinder后端给虚拟机提供卷服务,同时也可以作为glance的后端;
一般来说,为了同时保证写性能和一致性,一个强一致性系统节点间通讯的延迟要尽量小,所以这样的系统一般不支持跨机房,跨地域的大规模部署。
Swift
swift天生就是专门为对象存储模型设计的,这些特征包括:
- 支持不同的存储后端,不依赖后端的任何如多副本,RAID特性来提供可靠性;
- 最终一致性模型;
- 支持跨机房,跨地域部署;
- 主要用来支持append io和顺序io;
对比
下面是Mirantis针对ceph和swift在对象存储服务的对比:
SwiftCephReplicationYesYesMax. obj.
size5gb
(bigger objects segmented)UnlimitedMulti DC
installationYes (replication on the container level only,
but a blueprint proposed for full inter dc replication)No (demands asynchronous eventual consistency
replication, which Ceph does not yet support)Integration
/w OpentsackYesPartial
(lack of Keystone support)Replicas
managementNoYesWriting
algorithmSynchronousSynchronousAmazon S3
compatible APIYesYesData placement
methodRing (static mapping structure)CRUSH (algorithm)
结论
我个人认为,ceph毕竟不是一个专门的对象存储系统,其对象存储服务其实是在block服务上模拟出来的,所以和专门的对象存储swift比起来,在部署规模,使用成本上会有比较大的差距;但是,因为不是所有的云都需要大规模的对象存储,考虑到跨地域场景时,swift的部署也很复杂,所以在刚开始搭建openstack云服务时,或者是对象存储业务量不是很大时,为了节省系统搭建时间,使用ceph提供S3服务也是个不错的选择。
参考资料
- Object Storage approaches for OpenStack Cloud: Understanding Swift and Ceph
0 0
- Openstack 对象存储服务之争:Ceph或者Swift
- OpenStack对象存储-swift
- Openstack swift对象存储
- OpenStack对象存储服务swift多节点安装(VirtualBox multi-host)
- OpenStack对象存储——Swift
- OpenStack对象存储:Swift架构详解
- OpenStack对象存储——Swift
- OpenStack对象存储——Swift
- OpenStack对象存储——Swift
- OpenStack对象存储:Swift架构详解
- OpenStack对象存储——Swift
- 《转》OpenStack对象存储——Swift
- OpenStack 对象存储 Swift 简单介绍
- OpenStack对象存储(Swift)要领(译)-目录
- OpenStack对象存储(Swift)要领(译)-第一章
- OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)上
- OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)中
- OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)下
- Java文件编码格式转换
- 时间类
- 边锋实习生面试感慨
- 电子商务网站网上支付原理简析
- HTTP Live Streaming直播(iOS直播)技术分析与实现
- Openstack 对象存储服务之争:Ceph或者Swift
- LeetCode 83 — Remove Duplicates from Sorted List(C++ Java Python)
- openSession与getCurrentSession的区别
- 删除可变数组NSMutableArray中的重复数据
- Cannot assign requested address: JVM_Bind
- 六周 项目3 用多文件组织多个类的程序
- Axis开发webservice .
- 有不少业主询问:究竟是先验房,后拿钥匙,还是相反?
- C++库函数---<stdio.h>标准输入输出函数