未曾习艺先学礼,未曾学武先习德

当今磁盘都是温室磁盘,原理是一样的,高速转动的的盘,磁头做径向运动

当今磁盘的发展趋势: 体积更小、速度更快、容量更大、使用更安全

速度更快:

  1. 主轴转速: 10000/15000/M
  2. 接口: sata(家用) sas(企业) scsi/(淘汰) ide(淘汰)  FC/通道(高端服务器接口)

    比喻:

    sas 骡子, 新一代scsi技术,改善存储系统的效能、可用性和扩充性,支持热插拔

    sata 马

    scsi  驴

  3. 读取更灵敏的磁头

机械磁盘:

  SAS

  电机带动的磁盘,主流,服务器使用,内部为真空,一旦拆开,无法使用,由读写磁头、传动手臂、传动轴三部分组成,利用特定的磁粒子的极性,电磁感应现象,形成脉冲信号,通过磁头进行寻道,盘片,是存放数据的

磁盘主轴的转速是衡量磁盘读写性能的重要参数之一,如SAS/15000

接口的决定性作用,影响读取效率,茶壶煮饺子

抗震性较差

固态硬盘: 用固态电子存储芯片阵列而制成的磁盘

  SSD

优点: 随机读取速度,功耗,防震,重量方面优势很大,特别是读取性能

  缺点: 容量、价格、写寿命,数据难以恢复

企业应用:

  1. SAS硬盘, 15000转/分,主流 300G、600G、1000G

用途: 生产线上普通对外提供服务的业务服务器,一般选 6*300G, 6*600G

生产线上的数据库业务、存储业务、图片业务、并发业务

  1. SATA 7200-10000 转/分, 常见容量为 1 T 和 2T,4T,6T,优点经济实惠

硬盘选择小结

  1. 线上业务,用SAS磁盘
  2. 线下业务,用SATA磁盘,磁带库
  3. 线上高并发、小容量的业务,SSD磁盘
  4. 思想: 根据数据的访问热度,智能分析分层存储, SATA + SSD

特别注意: 不要用SATA磁盘做在线高并发服务的数据存储或数据库业务

企业血的教训: 某公司采用SATA做数据库的存储盘,导致数据库连续宕机一个月

5台SATA盘RAID5

解决: 重新买5台,把磁盘从SATA(RAID5) 换成SAS(RAID10)

  ssd固态电子盘,数据量小且并有超大规模高并发的业务,还可以通过磁盘加内存缓存的技术方式解决这个大规模并发的问题,如淘宝 80G SSD + 500G SATA

相关专业名词:

Disk       磁盘

Head      磁头

Sector    扇区

Track     磁道

Cylinder 柱面

Units      单元快

Block      数据块

Inode     索引节点

  一块磁盘,有一个或多个盘片,盘片逻辑上划分为磁道、柱面、以及扇区,磁盘不工作的时候,磁头靠近主轴接触盘片的表面,即线速度最小的地方,一块盘片两个面,盘面的个数等于磁头的个数

0磁道非常重要,系统的引导程序就在0柱面0磁道1扇区的前446bytes,总共512bytes,剩余的空间存放分区表

磁盘的盘面一般是用钕合金或玻璃做基片,盘面的面数等于磁头的个数

磁盘扇区,操作系统是以扇区为单位存储数据到磁盘上,每个扇区512bytes,存储数据的标识符和数据的内容

  盘面:

  

  扇面:

  

  柱面:

  

总结:

磁道: 磁盘上圆形轨迹

扇区: 磁道上扇形轨迹

柱面: 不同盘面,相同半径的磁道轨迹组成的圆柱

磁盘容量计算:

盘面大小 = 磁道大小 * 磁道数量

磁盘大小 = 盘面大小 * 磁头数

磁盘大小 = 磁道大小(512字节*扇区数) * 磁道数量 * 磁头数

磁盘读写数据的原理:

以柱面为单位进行数据的读取,假如有三块盘片,6个盘面,6个磁头,依次向下读取数据,当这个柱面读取完了,还是没取出数据,将不得不寻道,多个磁头都是同向同时位移到同一个半径的磁道,然而不同的磁头间的切换是电子切换,而磁道间切换是机械切换,做径向运动,效率低,读和写是一样的原理操作

相关命令:

fdisk -l    # 查看分区信息

free -m 查看内存使用情况

free -hm    # 以M为单位人性显示内存使用情况

# man free 查看帮助

  

  各字段对应的意思

  

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

  2. buffers 为写入缓冲区,sync将缓冲区数据写入磁盘

  3. 磁盘是机械的,无论是读取还是写入,都是很慢,所以读取和写入都是用了缓存技术

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

sync       # 把 buffer 刷新写入磁盘,防止关机丢数据

 

磁盘体系总结

  1. SSD用于相对小数据高并发业务,SAS磁盘15000转/分 应用于企业,磁盘大小为主流 300G 600G 1000G,SATA用于线下备份

  2. 磁盘的0柱面0磁道1扇区内容非常重要,保存着MBR引导信息占446bytes和磁盘分区表占64bytes

  3. 数据库服务使用SAS磁盘,做RAID10,安全且读写速度较快

  4. 利用缓存技术,将用户访问的数据放到内存中

  5. 用 sync命令清空文件系统缓冲区,强制写入磁盘,重启或关闭系统使用

  6. 磁盘读写是以柱面为单位,从开始写的柱面中一个磁道开始,一直往下,直至该柱面最后一个磁道写满了,然后寻道,重新开始以上步骤

  7. 系统读写数据以扇面为单位,一个扇面512k

linux_磁盘体系的更多相关文章

  1. (转)Linxu磁盘体系知识介绍及磁盘介绍

    Linxu磁盘体系知识介绍及磁盘介绍 系统管理 / 2017-01-14 / 0 条评论 / 浴春风 Linu磁盘设备基础知识指南磁盘速度快具备的条件: 1)主轴的转速5400/7200/10000/ ...

  2. Linux_磁盘管理

    一.linux磁盘管理 命令:fdisk -l brwx-rw--- 其中b(占位符)代表block,块设备文件 sda,sdb... --> 硬盘 其中sda1,sda2..sdb1,sdb2 ...

  3. linux_磁盘分区

    分区并没有数据内容只是改变分区表,保存在0磁头,0磁道1扇区除MBR引导后64bytes中,只能有4个组分区,4个以上要一个扩展分区 引导MBR,保存在446字节中 磁盘想要存放数据,首先要分区,可以 ...

  4. Linux_磁盘分布_以及分区

    运用 Xshell  工具链接到你的服务器 1.     Fdisk -l    这是查看磁盘挂载列表情况 2.      Fdisk /dev/vdc   这是分区这个磁盘   m    是查看信息 ...

  5. linux_磁盘挂载

    mount -o loop 磁盘的位置 想要挂载的位置 磁盘卸载 umont 挂载的磁盘的详细位置 注意:磁盘卸载时你当前所在的路径不要在磁盘挂载的路径,应该其他与磁盘挂载路径不相干的路径下即可

  6. Linux_磁盘分区、挂载、查看

    一.挂载 1.查看设备的挂载情况 lsblk或lsblk -f 2.挂载 需求 :给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk 说明:我们以增加一块硬盘为例来熟悉一下磁 ...

  7. Linux_磁盘管理理论概述

    一.磁盘阵列 1.什么是磁盘阵列? 1️⃣:磁盘整列就是将多块独立的磁盘组合到一起,形成容量大的磁盘组. 2️⃣:将相同的数据存放到不多个的磁盘的不同位置 2.RAID0 1️⃣:RAID0是磁盘整列 ...

  8. [转载]DB2与ORACLE、MYSQL比较2

    原文地址:DB2与ORACLE.MYSQL比较2作者:欣颖 4.2 Oracle9i  Oracle的产品战略是每12到18个月发布一个主要版本.主要发行版本所遵循的命名战略在PC领域中更为常见,它不 ...

  9. oracle与DB2

    1.体系结构,DB2的实例和数据库分开的做法,我个人还是比较喜欢的,因为实例可以创建多个,数据库的恢复直接恢复到实例下就可以了,相对ORACLE简单多了. 2.管理工具,DB2的管理工具做得太简陋了, ...

随机推荐

  1. Java之CountDownLatch ---控制线程执行顺序

    一,类介绍 这是java.util.concurrent包里的一个同步辅助类,它有两个主要的常用方法  countDown()方法以及await()方法.在完成一组正在其他线程中执行的操作之前,它允许 ...

  2. OC 异步顺序加载的方法

    方法一:发射信号量 OC -异步顺序加载 先调用A接口,再调用B接口,再调用C接口 dispatch_semaphore_t semaphore = dispatch_semaphore_create ...

  3. C#学习笔记-适配器模式

    什么是适配器模式? 适配器模式(Adapter):将一个类的接口转换成客户希望的另外一个接口. Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作. 什么时候运用适配器模式? ...

  4. Redis与数据库同步问题

    缓存数据与持久化数据的一致性,这个问题总结了一下(看到了一个不错的博文),其实就是读和写,还有就是要注意谁先谁后的问题. Redis 是一个高性能的key-value数据库. redis的出现,很大程 ...

  5. 【JavaScript--String对象】

    JavaScript 字符串(String) 对象 String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 lenght 字符串的长度 prototype 允许您向对象添 ...

  6. RequireJS模块化后JS压缩合并

    使用RequireJS模块化后代码被拆分成多个JS文件了,在部署生产环境需要压缩合并,RequireJS提供了一个打包压缩工具r.js来对模块进行合并压缩.r.js非常强大,不但可以压缩js,css, ...

  7. HDU6038-Function-数学+思维-2017多校Team01

    学长讲座讲过的,代码也讲过了,然而,当时上课没来听,听代码的时候也一脸o((⊙﹏⊙))o 我的妈呀,语文不好是硬伤,看题意看了好久好久好久(死一死)... 数学+思维题,代码懂了,也能写出来,但是还是 ...

  8. Trees on the level(指针法和非指针法构造二叉树)

    Trees on the level Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  9. radiobutton独特属性

    radiobutton是通过name来分组的,也就是说,使用相同的名字的radio,它们才是单选的,如果名字不同的radio,是不具备这个效果的,这个是第一要点. 第二,针对不同的radio(name ...

  10. Hive_UDF函数中集合对象初始化的注意事项

    UDF函数中定义的集合对象何时初始化 udf函数放在sql中对某个字段进行处理,那么在底层会创建一个该类的对象,这个对象不断的去调用这个evaluate(...)方法,截图如下:   1.1 如果说对 ...