zoukankan      html  css  js  c++  java
  • 架构师不得不了解的硬件知识

    概述

    什么是RAID? RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能数据冗余的技术。RAID 是一类多磁盘管理技术,其向主机环境提供了成本适中、数据可靠性高的高性能存储。

    RAID 中主要有三个关键概念和技术:镜像( Mirroring )数据条带( Data Stripping )数据校验( Data parity )

    镜像:将数据复制到多个磁盘,一方面可以提高可靠性,另一方面可并发从两个或多个副本读取数据来提高读性能。显而易见,镜像的写性能要稍低, 确保数据正确地写到多个磁盘需要更多的时间消耗。

    数据条带:将数据分片保存在多个不同的磁盘,多个数据分片共同组成一个完整数据副本,这与镜像的多个副本是不同的,它通常用于性能考虑。数据条带具有更高的并发粒度,当访问数据时,可以同时对位于不同磁盘上数据进行读写操作, 从而获得非常可观的 I/O 性能提升 。

    数据校验:利用冗余数据进行数据错误检测和修复,冗余数据通常采用海明码、异或操作等算法来计算获得。利用校验功能,可以很大程度上提高磁盘阵列的可靠性、鲁棒性和容错能力。不过,数据校验需要从多处读取数据并进行计算和对比,会影响系统性能。不同等级的 RAID 采用一个或多个以上的三种技术,来获得不同的数据可靠性、可用性和 I/O 性能。

    对于系统需要采用何种模式的 RAID ,需要在深入理解系统需求的前提下进行合理选择,综合评估可靠性、性能和成本来进行折中的选择。

    常见的RAID等级有:

    • 标准RAID RAID0 、 RAID1 、 RAID2 、 RAID3 、 RAID4 、 RAID5 、RAID6 七个等级定为标准的 RAID 等级

    • 混合RAID:RAID10、RAID50、RAID60...

    下面我们分别介绍一下各种RAID级别并做个简单对比。

    RAID0

    使用N块磁盘进行组合实现性能翻N倍的效果,写入数据会分成N部分进行,读取数据会从磁盘中组合起来读,这样就实现了读写性能翻倍。

    优点:使用RAID0 可以将磁盘空间利用率最大化,能达到100%;性能快,磁盘越多性能越强。

    缺点:没有数据保护,甚至比单盘的风险还大。任意坏了一块磁盘都会导致数据丢失。

    RAID 1

    RAID 1 中的磁盘互为镜像,写入的数据会存放N份,读取的时候可以从任意一块磁盘读取。实现了读性能翻倍,写性能与单盘一样的效果。

    优点:安全性依照阵列中的实体硬盘数量倍数成长。

    缺点:空间利用率低,是所有阵列中利用率最低的。

    RAID 5

    RAID5 既考虑了空间利用率又考虑了性能的提升,采用校验码的而非镜像的方式组合而成,RAID5 阵列需要至少3块磁盘。在上图中使用了4块磁盘组合而成,任意一份数据写入会被分成三个数据块+一个校验块分别放入4个盘,数据块与校验块之间交叉分布,最终每个盘上既有数据块又有校验块。读数据时A时从Disk 0 ,1 ,2 分别读取到A1,A2,A3然后组合成A;如果此时有一块磁盘比如Disk2 损坏,则会通过读取到的A1、A2+ 校验码算出A3,再组合生成数据A对外提供。RAID 5 可以容忍一块盘的损坏。

    优点:读的情况下是单盘数据的三倍;有一定的安全性,可以容忍损坏一块磁盘

    缺点:由于每次写数据都需要计算校验块,导致写性能下降;仅能容忍坏一块磁盘损坏

    RAID 6

    RAID6可以灵活设计数据库和校验块的比例,上图中被设计成3个数据块+2个校验块的组合,增加了数据可靠性。RAID 6在备份的数据场景使用较多,提供的数据可靠性比RAID 5要高很多。

    优点:容错硬盘数量比RAID5高

    缺点:运算量比RAID5大、空间利用率比RAID5低

    RAID 10

    首先把两块盘做镜像,再按照RAID0的方式组合,既实现了数据的冗余又实现了性能翻倍的效果。RAID 1+0多适用于数据库场景。

    RAID 50

    先做成RAID5的组再组合成RAID0,兼顾RAID5和RAID0的特性。

    RAID 60

    image.png

    先做成RAID6的组合再组合成RAID0,兼顾RAID6和RAID0的特性。

    各种组合之间的对比

    RAID级别冗余空间利用率读性能写性能最少磁盘数
    RAID0 100% *** *** 2
    RAID1 50% ** ** 2
    RAID5 67-94% *** * 3
    RAID6 50-88% ** * 4
    RAID10 50% ** ** 4
    RAID50 67-94% *** * 6
    RAID60 50-88% ** * 8

    好了,各位朋友们,本期的内容到此就全部结束啦,能看到这里的同学都是优秀的同学,下一个升职加薪的就是你了!
    如果觉得这篇文章对你有所帮助的话请扫描下面二维码加个关注。"转发" 加 "在看",养成好习惯!咱们下期再见!

    个人博客

  • 相关阅读:
    elasticsearch 中的Multi Match Query
    activiti 流程部署的各种方式
    elasticsearch 嵌套对象之嵌套类型
    elasticsearch Java High Level REST 相关操作封装
    elasticsearch 字段数据类型
    ubuntu 安装 docker
    elasticsearch 通过HTTP RESTful API 操作数据
    facenet 人脸识别(二)——创建人脸库搭建人脸识别系统
    POJ 3093 Margaritas(Kind of wine) on the River Walk (背包方案统计)
    墨卡托投影, GPS 坐标转像素, GPS 坐标转距离
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13295880.html
Copyright © 2011-2022 走看看