zoukankan      html  css  js  c++  java
  • linux基础学习-16.2-磁盘结构-接口-详细组成

    一、磁盘外部结构

    IDE磁盘 {#ide磁盘}

    SATA接口 {#sata接口}

    pci-e 接口 {#pci-e-接口}

    正面 {#正面}

    背面 {#背面}

    2、磁盘作用

    存放程序和数据

    3、磁盘厂家

    西部数据、希捷、三星

    4、磁盘分类

    机械(SAS>SATA>IDE)

    固态磁盘(Solid State Drive、IDE FLASH DISK)SSD

    固态磁盘有两种:

    基于闪存(FLASH芯片)的固态磁盘

    基于DRAM的固态磁盘

    硬盘类型:机械硬盘(ide sata sas scsi) 固态硬盘(sata pci-e m.2)

    5、控制电路板

    大多数的控制电路板都采用贴片式焊接,包括主轴调速电路、磁头驱动与伺服定位电路、读写电路、控制与接口电路等。在电路板上还有一块ROM芯片,里面固化的程序可以进行磁盘的初始化,执行加电和启动主轴电机,加电初始寻道、定位以及故障检测等。在电路板上还安装有容量不等的高速数据缓存芯片(计算机世界缓存无处不在)

    SLC(Single Layer Cell 单层单元)和 MLC(Multi-Level Cell 多层单元)。SLC的特点是成本高、容量小、但是速度快,而MLC的特点是容量大成本低,但是速度慢。MLC的每个单元是2bit的,相对于SLC来说整整多了一倍。不过,由于每个MLC存储单元中存放的资料较多,结构相对复杂,出错的几率会增加,必须进行错误修正,这个动作导致其性能大幅落后于结构简单的SLC闪存。此外,SLC闪存的优点是复写次数高达100000次,比MLC闪存高10倍。此外,为了保证MLC的寿命,控制芯片都校验和智能磨损平衡技术算法,使得每个存储单元的写入次数可以平均分摊,达到100万小时故障时隔时间(MTBF)

    6、缓存和缓冲

    1)linux系统的特性是将系统不用的物理内存作为缓存区和缓冲区使用

    2)buffer为写入缓冲区,sync将缓冲区数据写入磁盘

    3)cache为读取数据的缓存区

    4)机械磁盘读写都太慢了,所以都使用缓冲和缓存技术

    5)门户网站都会用缓存技术,让用户写入读取尽可能不接触磁盘,或者说把用户的请求尽可能往前推

    7、光纤通道

    光纤通道(Fibre Channel)和SCSI接口一样光纤通道最初也不是为磁盘设计开发的接口技术,是专门为网络系统设计的,但随着存储系统对速度的需求,才逐渐应用到磁盘系统中。

    光纤通道磁盘是为提高多磁盘存储系统的速度和灵活性才开发的,它的出现大大提高了多磁盘系统的通信速度。光纤通道的主要特性有:热插拔性、高速带宽、远程连接、连接设备数量大等

    光纤通道是为在像服务器这样的多磁盘系统环境而设计,能满足高端工作站、服务器、海量存储子网络、外设间通过集线器、交换机和点对点连接进行双向、串行数据通讯等系统对高数据传输率的要求

    8、生产工作中服务器选型

    DELL,HP,IBM等,其中DELL,HP是互联网公司的主流服务器,这两个品牌的服务器综合的性价比比较高。百度很多用IBM的服务器

    9、企业生产工作中磁盘选型

    当前服务器市场:主流磁盘为SAS、SATA、SSD磁盘

    10、企业级SAS硬盘(默认)

    企业里常见的SAS硬盘是15000转/分。当前主流300G、600G、1000G,从具体的业务需求及性价比考虑,工作中多用300-600G的SAS硬盘

    一般选6_300G 6_600G 单盘容量不要太大,除非纯备份

    用途:用于提供生产线上(工作环境 线上环境)的普通对外提供服务的业务服务器

    例如:生产线上的数据库业务、存储业务、图片业务及相关高并发业务(web http,cache服务),

    总的来说,如果没有特殊业务需求,SAS磁盘是生产环境首选的磁盘配置

    11、企业级SATA硬盘

    企业级SATA硬盘,7200-10000转/分,常见的容量为1T和2T,4T,6T, 优点是经济实惠容量大,从具体的业务需求及性价比考虑,在工作中多用SATA磁盘做线下不提供服务的数据存储或者并发业务访问不是很大的业务应用,比如站点程序及数据库、图片的线下备份等

    特性:容量性价比高,一般2T的SATA磁盘比较好

    磁盘选购小结:

    1)线上的业务,用SAS磁盘。

    2)线下的业务,用SATA磁盘,磁带库。

    3)线上高并发、小容量(很多人都想看的图片)的业务,SSD磁盘。

    4)成本思想:根据数据的访问热度,智能分析分层存储。SATA+SSD

    http://oldboy.blog.51cto.com/2561410/926983/

    12、 各种类型磁盘比较

    13、企业案例

    1、极端方法-用于门户非核心 1、快 2、可能丢数据

    门户极端案例:高并发,大数据,会把数据写到内存,然后再定时或者定量写到磁盘,

    最终还是会加载到内存

    特点:a、高并发的写入性能高 b、可能会丢失一部分在内存中还没有来得及存入磁盘的数据

    2、常规方法:用于中小企业 1、低性能 2、data不丢

    二、磁盘内部结构

    磁盘的内部结构主要包括:盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分。所有的盘片都固定在一个旋转轴上,这个轴及盘片主轴。而所有的盘片之间是平行的,在每个盘片(一个盘片两个盘面)的每个存储面上都有一个磁头,磁头与盘片之间的距离比头发丝的直径还小很多倍。所有的磁头(一个有效盘面就有一个磁头)连在一个磁头控制器上,由磁头控制器负责各个磁头的运动。磁头可沿盘片的半径方向做径向运动(就是沿着半径由圆心到圆周线做直线运动),而盘片以每分钟数千转的速度在高速旋转,这样磁头就能对盘片上的指定位置进行数据的读写。磁盘是非常精密的设备,震动、灰尘等是磁盘损坏的重要原因,所以磁盘需要密封,并且防止剧烈震动。

    1、 磁头组件

    2、磁头驱动

    寻道是移动磁头

    磁盘读取数据的工作原理是利用特定的磁粒子的极性来记录数据。磁头在读取数据时,

    将磁粒子的不同极性转换成不同的电脉冲信号,再利用数据转换器将这些原始信号变成

    电脑可以使用的数据,写的操作正好与此相反

    3、磁盘片

    盘片是磁盘存储数据的真正载体,磁盘盘片大多采用金属薄膜材料

    磁盘主轴的转数是衡量磁盘读写性能的重要参数之一

    磁盘的每个盘片的每个有效盘面都会有一个读写磁头(磁头数=盘片个数*2)

    “0”磁道非常重要,系统的引导程序就在0磁头0磁道1扇区的前446Byte

    4、磁盘的盘面

    磁盘的每一个盘片都有两个盘面,一般来说,每个盘面都可以存储数据,成为

    有效盘面

    5、磁盘的磁道

    磁盘在格式化时被分成许多同心圆,同心圆的轨迹就是磁道

    磁道由盘面从外向内依次从0开始顺序编号

    磁盘的每一个盘面一般都有300~1024 个磁道

    6、磁盘的扇区

    操作系统是以扇区为单位将信息存储在磁盘上的,一般情况下每个扇区大小为512B

    三维地址:磁头(盘片)、磁道(柱面号)、扇区号

    7、磁道柱面扇区总结

    1、一块磁盘有2-14个盘片,每个盘片有两个面,每个面对应一个读写磁头,

    用磁盘头号来区分盘面,即盘面数就是磁头数,盘片数*2=磁头数(盘面数)

    2、不同盘面的磁道被划分为多个扇区,每个区域就是一个扇区(Sector)

    3、同一个盘面,以盘片中心为圆心,每个不同半径的圆形轨迹就是一个 磁道(Track)

    4、不同盘面相同半径的磁道组成一个圆柱面就是柱面(Cylinder)

    5、一个柱面包含多个磁道(这些磁道半径相同),一个磁道包含多个扇区

    6、数据信息记录可表示为:某磁头、某(磁道)柱面、某扇区

    磁道:每个盘片有两个面,都可记录信息。盘片表面以盘片中心为圆心,用于记录数据的不同半径的

    圆形磁化轨迹为磁道。磁化轨迹是磁化区域,看不见

    扇区:盘面由圆心向四周画直线,不同的磁道被直线分成许多扇形的区域,

    每个弧形区域叫做扇区,每个扇区大小一般为512B

    柱面:磁盘中,不同的盘片(或盘面)相同半径的磁道轨迹从上到下组成的圆柱形

    8、磁盘相关名词

    9、磁盘接口类型

    IDE、SATA、SCSI、光纤通道

    IDE 早期的家用,淘汰

    SCSI 早期的服务器领域

    SATA 流行的家用领域

    SAS 流行的服务器领域

    FC 高端服务器

    10、SSD固态硬盘接口类型

    1)SATA接口:SATA SATA2 SATA3.0

    2)PATA(IDE接口):IDE44PIN IDE40PIN

    3)PCI-E 接口:mSATA m.2(ngff) PCIE(IDE) PCIE(SATA)ZIF:ZIF接口等

    11、选磁盘

    企业生产环境主流磁盘的相关信息对比:

    企业生产场景普及程度:SAS>SATA>SSD

    单位容量对比性能和价格:SSD>SAS>SATA(一块SSD和一块SATA)

    单位价格购买磁盘容量:SATA>SAS>SSD

    SSD固态磁盘主流接口类型分为:

    1)SATA接口:SATA SATA2 SATA3.0

    2)PATA(IDE接口):IDE44PIN IDE40PIN

    3)PCI-E接口:mSATA PCIE(IDE) PCIE(SATA)ZIF:ZIF接口等

    重要优势:随机存取速度,功耗,防震,重量方面优势很大,特别是存取性能。 {#重要优势:随机存取速度,功耗,防震,重量方面优势很大,特别是存取性能。}
    重要缺点:容量、价格、写寿命,数据恢复难。 {#重要缺点:容量、价格、写寿命,数据恢复难。}

    采购磁盘

    1、主轴转数:5400/7200/10000/15000RPM

    2、接口:sata/sas/scsi/ide/pci-e

    3、读写更灵敏的磁头

    12、SSD固态磁盘与传统机械磁盘优劣势对比

    13、企业生产工作中磁盘选型

    1)当前服务器市场:主流磁盘为SAS、SATA、SSD

    企业级SAS方案(默认):

    企业里常见的SAS硬盘是15000转/分(这里是主轴的转数)当前主流300G、600G、1000G,

    从具体的业务需求及性价比考虑,老男孩老师在工作中多用300-600G的SAS硬盘

    一般选6*300G,6*600G 单盘容量不要太大,除非纯备份

    用途:用于提供生产线上的普通对外提供服务的业务服务器

    例如:生产线上的数据库业务、存储业务、图片业务及相关高并发业务

    (web http cache服务),总的来说,如果没有特殊业务需求,SAS磁盘是生产

    环境首选的磁盘配置

    2)企业级SATA硬盘:

    企业级SATA硬盘,7200-10000转/分,常见的容量为1T和2T,4T,6T,优点是

    经济实惠,容量大,从具体的业务需求及性价比考虑,老男孩老师在工作中多用

    SATA磁盘做线下不提供服务的数据存储或者并发业务访问不是很大的业务

    比如,站点程序及数据库,图片的线下备份等

    特性:容量性价比高,一般2T的SATA磁盘交接

    3)SSD固态电子盘

    特点:容量小,价格贵,速度快。 一般用于数据量小并且有超大规模高并发的业务

    (这不是唯一的办法,还可以通过磁盘加内存缓存的技术方式解决这个大规模高并发的问题)

    百度,腾讯,360核心业务都会采用SSD磁盘,应用层也必须已经做了各种缓存

    特别提示:

    大公司如taobao,某些业务可能会根据数据的热度来综合使用分层存储,以达到性价比

    最佳的情况。800SSD+500GSATA

    14、磁盘选购小结:

    1)线上的业务,用SAS磁盘

    2)线下的业务,用SATA磁盘,磁带库

    3)线上高并发、小容量的业务,SSD

    4)思想:根据数据的访问热度,智能分析分层存储 SATA +SSD

    15、淘宝网CDN缓存对象分级存储策略案例

    提出问题:

    在存储数据中,18KB以下的对象数量占总数量的80%,而其存储量占总量不到40%;同时,80%经常被访问的对象所占用的存储空间不到总量的20%。

    分析问题:

    以上的问题意味着“热点数据”(即访问频次高的内容)需要更快的性能,而占的空间并不大,而“冷数据”(访问频次低的内容)所需存储量很大,对性能要求不需要高。

    解决问题:

    因此,服务器引入分层存储机制,单台服务器(实际会多台)的磁盘可由一块80GB的SSD磁盘和两块500GB的SATA盘组成。然后把“热数据”存放在SSD盘上,“冷数据”存放在SATA盘上,冷热数据可以动态调度,从而兼顾性能、容量与成本。另:分层存储调度软件由淘宝开发。

    上面的策略是高效,低成本方案,这是我们运维工作需要重视的,实际工作中不可能不考虑成本,而无限制的去提升性能。

    一般来说,一块磁盘有一个到数个盘片不等,其中每个盘片的有效盘面对应一个读写磁头,

    从上往下从0开始依次编号,不同的磁盘盘面在逻辑上被划分为磁道、柱面以及扇区,

    一般在出厂时就设定好了

    16、相关命令

    sync 把内存中的数据刷到磁盘

    [root@oldboy ~]# dd if=/dev/sda of=mbr.bin bs=512 count=1 {#rootoldboy--dd-ifdevsda-ofmbrbin-bs512-count1}

    记录了1+0 的读入

    记录了1+0 的写出

    512字节(512 B)已复制,0.000264112 秒,1.9 MB/秒

    [root@oldboy ~]# ll mbr.bin

    -rw-r--r-- 1 root root 512 4月 24 17:49 mbr.bin

    [root@oldboy ~]# free -m

    total used free shared buffers cached

    Mem: 988 140 848 0 24 36

    -/+ buffers/cache: 79 909

    Swap: 1999 0 1999

    提示:

    1)linux系统的特性是将系统不用的物理内存缓存起来,因此,848不是系统的真实内存

    2)系统真正系统内存为909

    3)buffer为写入缓冲区,sync将缓存区数据写入磁盘,cache为读出缓存

    4)cache为读取数据的缓存区

    5)硬盘是机械的,无论是写入还是读取都太慢了,所以读取和写入都是用缓存及缓冲技术

    6)门户架构网站都会用缓存技术,来让用户写入读取尽可能不接触磁盘

    od 查看二进制文件

    partprobe /dev/sdb 通知内核

    mkfs.ext4 /dev/sdb1

    tune2fs -c -1 /dev/sdb1 不备份

    mount /dev/sdb1 /mnt

    三、磁盘读写原理

    磁道数=柱面数 {#磁道数柱面数}

    1、 磁盘是按照柱面为单位读写数据

    先读取同一个盘面的某一个磁道,读完之后,如果数据没有读完,磁头也不会切换其他

    磁道,而是选择切换磁头,读取下一个盘面的同半径的磁道,直到所有盘面的相同半径

    的磁道读取完成之后,如果数据还没有读写完,才会切换其他不同半径的磁道,

    这个切换磁道的过程称为寻道

    2、不同磁头间的切换是电子切换

    而不同磁道间切换需要磁头做径向运动,这个径运动需要步进电机调节,这个动作是机械的切换

    磁头寻道是机械运动,切换磁头是电子切换

    四、磁盘容量

    Disk /dev/sda: 10.7 GB, 10737418240 bytes

    255 heads, 63 sectors/track, 1305 cylinders

    Units = cylinders of 16065 * 512 = 8225280 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    Disk identifier: 0x00044026

    第一种方法:

    磁盘容量=512*扇区数*磁头数*磁道数(柱面数)

    [root@oldboy ~]# echo "scale=2;(512*63*1305*255)/1000000000" |bc

    10.73

    第二种方法:

    磁盘容量=柱面大小*柱面数(磁道数)

    [root@oldboy ~]# echo "scale=2;(8225280*1305)/1000000000" |bc

    10.73

    [root@oldboy ~]# find /var/ |xargs ls -ld 2>/dev/null|sort -nk2|tail -1

    -rw-r--r--. 512 root root 6 3月 6 16:31 /var/lib/yum/yumdb/z/b8019061884a679c3b9b867b44c7b9c64182240d-zip-3.0-1.el6-x86_64/checksum_type

    练习题:

    1、磁盘的分类

    2、叙述磁盘的内部结构

    3、企业购买磁盘应考虑哪些因素?

    4、磁盘相关的名词

    5、磁盘的读写原理

    6、淘宝网CDN缓存对象分级存储策略案例

  • 相关阅读:
    解决Linux ssh登录马上退出问题
    FineReport实线java报表填报录入的效果图
    CCEditBox/CCEditBoxImplMac
    Android图片异步载入框架Android-Universal-Image-Loader
    HYAppFrame(WinForm框架源代码)安装部署指南
    ASP.NET Web Api 2 接口API文档美化之Swagger
    Android OTA在线升级一(架构分析)【转】
    Android进程间通信(IPC)机制Binder简要介绍和学习计划【转】
    Linux内核源码中的likely和unlikely释疑【转】
    Android蓝牙串口通讯【转】
  • 原文地址:https://www.cnblogs.com/Klanti/p/9143554.html
Copyright © 2011-2022 走看看