首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CPU或页读取

CPU或页读取
EN

Database Administration用户
提问于 2012-07-20 18:10:49
回答 2查看 165关注 0票数 3

在比较查询性能时,应该选择CPU值或页面读取。在实时服务器(拥有更好的硬件)上,当我在本地计算机上测试时,查询会显示不同的CPU。但是佩奇阅读的内容还是一样的。

EN

回答 2

Database Administration用户

发布于 2012-07-20 22:19:04

大多数系统仍然是I/O限制的,而不是CPU限制的。如果您的Server系统没有运行SSD,而且CPU超过内存和/或I/O,那么可能存在一个非常严重的问题。因此,我将把重点放在引导查询到优化I/O的计划上。

票数 2
EN

Database Administration用户

发布于 2012-07-21 04:44:34

您不是比较两个diff计划,而是比较两个diff服务器,因此您可以预期,如果您在同一台服务器上运行查询,那么时间肯定会是vary.Even。因此,如果要比较两个服务器上的时间或同一服务器上的两个查询,请尝试执行该查询,例如时间的100's,然后使用avg时间。

页面读取不是基于硬件,而是取决于您的数据,因此,如果您有相同的数据和索引,此计数器将是相同的。我建议您在决定哪一种是最好的query.But之前,对所有3种情况进行比较,在大多数情况下,减少IO会减少其他一些场景。

1.页读取(逻辑读取和磁盘读取)。这是最重要的,因为读取页面是由CPU完成的工作,所以如果您减少IO,那么最终您将减少由CPU完成的工作,这反过来将减少CPU的时间以及等待time.Also,您将改进整个系统perf,例如,您的查询正在执行,比如10 IO,那么它将只在内存或缓冲区中使用10页,但是如果它将使用1000 IO,那么它将在内存中使用1000页,因此将占用内存中额外的990页空间,这可能会导致其他有用的页面从内存中抛出,从而可能导致物理IO读取这些页面。我假设上面10和1000个IOs是diff页,并且不同的pages.This比较应该基于diff页而不是IO的数目。

2.如果您有诸如计算或排序操作之类的CPU密集型任务,那么CPU Time.This可能会相当高。(对于并行查询,它可能比串行查询高得多,在这种情况下,直接比较没有多大意义)。

3.如果您有太多IO需要做,并且其中一些来自磁盘(同样,在并行情况下这可能相当高,并且它并不反映真正的等待时间,因此,在比较其他等待时,等待Time.This可能会很高)。

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

https://dba.stackexchange.com/questions/21260

复制
相关文章

相似问题

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