存储技术架构演进

一. 演进过程

        存储技术架构的演进主要是从集中式到分布式的一种呈现,集中式存储模式凭借其在稳定性和可靠性方面的优势成为许多业务数据库的数据存储首选,顾名思义,集中式存储主要体现在集中性,一套集中式管理的存储系统,但不是只单一的服务器,而是一套系统下多个服务器组成的服务,主要包括机头(控制器)、磁盘列阵(JBOD)和交换机、管理设备等,数据统一通过机头位置进入。
        随着业务数据规模逐步变大,尤其是互联网方面的爆发式增长,同时业务需求也变得多样化,传统的集中式存储系统已经满足不了业务的存储和高并发请求需求,分布式存储系统应运而生了。分布式的主要思想是将数据存储和请求分布到不同的数据节点上,可以进行横向扩展解决数据读写性能瓶颈问题,通过一定规则计算存储位置,客户端直接连接存储位置节点进行读写操作。概括来说:分布式存储系统是一种可扩展的系统架构,利用多台服务器分担存储负荷,提高了系统的可靠性、可用性和存取效率,还易于扩展。

二. 分布式存储系统

        集中式存储的数据库,比较典型的主要有Oracle、Sqlserver等。分布式存储系统可以根据其数据模型、访问模式和设计目标等因素划分为不同的类型。从应用场景角度来划分,比如有分布式文件系统,典型的是hadoop生态的hdfs文件系统,分布式数据库方面比如说阿里的OceanBase,然后分布式块存储主要有Ceph RBD,分布式对象存储主要有amazon的S3,然后还有分布式KV存储,比如说HBase等等。

        以上介绍的多种用途的分布式存储系统,底层应用的架构模式无外乎这三种:第一种是中心控制节点架构,也即Master-Slave架构模式,由主服务节点控制和管理,从节点进行数据存储等,比如说HDFS就是采用这样一种架构。第二种是基于计算模式的完全无中心架构,典型的代表是Ceph。第三种是基于一执行hash的完全无中心架构,典型的代表是Swift。

三. 架构对比

        集中式存储主要优势是安全可靠性高,管理简便、方便迁移等。弱点也比较明显,扩展性性差,高并发处理弱。主要适用于对数据安全性和一致性要求较高的场景,比如说企业中心化数据管理等。

        分布式存储主要优势是扩展性强, 支持高并发请求。弱点是数据冗余,数据一致性问题等。主要适用于需要处理大规模数据集和实现高可用的场景,比如说大数据分析、云存储服务等。

四. 分布式存储面临的挑战

        分布式存储面临的挑战主要有四个方面,第一个是海量小文件场景的挑战,大量小文件对元数据管理、存储效率、访问性能方面带来的挑战。第二个是高并发低延迟场景的挑战,很多场景要求要更加实时的传输数据和高效处理数据。第三个是数据安全可靠性方面的要求。第四个是降本增效、节能减排方面的要求。详细内容如下图所示:

五. 总结

        和传统的集中式系统相比,分布式系统的整体性价比更高,同时凭借其扩展性,可以很好的满足大规模数据存储和处理场景的需求,可以很好的解决高并发场景下性能瓶颈问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/357126.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

day35WEB 攻防-通用漏洞XSS 跨站反射存储DOMBeef-XSS

目录 一,XSS 跨站-原理&分类&手法&探针 1、原理 2、分类 3、危害 二,反射型XSS 1,案例演示 三,存储型XSS 1,案例演示 四,DOM 型XSS 五,XSS 利用环境-XSS 平台&Beef-XS…

【Linux】压缩脚本、报警脚本

一、压缩搅拌 要求: 写一个脚本,完成如下功能 传递一个参数给脚本,此参数为gzip、bzip2或者xz三者之一; (1) 如果参数1的值为gzip,则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc…

美国将限制中国,使用Azure、AWS等云,训练AI大模型

1月29日,美国商务部在Federal Register(联邦公报)正式公布了,《采取额外措施应对与重大恶意网络行为相关的国家紧急状态》提案。 该提案明确要求美国IaaS(云服务)厂商在提供云服务时,要验证外国…

前端框架---Vue2学习教程(上)

从HTML到现在一路跟过来的小伙伴们,坚持固然不容易,但我相信大家已经学到了不少,那么我们开始马不停蹄的进入前端的框架吧,下面讲的是Vue2,大家继续加油鸭!!!! Vue2 Vu…

记录一次腾讯云服务器部署宝塔

一、查看是否安装 宝塔面板 bt 14 1 已安装会列出宝塔登录地址; 否则-bash: bt: command not found; 下载及安装命令(这条是目前最新的宝塔安装命令) yum install -y wget && wget -O install.sh http://download.bt.cn/…

关于在Tkinter + Pillow图片叠加中出现的问题

这段时间我一直在尝试对多图层图片进行一个叠加的操作,想用tkinter实现出来,先看错误 这里我其实已经选择了图片,但是发现是ValueError,我尝试断点检测但是也无动于衷,因为设置变量检测的时候发现变量并没有错误&…

粒子群算法求解港口泊位调度问题(MATLAB代码)

粒子群算法(Particle Swarm Optimization,PSO)是一种基于群体智能的优化算法,它通过模拟鸟群或鱼群的行为来寻找最优解。在泊位调度问题中,目标是最小化所有船只在港时间的总和,而PSO算法可以帮助我们找到一…

腾讯云Linux(OpenCloudOS)安装tomcat9(9.0.85)

腾讯云Linux(OpenCloudOS)安装tomcat9 下载并上传 tomcat官网 https://tomcat.apache.org/download-90.cgi 下载完成后上传至自己想要放置的目录下 解压文件 输入tar -xzvf apache-tomcat-9.0.85.tar.gz解压文件,建议将解压后的文件重新命名为tomcat,方便后期进…

跟着pink老师前端入门教程-day13

品优购案例 一、品优购项目规划 1. 品优购项目整体介绍 项目名称:品优购 项目描述:品优购是一个电商网站,我们要完成 PC 端首页、列表页、注册页面的制作 2. 品优购项目学习目的 1. 电商类网站比较综合,里面需要大量的布…

com.alicp.jetcache.support.CacheEncodeException: Java Encode error 报错解决

目录 一、报错截图:二、报错原因三、解决方式 一、报错截图: Spring boot 整合 JetCache 使用Cached。报错如下: 二、报错原因 带有Cached注解的方法返回值对象没有实现序列化接口,如下图所示 三、解决方式 带有Cached注解的…

【docker】Docker-compose单机容器集群编排

一、Compose的相关知识 1. Compose的相关概念 Compose是单机编排容器集群或者是分布式服务容器的应用工具。通过Compose,可以使用YAML文件来配置应用程序的服务。然后,使用一个命令,就可以从配置中创建并启动所有服务。 Docker-Compose是一…

【AI_Design】Midjourney学习笔记

目录 后缀解析Promot合格使用prompt关键词描述 关键词化合作用关键词网站推荐 联合Chatgpt 后缀解析 –ar:宽高比设置–c:多样性设置(数值0-100,默认值0)–s:风格化设置(数值0-1000&#xff0c…

promethues基础概念

promethues是一个开源的系统监控以及报警系统,整个zabbix的功能,系统,网络,设备 promethues可以兼容网络和设置被,容器监控,告警系统,因为他和k8s是一个项目基金开发的产品,天生匹配…

大专生能不能学习鸿蒙开发?

目前安卓有2,000万的开发者。本科及以上学历占比为35%;iOS有2,400万开发者,本科及以上学历占比为40% 绝大多数的前端开发者都是大专及以下学历,在2023年华为开发者大会上余承东透露华为的开发者目前有200万,但鸿蒙开发者统计的数据…

ARCGIS PRO SDK 数据库属性域设置与获取

一、数据库创建属性域。 sdk3.1 以下的开发版本不支持,不能使用 Pro SDK 向域添加新的编码值,可以使用地理处理工具: 创建属性域 Dim va As IReadOnlyList(Of String) Dim gpResult As ArcGIS.Desktop.Core.Geoprocessing.IGPResult Dim env…

【深度学习:目标检测】深度学习中目标检测模型、用例和示例

【深度学习:目标检测】深度学习中目标检测模型、用例和示例 什么是物体检测?物体检测与图像分类物体检测与图像分割 计算机视觉中的目标检测物体检测的优点物体检测的缺点深度学习和目标检测人员检测 物体检测如何工作?一阶段与两阶段深度学习…

Kotlin快速入门系列6

Kotlin的接口与扩展 接口 与Java类似,Kotlin使用interface关键字定义接口,同时允许方法有默认实现: interface KtInterfaceTest {fun method()fun methodGo(){println("上面方法未实现,此方法已实现")} } 接口实现 …

npm ERR! path E:node_modules\node-sass

分析报错发现有关 python2 环境相关报错 解决办法:需要再电脑中安装python 2.X版本的环境 因为我本地电脑有python 3.9的环境,所以我使用 Anaconda安装python环境 1、安装 python 2.7 conda create -n py2 python2.72、激活虚拟环境 conda activate…

go-zero 统一返回

1、整体目录结构 2、全局处理主入口 package manageimport ("net/http""github.com/zeromicro/go-zero/rest/httpx" )type Body struct {Code int json:"code"Message string json:"message"Result interface{} jso…

Elastic Search的RestFul API入门:查询ES当前的情况cat和cluster

在我们使用 Elasticsearch 进行索引的增删改查的同时,有时候我们也需要查看集群的整体情况,这就需要用到 cat 和 cluster 这两个 API。 cat 和 cluster 是 Elasticsearch 中两个非常重要的 API,它们主要用于获取和管理集群以及节点的相关信息。 cat API 是一个强大且易用的…