您的位置:首页 > 移动开发 > Swift

openstack中swift和cinder中的区别

2015-02-14 11:29 459 查看
swift是object storage(对象存储),将object(可以理解为文件)存储到bucket(可以理解为文件夹)里,你可以用swift创建container,然后上传文件,例如视频,照片,这些文件会被replication到不同服务器上以保证可靠性,swift可以不依靠虚拟机工作。所谓的云存储,OpenStack就是用swift实现的,类似于Amazon AWS S3(Simple Storage Service).

cinder是block storage(块存储),你可以把cinder当做优盘管理程序来理解。你可以用cinder创建volume,然后将它接到(attach)虚拟机上去,这个volume就像虚拟机的一个存储分区一样工作。如果你把这个虚拟机terminate了,这个volume和里边的数据依然还在,你还可以把它接到其他虚拟机上继续使用里边的数据。cinder创建的volume必须被接到虚拟机上才能工作。类似于Amazon AWS EBS(Elastic Block Storage).
cinder 是块存储,你可以简单的理解成一个移动硬盘,当创建虚拟机需要用到硬盘的时候,会通过cinder技术给虚拟机增加一块存储设备,就是刚才说移动硬盘。swift是对象存储,是一个存储系统,它不像块存储,你可以随意的对块设备格式化,添加文件系统等,它现在已经是一个系统,当你需要存文件的时候,把文件传给swift,怎么存,存到哪里,这个不是你关心的事情。反过来,取文件的时候,你发一条命令给swift ,会自动的给你取出来,同样怎么取(文件存储的路径)你也不需要知道。它的用途是存储创建虚拟机的镜像文件,当创建虚拟机的时候,发命令到swift,获取镜像。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: