带你读《存储漫谈Ceph原理与实践》第一章分布式存储概述1.1存储系统的架构演进(二)

简介: 带你读《存储漫谈Ceph原理与实践》第一章分布式存储概述1.1存储系统的架构演进

1.1.2 分布式存储系统

分布式存储最早由谷歌提出,其目的是通过廉价的商用服务器来提供海量、弹性可扩展的数据存储系统。它将数据分散地存储到多台存储服务器上(服务器分布在企业的各个角落,并将这些分散的存储资源构成虚拟的存储设备。

1-5 展示了分布式存储系统的工作模式。

分布式存储架构通常由 3个部分组成:客户端、元数据服务器以及数据服务器。客户端负责发送读写请求、缓存文件元数据和文件数据;元数据服务器作为整个系统的核心组件,负责管理文件元数据和处理客户端的请求;数据服务器负责存放文件数据,保证数据的可用性和完整性。该架构的好处是存储系统整体的性能和容量能够随着系统内存储服务器的增加不断地近似线性扩展,系统具有很强的伸缩性。

1.  分布式存储的兴起


image.png

1-5分布式存储系统示意


    分布式存储系统的兴起与互联网的发展密不可分,互联网公司由于其数据增量大且初IT 投资相对较少,对大规模分布式存储系统有着强烈的业务需求以及使用意愿,期望通过规模效应降低数据的存储成本。

与传统建设方式中使用的高端服务器、高端存储器和高端处理器不同,互联网公司的分布式存储系统由数量众多、成本低廉、高性价比的普通服务器通过网络连接而成,其主要优势有以下3点。

1)系统可获得更好的scaleout 能力

互联网的业务发展速度快,而且更加注重成本开支,要求存储系统不能依靠传统的scaleup方式即先购买小型机,再购买中型机,甚至大型机)来满足业务数据的存储需求。互联网公司使用的分布式存储系统要求支持 scaleout 能力,即可以通过增加普通服务器的数量来提高系统的整体处理能力。

2)系统拥有更好的成本优势

普通服务器成本低廉,故障率相对较高,但分布式存储系统的分区容错性可保证存储集群因为故障而被分解为多个部分之后,存储系统整体仍然能够正常对外提供服务,软件层面的自动容错,可保证存储集群的数据一致性,互联网公司可最大限度地享受普通服务器带来的高性价比优势。

3)系统可获得更加线性的性能输出

随着服务器的不断加入,存储集群的计算、存储、网络服务能力都会线性增加,加之分布式存储系统在软件层面实现 I/O负载的自动均衡,存储系统的 I/O处理能力可以得到线性的扩展,对于新增的业务需求,互联网公司可以精确地估算新增资源投入,实现小   步快跑的资源建设,最优化资源的投入产出比。


2.  分布式存储的优势 

分布式存储系统自诞生以来,一直热度不减,被企业津津乐道并持续应用于核心生产系统,究其原因,分布式存储系统可带来如下优势。

1)系统计算处理能力更优

摩尔定律告诉人们:当价格不变时,集成电路上可容纳的元器件的数目,每隔 1824个月便会增加一倍,性能也将提升一倍,即随着时间的推移,单位成本支出所能购买的计   算能力在不断提升。换个角度,具体到某个固定时间点,单颗处理器的计算能力终究会有   上限,即使企业有意愿花更多的成本去购买计算能力,市场上也没有芯片能够满足其需求。分布式存储系统的架构允许数据分散存储在多台独立的服务器上,统一对外提供服务,可   以最大化利用系统所有资源,最优化均衡系统所有负载,消除热点,获得一致的性能表现,大大提升存储群集计算处理能力。

2)系统扩展能力更强

同上分析,具体到某个固定时间点来购买单颗不同型号的处理器,所购买的处理器性   能越高,所要付出的成本开销就越大,性价比就越低。即在一个确定的时间点,通过升级   硬件来提升性能会越来越不划算,简单地依靠计算能力的 scaleup来提升存储系统 I/O处理能力并非明智之举。分布式存储系统的 scaleout特性,允许存储系统纳管更多的服务器, 且随着纳管服务器数量的增加,存储系统的容量及性能可获得近似线性地提升,为存储系   统的容量扩展以及性能扩展提供可靠的技术保障。

3)系统稳定性更可靠

若采用单机系统,服务器一旦出现问题,那么系统就完全不能使用,无法满足生产环   境高可靠的需求。传统集中式存储的负载呈现出高度的不均衡性,即同一镜像的数据通常   分布在同一磁盘托架中,若控制器出现故障,存储对外服务性能将严重降级,且数据重建   期间,存储系统中的部分磁盘会承受很大的负载压力,重建耗时长,业务经受严重风险。   分布式存储系统将数据分散存储到多台独立的服务器上,无单点故障,单盘损坏后,全部   磁盘参与数据重建,分摊系统压力,对存储系统整体性能输出影响较小,可以最大限度地   降低业务风险。

 

3.   选择分布式存储的必然性

 

云存储和大数据是构建在分布式存储之上的应用:移动终端的计算能力和存储空间终究是有上限的,且在多个设备之间资源共享的需求也愈发强烈,这使得云网盘、云相册之类的云存储应用迅速蹿红,而云存储的核心仍是其后端便于数据共享访问的大规模分布式存储系统;大数据则更进一步,不仅需要存储海量数据,还需要通过合适的计算框架或者工具对这些数据进行分析,抽取数据中的价值,如果没有分布式存储,海量数据便没有了生存之地,更谈不上对数据进行分析。

由此可见,分布式存储系统是云存储和大数据发展的必然要求,继而也是IT技术发展的必然要求。

相关文章
|
9天前
|
机器学习/深度学习 缓存 自然语言处理
深入解析Tiktokenizer:大语言模型中核心分词技术的原理与架构
Tiktokenizer 是一款现代分词工具,旨在高效、智能地将文本转换为机器可处理的离散单元(token)。它不仅超越了传统的空格分割和正则表达式匹配方法,还结合了上下文感知能力,适应复杂语言结构。Tiktokenizer 的核心特性包括自适应 token 分割、高效编码能力和出色的可扩展性,使其适用于从聊天机器人到大规模文本分析等多种应用场景。通过模块化设计,Tiktokenizer 确保了代码的可重用性和维护性,并在分词精度、处理效率和灵活性方面表现出色。此外,它支持多语言处理、表情符号识别和领域特定文本处理,能够应对各种复杂的文本输入需求。
46 6
深入解析Tiktokenizer:大语言模型中核心分词技术的原理与架构
|
10天前
|
消息中间件 人工智能 自然语言处理
基于 RocketMQ 事件驱动架构的 AI 应用实践
基于 RocketMQ 事件驱动架构的 AI 应用实践
|
14天前
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
14天前
|
监控 Kubernetes Cloud Native
基于阿里云容器服务Kubernetes版(ACK)的微服务架构设计与实践
本文介绍了如何基于阿里云容器服务Kubernetes版(ACK)设计和实现微服务架构。首先概述了微服务架构的优势与挑战,如模块化、可扩展性及技术多样性。接着详细描述了ACK的核心功能,包括集群管理、应用管理、网络与安全、监控与日志等。在设计基于ACK的微服务架构时,需考虑服务拆分、通信、发现与负载均衡、配置管理、监控与日志以及CI/CD等方面。通过一个电商应用案例,展示了用户服务、商品服务、订单服务和支付服务的具体部署步骤。最后总结了ACK为微服务架构提供的强大支持,帮助应对各种挑战,构建高效可靠的云原生应用。
|
1天前
|
人工智能 运维 监控
领先AI企业经验谈:探究AI分布式推理网络架构实践
当前,AI行业正处于快速发展的关键时期。继DeepSeek大放异彩之后,又一款备受瞩目的AI智能体产品Manus横空出世。Manus具备独立思考、规划和执行复杂任务的能力,其多智能体架构能够自主调用工具。在GAIA基准测试中,Manus的性能超越了OpenAI同层次的大模型,展现出卓越的技术实力。
|
27天前
|
存储 SQL 监控
转转平台IM系统架构设计与实践(二):详细设计与实现
以转转IM架构为起点,介绍IM相关组件以及组件间的关系;以IM登陆和发消息的数据流转为跑道,介绍IM静态数据结构、登陆和发消息时的动态数据变化;以IM常见问题为风景,介绍保证IM实时性、可靠性、一致性的一般方案;以高可用、高并发为终点,介绍保证IM系统稳定及性能的小技巧。
33 6
|
1月前
|
存储 SQL 缓存
MySQL原理简介—2.InnoDB架构原理和执行流程
本文介绍了MySQL中更新语句的执行流程及其背后的机制,主要包括: 1. **更新语句的执行流程**:从SQL解析到执行器调用InnoDB存储引擎接口。 2. **Buffer Pool缓冲池**:缓存磁盘数据,减少磁盘I/O。 3. **Undo日志**:记录更新前的数据,支持事务回滚。 4. **Redo日志**:确保事务持久性,防止宕机导致的数据丢失。 5. **Binlog日志**:记录逻辑操作,用于数据恢复和主从复制。 6. **事务提交机制**:包括redo日志和binlog日志的刷盘策略,确保数据一致性。 7. **后台IO线程**:将内存中的脏数据异步刷入磁盘。
|
2月前
|
存储 缓存 关系型数据库
社交软件红包技术解密(六):微信红包系统的存储层架构演进实践
微信红包本质是小额资金在用户帐户流转,有发、抢、拆三大步骤。在这个过程中对事务有高要求,所以订单最终要基于传统的RDBMS,这方面是它的强项,最终订单的存储使用互联网行业最通用的MySQL数据库。支持事务、成熟稳定,我们的团队在MySQL上有长期技术积累。但是传统数据库的扩展性有局限,需要通过架构解决。
79 18
|
13天前
|
监控 Cloud Native Java
基于阿里云容器服务(ACK)的微服务架构设计与实践
本文介绍如何利用阿里云容器服务Kubernetes版(ACK)构建高可用、可扩展的微服务架构。通过电商平台案例,展示基于Java(Spring Boot)、Docker、Nacos等技术的开发、容器化、部署流程,涵盖服务注册、API网关、监控日志及性能优化实践,帮助企业实现云原生转型。
|
2月前
|
Java 网络安全 开发工具
Git进阶笔记系列(01)Git核心架构原理 | 常用命令实战集合
通过本文,读者可以深入了解Git的核心概念和实际操作技巧,提升版本管理能力。

热门文章

最新文章