资讯详情

资讯详情

【分布式理论13】分布式存储:数据存储难题与解决之道

文章目录一、数据存储面临的问题二、RAID磁盘阵列的解决方案1. RAID概述2. RAID使用的技术3. RAID的代表性等级三、分布式存储的新思路1. 分布式存储背景与特点2. 分布式存储的组成要素一、数据存储面临的问题在单机系统时代当数据量不断增加、硬盘空间不够时最简单的解决办法就是扩大磁盘容量。然而随着数据量的增长磁盘读写操作的速度成为了限制系统性能的瓶颈。因此提升存储性能、提高数据的可靠性和可扩展性成为了系统设计的重要目标。在这个过程中磁盘阵列RAID技术、分布式存储以及扩展技术逐渐成为了应对挑战的解决方案。二、RAID磁盘阵列的解决方案1. RAID概述RAID独立磁盘冗余阵列是解决上述问题的早期探索。它由多个独立高性能磁盘驱动器构成磁盘子系统为主机环境提供成本适中、数据可靠性高的高性能存储能改善磁盘的存储容量、读写速度增强磁盘的可用性。2. RAID使用的技术镜像将数据复制到多个磁盘。这一方面提高了系统可靠性另一方面让数据读操作可并发进行从而提高读写性能。但写性能稍低因为要确保数据正确写入多个磁盘较耗时。数据条带把一整块数据分片存于多个不同磁盘空间。面对并发读写请求时可同时操作不同磁盘上的数据提升I/O性能。数据校验因镜像存储使同一份数据存于多个磁盘这种冗余存储有助于数据的错误检测和修复。冗余数据通常用海明码、异或操作等算法生成提高了RAID的可靠性和容错能力。3. RAID的代表性等级RAID0是一种无数据校验的数据条带化技术不提供冗余策略。它将整块数据分成多份存到不同磁盘访问时可并发执行IO操作充分利用总线带宽。RAID1完全实现镜像技术把数据集复制一份原数据集和副本分别存于两个磁盘磁盘空间利用率为50%。读取数据可从任一磁盘获取写入时响应时间受影响但大大提高了数据可靠性。RAID01和RAID10RAID01由RAID0和RAID1组合先进行条带化再镜像提高了读写效率和数据可靠性但磁盘利用率低。RAID10则是先镜像再条带从读写性能上和RAID01一样但出现磁盘故障时读性能优于RAID01安全性更强。虽然RAID通过增加磁盘数量提高了单机服务器的数据读写效率和可靠性但单机磁盘扩容有上限不足以应对数据爆发式增长带来的挑战。三、分布式存储的新思路1. 分布式存储背景与特点分布式存储属于集群水平扩展随着业务发展系统数据量和访问量剧增单机难以满足需求分布式集群存储便应运而生。它将数据分布在多台服务器节点上为大规模应用提供大容量、高性能、高可用、高扩展的存储服务。借鉴RAID的数据分片和副本技术分布式存储将数据按规律存储在不同服务器节点读写时也遵循相应规律。2. 分布式存储的组成要素数据的使用者也就是使用数据的用户可从分布式存储系统写入和读取数据。数据分为结构化数据如关系型数据库、半结构化数据如HTML、JSON、XML等和非结构化数据如文档、图片、视频等。数据的索引者在分布式系统中它负责找到数据读写的正确路径。由于数据集分布在不同服务器上需通过Hash算法、一致性Hash算法等找到数据。数据的存储者相当于容器将使用者产生的数据保存起来数据可存于磁盘或内存。结构化数据、半结构化数据、非结构化数据分别对应分布式数据库、分布式键值系统、分布式文件系统。索引者将使用者和存储者连接起来并作为数据存储的媒介。参考《分布式架构原理与实践-崔皓》
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →