开启左侧

面向海量数据,一篇文章认识Ceph分布式存储系统

[复制链接]
avatar 发表于 2023-10-13 11:57:11 | 显示全部楼层 |阅读模式

  分布式对象存储

  Ceph是什么?它是一个软件定义的开源分布式对象存储解决方案,面向PB级的海量数据存储平台。最初由Inktank于2012年开发,该公司在2014年被红帽收购。随着近几年大数据的发展,因为在性能、可靠性和可扩展性方面具有优秀表现,Ceph在分布式存储领域获得了大量关注。

  作为一个企业级开源平台,Ceph可在标准经济型服务器和磁盘上提供统一的软件定义存储,将数据块、对象、文件的存储组合到一个平台,是一个可靠地、自动重均衡、自动恢复的分布式存储系统。

  在Ceph中,数据以对象的方式被存储或处理,与通常通过扇区和扇区偏移量(通常称为块)向存储卷写入和读取数据的传统数据存储解决方案不同。在处理大规模数据时,将数据作为对象进行处理是一种不错的方法,而且也更容易管理。这种对象存储方式使Ceph能够实现简化的可扩展性,从而轻松满足用户的需求。这些对象被复制到整个节点集群中,使Ceph具有容错能力,并进一步减少单点故障。

  去年,Ceph社区发布了对擦除编码池(Erasure Coded pool)的支持,能够用更少的空间实现存储,但要在性能方面会造成一些不好的影响。另外,Ceph的设计中也包括自我纠错和自我管理功能。

  至于可访问性方面,Ceph向用户空间公开了三个接口。第一个是对象存储。这个对象存储可以通过RESTful接口访问,支持OpenStack Swift和Amazon Simple Storage Service (S3)。通过这种方法,Web应用程序可以将直接PUT、GET和DELETE方法发送到对象存储区,无需重写应用程序代码或担心对象所存储的位置。

  第二个接口是一个稀疏分配的块设备。其目标是允许Ceph直接进入现有的计算环境,访问文件/块卷的应用程序和虚拟环境时不需要重新架构,但仍然能够利用Ceph提供的大多数特性、功能和弹性。Ceph基于对象的模型的优点是,块设备和文件系统接口能够很好地用于快照、克隆和更好的负载均衡支持。

  第三个接口是文件系统。虽然不管怎么说文件系统都会提供大量的可访问性和功能块设备,但在Ceph实现中,内置的文件系统确实删除了块设备层(减少总堆叠层的数量)而且能够直接连接到对象存储后端。这确实简化了维护和调试。


216651
comiis_nologin
您需要登录后才可以回帖 登录 | 立即注册 wechat_login1  qq_login wechat_login

本版积分规则

关闭

社区推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表