下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

软件设计:高可用+可伸缩存储方案

作者:JaxYoun     来源: https://www.cnblogs.com/JaxYoun/p/12336099.html点击数:776发布时间: 2020-04-11 21:24:23

标签: RAIDHadoop软件设计

  Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。

  HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的。HDFS在最开始是作为ApacheNutch搜索引擎项目的基础架构而开发的。HDFS是ApacheHadoopCore项目的一部分。

  高可用+可伸缩存储方案

  1满足高可用,唯一的办法是副本镜像方案。

  2满足可伸缩,唯一的办法是分片方案。

  3业界实践证明,先将全量数据分片,再对分片做多副本镜像这样的组合方案,在资源利用率、可用性、伸缩性各方面都很均衡。如HDFS、RedisCluster、RocketMQ等都是采用这种组合方案来存储数据的。

  4这种思想在存储领域是广泛存在的,不光在软件层面,在存储硬件层面也采用了类似的解决方案,代表方案是冗余磁盘阵列——RAID

  Raid0是多个磁盘线性串联,形成对全量存储空间的分片,仅满足弹性伸缩;

  Raid1则是让多个磁盘形成主备实现冗余,仅满足高可用;

  Raid10则是结合以上二者实现高可用+弹性伸缩。

  HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(highthroughput)来访问应用程序的数据,适合那些有着超大数据集(largedataset)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以实现流的形式访问(streamingAccess)文件系统中的数据。

赞(8)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程