- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
?
? ? ? ?
? ? ?
Ceph存储后端ObjectStore架构和技术演进
? ? ? ?
?
?
?
?
?
?
? ? ?
? ? ?
? ? ?
?
?
?
? ? ? Ceph是分布式和强一致性的软件定义存储产品,随着越来越多的企业和组织不断加入,Ceph存储系统稳定性、可靠性和易管理性得到了很大的提升,在版本演进和迭代中,Ceph存储的企业特性也得到了完善。如CephFS、iSCSI协议、InfiniBand网络等特性,但今天笔者将带领大家深入分析下Ceph最新后端存储BlueStore的架构和ObjectStore历史技术演进,因为存储后端的架构在一定程度上决定Ceph存储系统的性能。SUSE也是在最新Enterprise Storage 5版本中率先支持最新的BlueStore后端存储技术。
? ? ? BlueStore是Ceph存储后端ObjectStore的最新实现。在Ceph系统中,数据首先通过Hash算法分布到每个节点OSD上,最终由ObjectStore写到磁盘上实现数据保存和持久化。那么,首先来看看ObjectStore架构。
ObjectStore架构介绍
? ? ? Ceph后端支持多种存储引擎,这些存储后端模块是以插件式的方式被管理,目前支持的实现方式包括Filestore(默认存储后端),KeyValue Store、Memstore、NewStore和最新的Bluestore。
?
? ? ? 从架构上来看,ObjectStore封装了下层存储引擎的所有IO操作,并向上层提供对象(Object)、事务(Transaction)语义接口。在这里,MemStore是基于内存的实现存储接口功能;KeyValue Store主要基于KV数据库(如LevelDB,RocksDB等)实现接口功能。
? ? ? 一直以来,FileStore是Ceph目前默认的ObjectStore后端存储引擎(仍然是其他Ceph存储的默认后端),FileStore基于Journal机制实现了事务处理能力,除了支持事务特性(consistency、atomic等)以外,Journal还可将多个小IO写合并为顺序写Journal来提升系统性能。
?
? ? ? ObjectStore接口主要包括三个部分,第一部分是Object的读写操作,类似于POSIX的部分接口;第二部分是Object的属性(xattr)读写操作,这类操作是KV操作,它与某一个Object关联;第三部分是关联Object的KV操作(在Ceph中称为omap)。
?
ObjectStore后端存储引擎之FileStore
? ? ? FileStore是利用文件系统的Posix接口实现ObjectStore API。每个Object在FileStore层会被看成是一个文件,Object的属性(xattr)会利用文件的xattr属性进行存取,由于有些文件系统(如ext4)对xattr的长度有限制,因此,在FileStore中,超出长度限制的Metadata会被存储在DBObjectMap里。而Object的KV关系则直接利用DBObjectMap功能实现。
? ? ? 但是FileStore存在一些问题,例如Journal机制使一次写请求在OSD端往下写时,变为两次写操作(同步写Journal,异步写入Object);当然,可以通过SSD实现Journal可缓解Journal和object写操作的性能影响;写入的每个Object都对应OSD本地文件系统的一个物理文件,对于大量小Object存储场景来说,OSD端无法缓存本地所有文件的元数据,这使读写操作可能需要多次本地IO操作,系统性能差等。
ObjectStore后端存储引擎之NewStore
? ? ? 为了解决上述FileStore的问题,Ceph引入了新的存储引擎NewStore(又被称为KeyFile Store),其关键结构如下图所示:
? ? ? NewStore解耦Object与本地物理文件间的一一对应关系,通过索引结构(上图中ONode)在Object和本地物理文件建立映射关系,并使用KV数据库存储索引数据;在保证事务特性的同时,对于Object的操作无需Journal支持;在KV数据库上层建立Onode数据cache以加速读取操作;单个Object可以有多个fragement文件,多个Object也可共存于一个fragement文件,更加灵活。
?
ObjectStore后端存储引擎之BlueStore
? ? ? NewStore使用RocksDB存储Ceph日志,同时Ceph的真正数据对象存储在文件系统中。如今有了BlueStore技术,数据对象可以无需任何文件系统的接口
您可能关注的文档
- Brocade基于NVMe over Fabric的FC Fabric技术方案解读.doc
- Burst Buffer技术为何在HPC如此盛行.doc
- Ceph vs Gluster之开源存储力量的较量.doc
- ARM技术和市场分析.docx
- ASIC芯片技术和知识介绍.docx
- Ceph后端ObjectStore存储引擎实现和发展.docx
- Ceph特性更新或再让OpenStack爱不释手.docx
- CISC和RISC处理器之争-MIPS架构是龙芯唯一选择.docx
- Cloud Foundry开源PaaS云平台概述.docx
- CTO为CEO吹过的牛逼买单.docx
- 《GB/T 17737.9-2024同轴通信电缆 第9部分:柔软射频同轴电缆分规范》.pdf
- GB/T 17737.9-2024同轴通信电缆 第9部分:柔软射频同轴电缆分规范.pdf
- 中国国家标准 GB/T 17737.9-2024同轴通信电缆 第9部分:柔软射频同轴电缆分规范.pdf
- GB/T 44003-2024力学性能测量 REBCO涂层导体(镀铜)脱层强度测试方法.pdf
- 中国国家标准 GB/T 44021.2-2024音视频及相关设备 功耗测量 第2部分:测试信号和媒介.pdf
- 《GB/T 44021.2-2024音视频及相关设备 功耗测量 第2部分:测试信号和媒介》.pdf
- GB/T 44021.2-2024音视频及相关设备 功耗测量 第2部分:测试信号和媒介.pdf
- GB/T 43962.1-2024动力电池数字化车间集成 第1部分:通用要求.pdf
- 2024广西南宁市江南区教育局面向南宁市公办学校招募中学支教志愿者88人笔试备考试题及答案解析.docx
- 2024广西合浦县山口镇人民政府公开招聘村级防贫监测信息员2人笔试备考试题及答案解析.docx
文档评论(0)