前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >存储系统的那些事

存储系统的那些事

作者头像
企鹅号小编
发布于 2024-06-19 02:53:15
发布于 2024-06-19 02:53:15
1090
举报

存储系统,从其固有的任务,很难摆脱复杂系统的诅咒。无论是单次文件系统,还是C / S或B / S结构数据库存储中间件的兴起,还是当今最热的云存储服务,存储都非常复杂,而且越来越复杂。

存储为什么是复杂的,对于什么是存储来说说。存储这个词非常普通,存储+运算(操作)构成一个简单的计算机模型。简而言之,存储是负责维护计算系统状态的单位。在维护方面,我们有最简单的可靠性要求。文件系统如单一的时代,电力机器,程序故障,系统重启常规异常,文件系统必须正确处理,即使磁盘扇区损坏,文件系统也需要考虑尽量减少损失。对于大多数业务流程,您只需要关注业务流程的正常分支,在发生意外情况时,通常只是抛出一个错误,告诉用户:您不应该玩。但是对于存储系统,你需要把大部分的精力花在处理各种异常情况上,你应该相信,即使是这些混乱的、多样化的分支过程的错误,也是“业务逻辑”的正常存储系统。

在互联网时代,使用C / S或B / S结构,存储系统有一个新的指标:可用性。为了确保服务质量,用户不能看到的服务器程序必须在任何时候都保持在网上,最好是逻辑上说,他们不是停机时间(100%可用)。如何使服务器程序具有高可用性?答案是存储中间件。没有存储中间件,这意味着所有的业务流程,必须考虑每个步骤都是持续状态的一步,因此它们挂在另一个服务器(或重启)之后,知道在哪里工作,该做什么。但是,持久化(或存储)状态很麻烦,如果每个业务都独立实现,那么这个负担无疑是沉重的。但是如果有一个高可用性的存储中间件,服务器端业务程序简单地存储中间件更新状态和操作通过在同一时间开始为彼此做更多的业务应用程序实例和负载平衡,很容易实现业务逻辑。

因此,数据库等存储中间件的出现基本上是历史的必然。尽管数据库是通用的,但它绝不是唯一的存储中间件。例如,在业务中使用的富媒体(图片、视频、办公文档等),我们很少在数据库中存储,我们更经常把它们放在文件系统中。但是,在独立时代诞生的文件系统真的是存储这些富媒体数据的最佳场所吗?不,文件系统需要更改,因为:

1. 伸缩性。单机文件系统的第一个问题是单机容量有限,在存储规模超过一台机器可管理的时候,应该怎么办。

2. 性能瓶颈。通常,单机文件系统在文件数目达到临界点后,性能会快速下降。在4TB的大容量磁盘越来越普及的今天,这个临界点相当容易到达。

3. 可靠性要求。单机文件系统通常只是单副本的方案,但是今天单副本的存储早已无法满足业务的可靠性要求。数据需要有冗余(比较经典的做法是3副本),并且在磁盘损坏时及早修复丢失的数据,以避免所有的副本损坏造成数据丢失。

4. 可用性要求。单机文件系统通常只是单副本的方案,在该机器宕机后,数据就不可读取,也不可写入。

在分布式存储系统出现之前,一些应用程序采用了一些基于单一文件系统的改进版本。例如,将RAID5添加到单个文件系统中,以实现数据冗余,以解决单个文件系统的可靠性问题。假设RAID5数据修复时间为1天(实际上经常不能这样做,尤其是在业务系统自身压力较大的情况下,对RAID修复磁盘读写带宽受限),数据可靠性单一损失的方案约为100(即:可靠性是2,9)看起来?但你必须注意两种情况。一个是,你有一个更大的集群,你仍然使用相同的土壤方法,例如,你现在有100台这样的机器,然后你失去一年的数据。另一种情况是,如果实际的数据修复时间为3天,那么单台机器的可靠性将在4年内减少到数据的丢失,而在15天内将会损失100次。这个数字显然是不能接受的。

GuGe GFS是第一个被许多人阅读的分布式存储纸。本文建立了分布式存储系统中3个拷贝的状态。然后Hadoop引用本文来实现GFS - HDFS的开源版本。但是关于Hadoop的HDFS有很多误解。GFS的设计具有很强的业务背景,并被用作搜索引擎。HDFS更适合于日志存储和日志分析(数据挖掘),而不是存储大量的富媒体文件。因为:

1. HDFS 的 block 大小为 64M,如果文件不足 64M 也会占用 64M。而富媒体文件大部分仍然很小,比如图片常规尺寸在 100K 左右。有人可能会说我可以调小 block 的尺寸来适应,但这是不正确的做法,HDFS 的架构是为大文件而设计的,不可能简单通过调整 block 大小就可以满足海量小文件存储的需求。

2. HDFS 是单 Master 结构,这决定了它能够存储的元数据条目数有限,伸缩性存在问题。当然作为大文件日志型存储,这个瓶颈会非常晚才遇到;但是如果作为海量小文件的存储,这个瓶颈很快就会碰上。

3. HDFS 仍然沿用文件系统的 API 形式,比如它有目录这样的概念。在分布式系统中维护文件系统的目录树结构,会遭遇诸多难题。所以 HDFS 想把 Master 扩展为分布式的元数据集群并不容易。

本文来自企鹅号 - 纵横动力成都基地媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - 纵横动力成都基地媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
存储系统的那些事
存储系统从其与生俱来的使命来说,就难以摆脱复杂系统的魔咒。无论是从单机时代的文件系统,还是后来C/S或B/S结构下数据库这样的存储中间件兴起,还是如今炙手可热的云存储服务来说,存储都很复杂,而且是越来越复杂。   存储为什么会复杂,要从什么是存储谈起。存储这个词非常平凡,存储 + 计算(操作)就构成了一个朴素的计算机模型。简单来说,存储就是负责维持计算系统的状态的单元。从维持状态的角度,我们会有最朴素的可靠性要求。比如单机时代的文件系统,机器断电、程序故障、系统重启等常规的异常,文件系统必须可以正确
小小科
2018/05/02
1.5K0
带你了解文件系统架构的演变:从传统到分布式
随着信息技术的发展和存储需求的不断增长,文件系统架构也在不断演变。从传统的单机文件系统到现代的分布式文件系统,我们见证了文件系统在性能、可扩展性和容错性等方面的巨大进步。本文将带你了解文件系统架构的演变过程,探讨其中的关键技术和发展趋势。
人不走空
2024/02/21
3820
带你了解文件系统架构的演变:从传统到分布式
DeepSeek开源周 Day05:从3FS盘点分布式文件存储系统
今天是DeepSeek开源周的第五天,官方开源了一种高性能分布式文件系统Fire-Flyer File System,简称3FS,目的是解决人工智能训练和推理工作负载的挑战。
致Great
2025/03/01
8580
DeepSeek开源周 Day05:从3FS盘点分布式文件存储系统
100TB大数据存储方案
Hive Hbase 存储介质: https://www.zhihu.com/question/46392643?sort=created 请问,在家里攒一套 100TB-200TB 的存储有什么架构
全栈程序员站长
2022/11/08
1.4K0
常见开源分布式文件系统架构对比
文件系统是计算机中一个非常重要的组件,为存储设备提供一致的访问和管理方式。在不同的操作系统中,文件系统会有一些差别,但也有一些共性几十年都没怎么变化:
Juicedata
2021/12/10
1.3K0
常见开源分布式文件系统架构对比
分布式文件系统-HDFS
大数据技术主要要解决的问题的是大规模数据的计算处理问题,那么首先要解决的就是大规模数据的存储问题。大规模数据存储要解决的核心问题有三个方面:
王知无-import_bigdata
2019/04/24
1.4K0
分布式文件系统-HDFS
分布式文件系统设计,该从哪些方面考虑?
分布式文件系统是分布式领域的一个基础应用,其中最著名的毫无疑问是 HDFS/GFS。如今该领域已经趋向于成熟,但了解它的设计要点和思想,对我们将来面临类似场景 / 问题时,具有借鉴意义。并且,分布式文件系统并非只有 HDFS/GFS 这一种形态,在它之外,还有其他形态各异、各有千秋的产品形态,对它们的了解,也对扩展我们的视野有所俾益。本文试图分析和思考,在分布式文件系统领域,我们要解决哪些问题、有些什么样的方案、以及各自的选择依据。
芋道源码
2020/06/16
2.2K0
分布式文件系统设计,该从哪些方面考虑?
Hadoop RAID Node 调研
分布式文件系统主要用于解决海量数据存储的问题,如Goolge、Facebook等大型互联网企业都使用分布式文件系统作为数据存储的基础设施,并在其上构建很多服务,分布式文件系统通常采用三副本的策略来保证数据的可靠性,但随着应用数据量的不断膨胀,三副本策略为可靠性牺牲的存储空间也越来越大,如何在不降低数据可靠性的基础上,进一步降低存储空间成本? Facebook将erasure code应用到内部HDFS集群中,该方案使用erasure code代替传统的三副本策略,在保持集群可用性不变的情况下,节省了数PB的存储空间,Facebook的实现方案(HDFS RAID)目前已贡献给开源社区。
星哥玩云
2022/06/30
6980
Hadoop RAID Node 调研
图文并茂 RAID 技术全解 – RAID0、RAID1、RAID5、RAID100……
  RAID 技术相信大家都有接触过,尤其是服务器运维人员,RAID 概念很多,有时候会概念混淆。这篇文章为网络转载,写得相当不错,它对 RAID 技术的概念特征、基本原理、关键技术、各种等级和发展现状进行了全面的阐述,并为用户如何进行应用选择提供了基本原则,对于初学者应该有很大的帮助。
菲宇
2019/06/13
6.3K0
图文并茂 RAID 技术全解 – RAID0、RAID1、RAID5、RAID100……
HDFS 为何在大数据领域经久不衰?
HDFS是最早的大数据存储系统,存储着宝贵的数据资产,各种新算法、框架要想得到广泛使用,必须支持HDFS,才能获取已存储在里面的数据。所以大数据技术越发展,新技术越多,HDFS得到的支持越多,越离不开HDFS。HDFS也许不是最好的大数据存储技术,但依然是最重要的大数据存储技术。
JavaEdge
2022/04/06
3520
HDFS 为何在大数据领域经久不衰?
系统架构设计面试指南(02)-MQ和文件存储
冗余性是系统中复制关键组件的过程,旨在提高系统的可靠性或整体性能。它通常以备份或故障转移的形式存在。冗余性在系统中消除单点故障并在需要时提供备份时起着关键作用。例如,如果我们在生产中运行两个服务实例,并且其中一个实例失败,系统可以
JavaEdge
2024/01/03
2360
系统架构设计面试指南(02)-MQ和文件存储
新技术层出不穷,HDFS还是存储的王者吗?
Google大数据“三驾马车”的第一驾是GFS(Google 文件系统),而Hadoop的第一个产品是HDFS(Hadoop分布式文件系统),可以说分布式文件存储是分布式计算的基础,由此可见分布式文件存储的重要性。如果我们将大数据计算比作烹饪,那么数据就是食材,而Hadoop分布式文件系统HDFS就是烧菜的那口大锅。 厨师来来往往,食材进进出出,各种菜肴层出不穷,而不变的则是那口大锅,大数据也是如此。这些年来,各种计算框架、各种算法、各种应用场景不断推陈出新,让人眼花缭乱,但是大数据存储的王者依然是HDF
博文视点Broadview
2023/05/06
3180
新技术层出不穷,HDFS还是存储的王者吗?
云原生时代需要什么样的存储系统
本文介绍了目前云原生环境下,支持有状态应用的几种典型存储方案的特点,并对市场主流的云原生存储产品实际测试性能进行对比。
灵雀云
2021/07/15
7520
【重识云原生】第三章云存储第一节——分布式云存储总述
在了解什么是分布式存储之前,我们先来简单了解一下存储几十年来的大概历程。
江中散人_Jun
2022/04/11
2.4K0
【重识云原生】第三章云存储第一节——分布式云存储总述
爆火的分布式数据库到底是个啥?
TiDB为代表的分布式 DB的兴起赋予了关系型 DB一定程度的分布式特性。在这些分布式 DB中,数据分片及分布式事务,将是其内置的基础功能。业务开发人员只需要使用框架对外提供的JDBC 接口,就像在使用 MySOL等传统关系型 DB一样。shardingSphere 是一种分布式 DB中间件,它在提供标准化的数据分片解决方案之外,也实现了分布式事务和 DB治理功能。
JavaEdge
2023/08/09
2830
爆火的分布式数据库到底是个啥?
浅析三款大规模分布式文件系统架构设计
当提到文件系统,大部分人都很陌生。但我们每个人几乎每天都会使用到文件系统,比如大家打开 Windows、macOS 或者 Linux,不管是用资源管理器还是 Finder,都是在和文件系统打交道。如果大家有自己动手装过操作系统的话,第一次安装的时候一定会有一个步骤就是要格式化磁盘,格式化的时候就需要选择磁盘需要用哪个文件系统。
Juicedata
2023/03/11
7700
浅析三款大规模分布式文件系统架构设计
分布式文件系统实战,使用MinIO构建分布式文件系统!
随着文件数据的越来越多,传统的文件存储方式通过tomcat或nginx虚拟化的静态资源文件在单一的服务器节点内已经无法满足系统需求,也不利于文件的管理和维护,这就需要一个系统来管理多台计算机节点上的文件数据,这就是分布式文件系统。
架构师精进
2023/03/23
5K0
分布式文件系统实战,使用MinIO构建分布式文件系统!
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
大家好!我是Echo_Wish,今天我们来聊一聊一个大数据领域至关重要但又往往被忽视的主题——数据分布式存储。在大数据的时代,数据量的爆炸性增长迫使我们从存储架构的根本上进行思考。分布式存储的概念听起来有些复杂,但其实它并不神秘,只要我们理清它的基础逻辑和实践应用,便能够在海量数据面前立于不败之地。
Echo_Wish
2025/03/02
1370
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
盘点分布式文件存储系统____分布式文件存储系统简介
**分布式存储:**通过网络使用企业中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在企业的各个角落。
全栈程序员站长
2022/06/28
6.4K0
盘点分布式文件存储系统____分布式文件存储系统简介
大数据开发:分布式文件存储系统简介
在分布存储式存储技术体系当中,分布式文件存储是其中的分类之一,也是大数据架构当中常常用到的。得益于Hadoop的高人气,Hadoop原生的HDFS分布式文件系统,也广泛为人所知。但是分布式文件存储系统,并非只有HDFS。今天的大数据开发分享,我们就主要来讲讲常见的分布式文件存储系统。
成都加米谷大数据
2021/01/13
1.5K0
大数据开发:分布式文件存储系统简介
推荐阅读
相关推荐
存储系统的那些事
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档