SQL Server的页面预期寿命是否过高?


8

我已经阅读了几篇有关SQL Server的页面预期寿命及其含义以及可以从中获取哪些信息的文章。在我阅读的大多数这些文章中,一个常见的健康PLE值大约为1000-2000秒。我读过,缩短到300秒左右可能意味着您的RAM可能不足。

我最近刚刚将硬件升级到64GB的RAM,从14GB升级到了64GB。在14GB内存上,我的PLE大约需要300秒,而每秒我有很多5-6个内存授权待处理。因此,那很糟糕,我增加了RAM。现在,我的PLE大大提高了,大约是5000秒,并且不再有待决的内存授予。如果我记得的话,我已经看了7000秒。这比我读过的任何东西都要高。

PLE可能是一件坏事吗?还是越高越好?

编辑:对不起,我的PLE不是7000秒,而是70,000秒!尽管目前下降到7000左右。

在此处输入图片说明

  • 数据库大小约为160GB。一些表有5+百万行。
  • max_server_memory 设置为2147483647。

我只想说什么就不用担心了。它是一个快乐的系统
-Shanky

Answers:


15

,我想不出任何可以说明天文数字过高的PLE所带来的负面影响的情况或理论(除非您欣赏硬盘驱动器中的嗡嗡声?)。

随着内存越来越便宜,硬件购买者变得越来越慷慨,我们看到这些更大的内存盒拥有成千上万的PLE是很常见的。这只是表明您的实例可能没有内存压力的一种迹象。拿它来做,仅此而已。

页面预期寿命只是SQL Server认为页面将在缓冲区中持续多长时间的估计。 这是SQL Server的说法,认为这将是“一段时间”

还要注意另一件事,请Paul Randal的建议,不要专心于缓冲区管理器报告的PLE。像所有平均值一样,缓冲区管理器可以隐藏不同的PLE。您想使用缓冲区节点计数器查看所有单个NUMA节点的PLE :

Get-Counter -ListSet "*" | 
    Select-Object -ExpandProperty Counter | 
    Where-Object {$_ -like "*buffer node*page life expectancy*"} | 
    Get-Counter

Page Life Expectancy仅是SQL Server内存中一幅美丽的图画。将其与其他“颜色”(目标/服务器总内存,可用的兆字节等)一起查看。人们经常看一个简单的指标,担心他们的服务器即将爆炸,或者相反,它会在不受管理的情况下生存数百年。


2
Tom击败了我-此外,我想补充一点,它并不“意味着” SQL Server处于内存压力下-但工作负载没有有效利用缓冲池,因此可能需要进行调整或改变了。
肖恩·加拉迪

我发现了天文学上很高的值,看起来好像是错误的:dba.stackexchange.com/questions/119405/…–
Magier
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.