AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 103088
Accepted
Tim Meers
Tim Meers
Asked: 2010-01-16 07:39:01 +0800 CST2010-01-16 07:39:01 +0800 CST 2010-01-16 07:39:01 +0800 CST

可能的磁盘 IO 问题

  • 772

我一直在尝试真正弄清楚我的数据库服务器阵列上的 IOPS 是多少,看看它是否太多了。该阵列是 RAID 5 中的四个 72.6gb 15k rpm 驱动器。要计算 RAID 5 的 IOPS,请使用以下公式:(reads + (4 * Writes)) / Number of disks = total IOPS. 公式来自MSDN。我还想计算平均队列长度,但我不确定他们从哪里得到公式,但我认为它在该页面上读取为avg que length/number of disks = actual queue.

为了填充该公式,我使用 perfmon 来收集所需的信息。我想出了这个,在正常的生产负载下:(873.982 + (4 * 28.999)) / 4 = 247.495. 磁盘队列长度也是14.454/4 = 3.614.

所以对于这个问题,我认为这个阵列有一个非常高的磁盘 IO 是错误的吗?

编辑
今天早上我有机会在正常/高负载下再次查看它。这次有更大的数字和超过 600 的 IOPS 大约 5 分钟,然后它又消失了。但我也看了看Avg sec/Transfer,%Disk Time和%Idle Time. 这些数字是在每秒读取/写入次数分别仅为 332.997/17.999 时获取的。

%磁盘时间:219.436
%空闲时间:0.300
平均磁盘队列长度:2.194
平均磁盘秒/传输:0.006
页/秒:2927.802
%处理器时间:21.877

编辑(再次)
看起来我已经解决了这个问题。谢谢您的帮助。同样对于一个漂亮的解析器,我发现了这个: http: //pal.codeplex.com/它非常适合将数据分解成可用的东西。

sql-server windows-server-2003 io
  • 1 1 个回答
  • 754 Views

1 个回答

  • Voted
  1. Best Answer
    Boden
    2010-01-16T08:16:19+08:002010-01-16T08:16:19+08:00

    我自己最近一直在这方面做一些研究。这里有一个很棒的计算器,这个网站上的人给我指了指。以 97:3 的读写比率将一些基本数字放入其中,并且不考虑缓存命中,看起来您的阵列应该能够以 4k 的速度机械地提供大约 675 IOPS。您每秒进行 902 次传输,这会很高,因为每个磁盘的队列长度也表明了这一点。

    您还可以测量 sec/Transfer 和 %Disk 时间。我发现 RAID 阵列的 %Disk time 相当奇怪,并且我发现测量 %Idle 时间然后使用公式 100 - %Idle 来计算繁忙时间更准确。我敢打赌,您会发现您的磁盘非常繁忙,并且您会看到很多 20 毫秒以上的传输时间。如果您想得出磁盘问题的结论,IMO 这些数字会更加明确。

    这是一篇很棒的文章,被引用了很多。它过时但相关,对于解释为什么 %Disk time 和 Avg 尤其有用。队列长度可能难以解释。

    • 4

相关问题

  • sql server 连接字符串上的网络数据包大小以提高吞吐量

  • 基于 Microsoft 的服务器(IIS、MSSQL 等)上的病毒扫描应排除哪些内容?

  • SQL 洗衣清单

  • OPENROWSET、二进制文件、varchars 和 varbinaries

  • 聚集索引与非聚集索引?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve