Ceph的设计思想是什么

发布时间:2021-12-17 11:19:53 作者:小新
来源:亿速云 阅读:103

这篇文章主要介绍了Ceph的设计思想是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

3.1    Ceph针对的目标应用场景

        理解Ceph的设计思想,首先还是要了解Sage设计Ceph时所针对的目标应用场景,换言之,“做这东西的目的是啥?”

        事实上,Ceph最初针对的目标应用场景,就是大规模的、分布式的存储系统。所谓“大规模”和“分布式”,是指至少能够承载PB级别的数据,并且由成千上万的存储节点组成。

        在大数据口号深入人心的今天,PB已经远远不是一个激动人心的系统设计目标了。但是,应该指出,Ceph项目起源于04年。那是一个商用处理器以单核为主流,常见硬盘容量只有几十GB的年代。这和现在动辄6核12线程还要双处理器、单块硬盘3TB已经司空见惯的情况是不可同日而语的。因此,理解这个设计目标,应该考虑当时的实际情况。当然,如前所述,Ceph的设计并没有理论上限,所以PB级别并不是实际应用的容量限制。

        在Sage的思想中,对于这样一个大规模的存储系统,是不能以静态的眼光来看待的。对于其动态特性,笔者概括为如下三个“变化”:

        上述三个“变化”就是Ceph目标应用场景的关键特征。Ceph所具备的各种主要特性,也都是针对这些场景特征所提出的。

3.2    针对目标应用场景所提出的预期技术特性

        针对上述应用场景,Ceph在设计之初的几个技术特性是:

3.3    针对预期技术特性所提出的设计思路

        针对3.2节中介绍的预期技术特性,Sage对于Ceph的设计思路基本上可以概括为以下两点:

3.4    支撑设计思路实现的关键技术创新

        无论多么新颖奇妙的设计思路,最终落地必定需要有技术实力的支撑。而这也正是Ceph最为闪亮的地方。

        Ceph最为核心的技术创新就是前面所概括的八个字——“无需查表,算算就好”。一般而言,一个大规模分布式存储系统,必须要能够解决两个最基本的问题:

       一是“我应该把数据写入到什么地方”。对于一个存储系统,当用户提交需要写入的数据时,系统必须迅速决策,为数据分配一个存储位置和空间。这个决策的速度影响到数据写入延迟,而更为重要的是,其决策的合理性也影响着数据分布的均匀性。这又会进一步影响存储单元寿命、数据存储可靠性、数据访问速度等后续问题。

        二是“我之前把数据写到什么地方去了”。对于一个存储系统,高效准确的处理数据寻址问题也是基本能力之一。

        针对上述两个问题,传统的分布式存储系统常用的解决方案是引入专用的服务器节点,在其中存储用于维护数据存储空间映射关系的数据结构。在用户写入/访问数据时,首先连接这一服务器进行查找操作,待决定/查到数据实际存储位置后,再连接对应节点进行后续操作。由此可见,传统的解决方案一方面容易导致单点故障和性能瓶颈,另一方面也容易导致更长的操作延迟。

        针对这一问题,Ceph彻底放弃了基于查表的数据寻址方式,而改用基于计算的方式。简言之,任何一个Ceph存储系统的客户端程序,仅仅使用不定期更新的少量本地元数据,加以简单计算,就可以根据一个数据的ID决定其存储位置。对比之后可以看出,这种方式使得传统解决方案的问题一扫而空。Ceph的几乎所有优秀特性都是基于这种数据寻址方式实现的。

感谢你能够认真阅读完这篇文章,希望小编分享的“Ceph的设计思想是什么”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

推荐阅读:
  1. Linux/Unix设计思想
  2. 【ceph】Centos 7.1 安装Ceph

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ceph

上一篇:Ceph是什么意思

下一篇:python匿名函数怎么创建

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》