首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IOs读取每个文件的写入

IOs读取每个文件的写入
EN

Server Fault用户
提问于 2012-02-11 12:51:20
回答 3查看 1.4K关注 0票数 2

我的目标是使用表上的符号链接,将mysql数据库与驱动器数量同等地分开。

现在,我似乎无法找到在mysql上检查IOs、读取和写入每个表的方法。

所以,现在我在想,在linux中,可能有某种方式来监控每个文件的ios、读、写?

Iostat显示每个设备的IOPS;物联网显示每个进程的IOPS;是否有任何东西显示每个文件的IOPS?

EN

回答 3

Server Fault用户

回答已采纳

发布于 2012-02-11 14:41:03

在DBA-land有一个营地(或者说,我最近还没有经历过),它认为最佳的性能是通过对存储基础设施的微观管理来找到的,以至于系统和存储管理员最好离开这条路,给他们一堆硬盘、一两台服务器,以及在被问到的时候偶尔伸出援手。

这些系统通常最终会有大量带有数据文件的RAID1对,这些数据文件有目的地和系统地分布在每一个系统中。将使用日志驱动器并进行类似的隔离。这种方法背后的想法非常简单:

  • 通过这样做,您可以将数据库与其他大IOP使用者隔离开来,这样大用户就不会影响系统的其他部分。
  • 由于有很多驱动器,该系统的总IOPS非常高。
  • 通过最小化存储抽象层,可以使整个系统更可靠,更重要的是具有更低的延迟。

这种方法存在一个很大的问题,Chopper3解决了这个问题:可维护性。

像这样的系统需要持续不断的关注和微调,以便随着数据库的增长/收缩、使用程序的变化、应用程序及其使用模式的演变、从逃逸条件中的恢复以及维护周期的变化而保持“最佳”性能。我上面描述的那种体系结构最适合于编写--几乎从不/读--大量的工作负载。

当数据库从硬件中提取性能的每一个分数的百分比时,它也会被使用。这是一个预算决定,在许多情况下,它被认为DBA的时间比更多的硬件便宜。然而,有一些高性能的情况下,它只是不可能做一个更大的盒子,所以你必须优化你有什么。对于我们其他不使用怪物数据库服务器的人来说,总是会有升级的。

另一个阵营,以及我所认为的那个阵营,对它的处理方式不同。它对存储抽象有更多的信心,并且倾向于扩展得更好。与众多的R10对不同,您可以将所有这些对放到一个RAID10集合中;或者交替地将少量的RAID10集。这允许IOP聚合,但每个数据文件/表空间/数据库都可以访问相当多的激增容量。通过使用多个R10集,您可以为那些需要它的关键数据库和日志文件提供I/O分离。对每个文件性能进行微观管理的需求大大减少了.

票数 4
EN

Server Fault用户

发布于 2012-02-11 13:23:47

你的想法似乎过于复杂、脆弱和难以管理--你就不能把磁盘放到一个RAID 10阵列中,这样就可以将数据和IOPS均匀地分布在磁盘上--这是每个人都要做的。

票数 6
EN

Server Fault用户

发布于 2012-02-14 15:46:33

您可以使用系统访问脚本监视每个文件的I/O。请参阅:iotime.stp

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/359115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档