1. 转载:如何提升磁盘IO性能
目前,磁盘是机械操作的,主要是在读取和写入磁盘之前查找磁道的过程中。磁盘附带的读写缓存大小对磁盘读写速度至关重要。具有快速读写的磁盘通常具有较大的读写缓存。磁盘的查找过程是机械的,它确定其随机读写速度将明显低于顺序读写。当我们进行系统设计和实现时,我们需要考虑磁盘的这个特性。
FastDFS是一个开源且高效的分布式文件系统。它的初始实现,文件以散列模式随机分布到多个目录,后来又添加了顺序存储实践。通过比较测试,发现文件按目录顺序存储,写文件的效率明显高于目录随机存储的效率。
目前,磁盘顺序读取的速度还不错。例如,普通硬盘的IO可以达到每秒40~60MB,更好的硬盘可以达到每秒100MB左右。在多进程或多线程并发读取磁盘的情况下,随着并发数量的增加,磁盘IO效率将大大降低。主要是因为每次读取和写入,轨道可能具有大的偏移,并且轨道寻址时间增加,导致磁盘IO的性能急剧下降。对于此方案,优化方案是最小化并发读取和写入的进程或线程的数量。您可以使用锁定机制或专用磁盘IO线程来读取和写入磁盘。在FastDFS 2.x版本中,磁盘读取和写入是使用专用线程完成的。
为了充分利用多个磁盘的效率,建议不要使用传统的RAID方法。一个好的做法是分别安装每个磁盘,并通过程序控制多个磁盘的并发读写。使用单个磁盘安装,可以使用多台计算机实现文件备份和冗余。
在大量文件(例如数千万个文件)之后,当随机访问许多文件时,文件系统的性能将急剧下降。业界流行的做法是通过将多个小文件组合成一个大文件来减少文件数量。 FastDFS 3.0支持将多个小文件合并和存储到一个大文件中。发展进度相对平稳。预计3.0版将于5月发布。
改进磁盘IO的另一个技巧是尽可能多地写入或尽可能多的读取。换句话说,将程序的读写缓冲区设置得尽可能大。例如,日志或重做日志写入,不是每次都直接写入磁盘,而是先缓存到内存中,然后在缓冲区满时写入磁盘,也可以定期写入磁盘。
操作系统和C库函数通常会缓存写入文件的内容,以减少实际写入文件的次数。直接调用系统函数fsync或C函数fflush将使系统的缓存机制无效,这将强制将内容刷新到磁盘。除非必要,否则不要执行强制刷牙操作。如果在操作过程中不慎将重要的数据弄丢了,可以用闪灵数据恢复找回数据;如果有重要的资料不希望别人进行查看等操作,可使用闪灵文件夹锁进行加锁。
2. 硬盘io性能
一,硬盘IO的延时
对于SQL Server数据库系统,限制查询响应的主要因素是硬盘的延时,根据硬盘的物理构造(磁道和扇区),延时可以分为寻道延时和旋转延时:
寻道延时:硬盘的物理刺头移动并定位到所需数据的时间,
旋转延时:硬盘旋转到所需数据的时间,通常用MB/S,或IO吞吐量来衡量
在OLTP系统中,数据更新操作较多,每次读取的数据量少,目标数据的位置相对随机(随机读写),因此,对于寻道延时要求更高,硬盘需要花费更多的寻道时间。
在DSS/DW系统中,事务的运行时间更长,数据相对静态,不常更新,读操作比写操作的要求更高,顺序读操作占比很高,因此,IO吞吐量更重要,可以通过硬盘的盘面来增加顺序访问的IO吞吐量。
二,根据WaitType侦测IO性能
SQL Server引擎把IO作为一个资源来看待,在多任务的现代数据库系统中,同一时刻会接收到很多查询请求,每一个查询请求都需要申请系统资源(CPU、内存和IO),才能继续执行下去,然而系统的资源是有限的,当查询争用资源时,有些查询请求资源得到满足,顺利执行下去,有些查询请求的资源得不到满足,该查询就被阻塞,处于等待资源分配的状态。当出现IO性能问题时,查询语句会被硬盘IO阻塞,这使得执行计划被迫挂起(或阻塞)来等待资源,SQL Server通过DMV来显示系统运行的状态,用等待类型来表示不同的阻塞信息。
1,数据文件的IO
如果SQL Server 出现 IO 性能问题,那么在SQL Server 内部通过DMV sys.dm_exec_requests的wait_type,来反馈 IO 问题。如果查询请求的wait_type长时间处于PageIOLatch_XX,那么说明系统不能很快把数据读取到内存中。
PAGEIOLATCH_xx :用于描述数据页的IO争用,说明系统正在从硬盘加载数据到内存的Buffer Pool中
当SQL Server 要去读或写一个Page的时候,首先会在Buffer Pool里寻找,如果在Buffer Pool中找到了,那么读写操作会继续进行,没有任何等待。如果没有找到,那么SQL Server 就会设置Wait_Type为PageIOLatch_EX(写)或PageIOLatch_SH(读),然后发起一个异步IO操作,将页面读入Buffer Pool中,在IO没有完成之前,Request将会保持在PageIOLatch_EX(写)或PageIOLatch_SH(读)的等待状态。IO消耗的时间越长,等待的时间越长。
2,日志文件的写入
日志文件以写为主,工作量由修改命令激发的事务数量决定。当SQL Server要写事务到日志文件时,如果Disk 不能及时完成IO请求,那么事务就无法提交,SQL Server 不得不进入WriteLog 等待状态,直到事务被成功记录到日志文件中,才会提交当前的事务。
如果request经常出现WriteLog的Wait type,说明事务日志的写请求不能被Disk及时完成,这种情况,对SQL Server 整体性能影响较大。
WRITELOG:在数据被修改时,在Log Cache和Buffer Cache中都会有记录,如果在Log Cache中的数据在checkpoint时写入硬盘,就会发生这种等待。
LOGBUFFER等待:很少出现,当一个任务正在等待存储日志到Log Buffer中时,就会出现LOGBUFFER等待,出现这种等待,说明日志所在的硬盘无法响应请求。如果把日志文件放在一个非常慢的硬盘上,而数据文件放在一个非常快的硬盘上,就会出现这种等待。
3,AYSNC_IO_COMPLIETION和IO_COMPLIETION也是IO瓶颈的潜在指标
AYSNC_IO_COMPLIETION:标识任务正在等待IO请求来完成操作,当一个应用程序连接SQL Server,在处理数据时变得非常慢,很可能就会出现这种类型的等待。
IO_COMPLIETION:发生在一个任务正在等待用于非数据页IO的IO操作上,非数据页,一般是指日志文件,通常发生在修改大量修改,或者内存中存在大量的脏数据时。
三,影响读写性能的因素
数据库系统对IO的性能依赖较高,那么影响数据库系统读写性能的因素有哪些呢?
1,物理硬盘的IO能力
机械硬盘的IO速度没有固态硬盘快,可以考虑把数据库系统的机械硬盘更新为固态硬盘。
2,内存对硬盘IO的影响
在SQL Server Engine 访问数据时,如果相应的data不存在于Buffer Pool,那么Buffer Manager 从Disk中的Data File(mdf 或 ndf)中将相应的data page读取到内存中。SQL Server 将data page缓存起来。理想情况下,只要SQL Server能够使用的内存充足,SQL Server 会将所有读取到内存的中Data Page缓存到Buffer Pool中。对于读取操作,只要相应的数据都缓存在内存中,Select 就不会有任何硬盘IO。
当Buffer Pool空间不足时,SQL Server 激活 LazyWriter,主动将内存中一些很久没有使用的Data Cache和 Plan Cache 清除,mark为Free buffer,供其它Data Page使用。如果这些Page上的修改还没有被CheckPoint写回Disk,那么LazyWrite会将其写回。
3,碎片和压缩
如果数据页面或index 页面的碎片很多,每个页面存储的数据行较少,那么SQL Server 需要读写更多的Page。如果数据在页面里存储的非常紧凑,存储相同数据所消耗的Page越少,并且可以充分利用SQL Server 预读的优势,减少IO。
压缩技术不仅使数据占用的Disk 空间减少,而且能够减少IO。由于数据在写入Disk之间经过压缩处理,存储相同数据所消耗的Page减少,读取的Data Page会减少。压缩技术在一定程度上能够降低IO,但需要付出一定的代价:额外消耗少量的CPU和内存来解压缩。
4,利用多个物理硬盘实现Data File的并发读写
在DB中的FileGroup 创建多个File,将这些File存放到不同的Physical Disk上。File 分布到不同的Physical Disk上,IO也会分布到不同的Physical Disk上,这样能够实现数据的并发读取,提高读取性能。
对于日志文件,SQL Server会频繁的写事务日志。只要数据库发生修改,就会不断地写入日志文件。如果不能及时完成日志文件的IO,会导致事务的延迟提交,对性能的影响较大,所以,尽量将日志文件放到写入速度快的Disk上。SQL Server 顺序写事务日志,在一个时间点,SQL Server 只会写一个日志文件。在不同的Physical Disk上创建多个log file对性能基本没有帮助。
5,工作负载
日志文件以写为主,工作量由修改命令申请的事务数量决定,日志文件是顺序写的,写入速度快于随机写。如果日志记录不能及时写入,那么Request会处于WriteLog等待状态,对系统整体性能影响较大。
数据文件写入的数据量由修改量决定,SQL Server除了设置bulk logged 恢复模式之外,没有太大的调整选项。
数据文件读取的数据量,由访问的数据量和Buffer Pool中缓存的数据量共同决定。如果访问的数据量减少或者内存缓存区增加,都可以降低SQL Server 从Physical Disk读取的Data Page数量。在内存不变的情况下,可以通过优化查询语句,减少数据访问量,来提高SQL Server 数据文件的读取性能。
3. 机械硬盘写入速度和读写速度一般是多少
机械硬盘的写入速度和读写速度一般约为120MB/S,SATA协议的固态硬盘速度约为500MB/S,NVMe协议(PCIe3.0×2)的固态硬盘速度约为1800MB/S,NVMe协议(PCIe3.0×4)的固态硬盘速度约为3500MB/S。
机械硬盘主要由盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。
(3)硬盘io速度扩展阅读
硬盘的容量:硬盘容量以兆字节(MB)或千兆字节(GB)为单位,1GB=1024MB,1TB=1024GB。但硬盘厂商在标称硬盘容量时通常取1G=1000MB,因此在BIOS中或在格式化硬盘时看到的容量会比厂家的标称值要小。
硬盘的容量指标还包括硬盘的单碟容量。单碟容量越大,单位成本越低,平均访问时间也越短。主流硬盘是500G,而750G以上的大容量硬盘亦已开始普及。
4. 固态硬盘一般的读取速度和写入速度是多少
SSD分不同的价位、容量、以及性能来区分,有好几种情况(只列举几个比较常见,也容易对比的SSD固态硬盘),如:
1、金士顿——常规的,读(500MB/S)以上,写(400MB/S)以上,好点的,读(1500MB/S)以上,写(800MB/S)以上,对于软件的打开速度与电脑的开机速度等都有明显的提升。(缺点:就是没缺点,价格和性能都算适中,符合大部分人的需求)
2、西部数据——常规的(绿盘,最实惠的,适合家庭计算机等),读(450MB/S)以上,写(400MB/S)以上,好点的(蓝盘,适合有需求的办公电脑,和小型机等),读(550MB/S)以上,写(500MB/S)以上,再好点的(黑盘,适合有高效率需求的办公电脑,专业游戏电脑,和服务器等,及软件开发人员,体验“飞”一般的感觉),读(3000MB/S)以上,写(1600MB/S)以上,对于软件的打开速度与电脑的开机速度等都很大的提升,完全不一样的感觉好不,感觉每次用电脑心情都是舒畅的~(缺点:价格稍微贵点,但价格和性能都还算合适)
3、三星——常规(850)的,读(520MB/S)以上,写(500MB/S)以上,好点(970 evo plus)的,读(3300MB/S)以上,写(3000MB/S)以上,对于软件的打开速度与电脑的开机速度等都有很大的提升(缺点:太贵)。
4、普通的SSD(不细说牌子了)——读(300MB/S)以上,写(100MB/S)以上,这个是最低廉的SSD,聊胜于无,对于软件的打开速度与电脑的开机速度等都没有太大的提升。但如果家用电脑(预算较低)的话,可以选择,相对会比较划算(缺点:对电脑性能提升不太大)。
注1【重点】:同一种SSD固态,容量越大,速度越快。(比如:主控相同的同品牌两款SSD,一款是128G的,一款是256G的。两款SSD使用的都是单片容量为16G的闪存芯片,那么128G的SSD就需要128/16=8片闪存芯片,256G的SSD就需要256/16=16片闪存芯片。众所周知,SSD读写速度之所以快,就在于其读写时,是将数据分散同时读写多个闪存芯片的。显然,有16片闪存芯片的256G产品由于可以同时读写更多地闪存芯片,速度就比只有8片闪存芯片的128G产品速度快了)
注2【了解】:以上仅为个人观点,仅供参考。因是做软件开发的(个人装的西部数据的黑盘,测试出来IO速度为——读(3200MB/S)多一点,写(2600MB/S))浮动,身边的人都对电脑性能有一定的要求,也都装了固态SSD,相对了解的多那么一点。如果不小心帮到了您,请留下个“赞”再走~
5. io系列转速都一样吗
不一样。io系列有多种转速可供选择,其中1U规格的产品最低转速为 600RPM,3.5寸规格最低转速为5400RPM,2.5寸规格最低歼轮转速为7200RPM,硬盘容量越大,转速越高。根据不氏晌信同应用场景谨睁,还可以选择不同的转速。
6. 硬盘速度多少正常
问题一:7200转机械硬盘读写速度多少正常 看着曲线图就知道不正常了。
从来不定期做磁盘清理和碎片整理的曲线。
看看健康那页有没有报错吧。
使用中停电是会让硬盘的磁头直接掉到盘体上,很有可能造成划伤盘体的哦。建议在PE里取一下曲线,看看硬盘的盘体燃侍本身情况好不好。另外看一下健康那页有没有报错和报错的项目。严重的话,为了避免数据丢失,需要备份数据并更换硬盘了。
问题二:硬盘的读写速度是多少 ss胆快好多 机械盘没得比的 光说数字没意义 你亲身用过就知道了 一般笔记本上机械盘是5400转 台式机7200转 那些上万转的一般是高性能机用的 但转的再快也没ssd快
问题三:移动硬盘读写速度一般是多少正常 USB2.0的U盘 移动硬盘 读取速度大概在17-25M/s
USB3.0的U盘 移动硬盘 读取速度大概在40-70M/s
USB2.0的U盘写入速度大概是4-10M/s
移动硬盘写入速度大概在10-25M/s
USB3.0的U盘 移动硬盘写入速度大概在40-60M/s
固态硬盘读写速度大概在300-600M/s
普通硬盘的读写速度大概在60-120M/s
问题四:一般硬盘读取速度和写入速度是多少 硬盘的传输速率:作为电脑中最重要的数据存储设备和数据交换媒介,硬盘传输速率的快慢直接影响了系统的运行速度。不同类型的硬盘,其传输速率往往差别很大。现在主流硬盘主要有三种:按照不同的接口可以分为并口ATA硬盘(即IDE硬盘)、SCSI硬盘和Serial ATA硬盘。
IDE接口硬盘在当前电脑中应用最为广泛,主流的规格包括ATA/66、ATA/100、ATA/133,这种命名方式也表明了它们在理论上的外部最大传输速率分别达到了66MB/s、100MB/s和133MB/s。这里需要说明:100MB/s、133MB/s是峰值速度,并不能表示硬盘能持续这个速度,也就是说这是理论上的最高峰值速度。
硬盘真正的传输速度由于受硬盘内部传输速率的影响,其稳定传输速率一般在30MB/s到45MB/s之间。这样随着CPU、内存等硬件运行速度的不断提高,ATA硬盘的低速率渐渐成为影响整机运行速度的瓶颈。于是,一种新的硬盘接口方式,Serial ATA应运而生。
Serial ATA 硬盘就是我们常说的串口硬盘,它采用点对点的方式实现了数据的分组传输从而带来更高的传输效率。Serial ATA 1.0版本硬盘的起始传输速率就达到150MB/s,而Serial ATA 3.0版本将实现硬盘峰值数据传输率为600MB/s,从而最终解决硬盘的系统瓶颈问题。
SCSI接口不是专为硬盘设计的,实际上它是一种总线型的接口,独立于系统总线工作。SCSI接口的硬盘以高稳定性、低CPU占有率而被广泛应用于服务器和专业工作站中,它的传输速率最高可达320MB/s。当然,对于硬盘的整体性能而言,除了硬盘的传输速率,硬盘的转速、缓存及平均寻道时间等也是重要的因素。
小知识:1.硬盘的内部数据传输率
内部数据传输率是磁头到硬盘的高速缓存之间的数据传输速度,这可以说是影响硬盘整体性能的关键,一般取决于硬盘的盘片转速和盘片数据线密度。在这项指标中常常使用MB/s或Mbps为单位,这是兆位/秒的意思,如果需要转换成MB/s(兆字节/秒),就必须将Mbps数据除以8。例如有的硬盘给出最大内部数据传输率为240Mbps,但如果按MB/s计算就只有30MB/s。由此可以看出目前硬盘作为电脑的瓶颈,其病根还在于硬盘的内部数据传输率上。
2.硬盘的外部数据传输率
指从硬盘缓冲区读取数据的速率。它与硬盘的接口类型是直接挂钩州段档的,因此在广告或硬盘特性表中常以数据接口速率代替,单位为MB/s如我们平常所说的ATA100/133硬盘。册乱
光驱的传输速率:通常光驱传输速率的高低取决于光驱的倍速,如16X DVD、52X的CD-ROM,一般情况下光驱的倍速越高,数据传输也就越快。那么“倍速”是个什么概念呢?原来很早以前CD-ROM的传输速率很低,每秒只能传送150KB字节,即最初光驱的速率为150KB/s,这就是1X(单倍速)的CD-ROM光驱。后来随着CD-ROM光驱技术的日新月异,其速率越来越快,为了区分不同速率的光驱,于是把最初的150KB/s作为基准进行衡量得到相应的倍速值。如50X的CD-ROM就是指其传输的速度是1X光驱的50倍即其速率为50×150KB/s=7500KB/s。而现在流行的DVD-ROM的速率算法也基本相同,只不过DVD-ROM的单倍速率要比CD-R......>>
问题五:硬盘读写速度多少正常 图上看,磁盘上有不稳定的磁道,读取比较吃力,所以声音很大。不正常。如果是新硬盘,应该送回检测。另外你用磁盘检测的软件测一下使用时间 即可知道是否是新硬盘。
问题六:硬盘的正常读取速度是多少? 别听楼下的,160G硬盘 这数据非常正确!不管你是IDE .或者SATA 都是这差不多的数据!
所以不问你是什么接口,楼下的说的都是什么系列的产品,也不看看!
硬盘读取的储候,磁头是不停的在移动的,所以你能听得那些声音。
那声音不是硬盘的问题是你机箱的问题,机箱震动大,共鸣就大,越静越烦!
硬盘声音大的时候。你会真正听到硬盘,每次,读写的时候,或者开机的时候都有很明显,很大的声!
问题七:大家的硬盘一般拷贝速度是多少 一般拷贝速度按硬盘写入速度计算,大文件速度稳定,多个小文件如多张照片速度会慢很多。
实际又分很多情况,速度总体是看木桶效应
本地的机械硬盘同一块盘不同分区间拷贝40M/S左右。
本地2块硬盘间拷贝一般是100M/S左右。
固态硬盘会快一些,但普通消费级的与机械硬盘的拷贝速度相差不大。
做了磁盘阵列优化的速度会翻番。
外接移动硬盘速度会受到接口限制,USB2.0 20M/S都在以内,USB3.0可以达到70M/S。
IO接口也会影响速度,SATA1.0 问题八:机械硬盘写入速度和读写速度一般是多少 没有所谓的一般,不同时期的机械硬盘,性能差距很大。我举例:
500G 16M 的读写速度是 100~110M/S
1T 64M的读写速度是 150~160M/S
你的速度过低,先重装下系统看看。
问题九:ssd速度多少正常 和我一样的牌子M667 128G,用在笔记本上
开机是快些,尤其是打开装在SSD上软件,个人觉得不在乎噪音的话,用企业级黑盘也是很爽的(下图是台机上企业黑盘开机,一般17s)
你的SSD容量小了点,速度SSD是容量越大越快,还看高速缓存这个牌子好象是没缓存的
7. 1万转的硬盘随机io有多少
200MB/s。根据网络资料前带槐查询显示,1万行液转的硬盘随机io有200MB/s左右,随着IOsize增加的时候,带宽也上来了,最大能够慧友达到1.2GB多。
8. 机械硬盘与固态硬盘读写速度是多少
硬盘一般指电脑硬盘。电脑硬盘是计算机最主要的存储设备。而硬盘也分机械硬盘与固态硬盘,那么机械硬盘与固态硬盘读写速度是多少?
1、 机械硬盘读写速度平均60---80M每秒。
2、 固态硬盘不同品牌型号之间,平均大约在150---300M每秒。
3、 5400转的笔记本硬盘:50-90MB每秒。
4、 7200转的台式机硬盘:90-190MB每秒。
5、 固态硬盘的读写速度可以达到500MB/s。
以上的就是关于机械硬盘与固态硬盘读写速度是多少的内容介绍了。
9. 数据库峰值io有60W,如何决定硬盘读写速度多少啊
硬盘评测一般有两个指标, 一个是读写,一个就是iops 。
严格的说iops 和读写没有直接的关系,例如 普通sata ssd 最大io22w 最大读取500m 而nvme最大io 50w 最大io 3.5g(大约,不做真实数据,只供说明意思)。
读写速度一般都局限于接口带宽, sata一直慢速550m pci-e的也愈来愈逼近。
iops 和所用协议, (nvme协议比sata 更适合ssd 指令周期也短所以延迟 io天生优势),所经过设备的处理能力以及数量(过南桥的硬盘延迟高一点,直通cpu的当然快,家用忽略)(数据库文件存到nas的延迟io就比san整列的差劲) 有关。
10. 磁盘io是什么意思
IO实际上是计算机用语,也写作I/O,指输入/输出(Input/Output)。硬盘IO就是指对字节的读取速度,即硬盘的读写能力。(10)硬盘io速度扩展阅读
I/O输入/输出(Input/Output),分为IO设备和IO接口两个部分。在POSIX兼容的`系统上,例如Linux系统,I/O操作可以有多种瞎改弊方式,比如DIO(DirectI/O),AIO(AsynchronousI/O,异步I/O),磨族Memory-MappedI/O(内存映射I/O)等,不同的I/O方式有不同的歼差实现方式和性能,在不同的应用中可以按情况选择不同的I/O方式。