五大主流分布式存储技术对比分析

        存储根据其类型,可分为块存储,对象存储和文件存储。在主流的分布式存储技术中,HDFS/GPFS/GFS 属于文件存储,Swift 属于对象存储,而 Ceph 可支持块存储、对象存储和文件存储,故称为统一存储。
        几种主流分布式存储技术的特点比较如下:
在这里插入图片描述

1 Ceph

        Ceph 最早起源于 Sage 就读博士期间的工作、成果于2004年发表,并随后贡献给开源社区。经过多年的发展之后,已得到众多云计算和存储厂商的支持,成为应用最广泛的开源分布式存储平台。
        Ceph 根据场景可分为对象存储、块设备存储和文件存储。Ceph相比其它分布式存储技术,其优势点在于:它不单是存储,同时还充分利用了存储节点上的计算能力,在存储每一个数据时,都会通过计算得出该数据存储的位置,尽量将数据分布均衡。同时,由于采用了CRUSH、HASH等算法,使得它不存在传统的单点故障,且随着规模的扩大,性能并不会受到影响。

1.1 Ceph 的主要架构

在这里插入图片描述

  • Ceph 的最底层是 RADOS(分布式对象存储系统),它具有可靠、智能、分布式等特性,实现高可靠、高可拓展、高性能、高自动化等功能,并最终存储用户数据。RADOS系统主要由两部分组成,分别是OSD和Monitor。

  • RADOS 之上是 LIBRADOS,LIBRADOS 是一个库,它允许应用程序通过访问该库来与RADOS系统进行交互,支持多种编程语言,比如C、C++、Python等。

  • 基于 LIBRADOS 层开发的有三种接口,分别是 RADOSGW、librbd 和 MDS。

  • RADOSGW 是一套基于当前流行的RESTFUL协议的网关,支持对象存储,兼容S3和Swift。

  • librbd 提供分布式的块存储设备接口,支持块存储。

  • MDS 提供兼容 POSIX 的文件系统,支持文件存储。

1.2 Ceph 的功能模块

在这里插入图片描述

  • Ceph的核心组件包括Client客户端、MON监控服务、MDS元数据服务、OSD存储服务,各组件功能如下:

  • Client客户端:负责存储协议的接入,节点负载均衡

  • MON监控服务:负责监控整个集群,维护集群的健康状态,维护展示集群状态的各种图表,如OSD Map、Monitor Map、PG Map和CRUSH Map

  • MDS元数据服务:负责保存文件系统的元数据,管理目录结构

  • OSD存储服务:主要功能是存储数据、复制数据、平衡数据、恢复数据,以及与其它OSD间进行心跳检查等。一般情况下一块硬盘对应一个OSD。

1.3 Ceph 的资源划分

在这里插入图片描述

  • Ceph 采用 crush 算法,在大规模集群下,实现数据的快速、准确存放,同时能够在硬件故障或扩展硬件设备时,做到尽可能小的数据迁移,其原理如下:

  • 当用户要将数据存储到Ceph集群时,数据先被分割成多个object,(每个object一个object id,大小可设置,默认是4MB),object是Ceph存储的最小存储单元。

  • 由于object的数量很多,为了有效减少了Object到OSD的索引表、降低元数据的复杂度,使得写入和读取更加灵活,引入了pg(Placement Group ):PG用来管理object,每个object通过Hash,映射到某个pg中,一个 pg 可以包含多个 object。

  • Pg再通过CRUSH计算,映射到osd中。如果是三副本的ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我只会发热

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值