During performance tuning consultationconsultation, there are plenty of counters and values, I often come across. Today we will quickly talk about Page Life Expectancy counter, which is commonly known as PLE as well.
You can find the value of the PLE by running the following query.
[cntr_value] FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%Manager%'
AND [counter_name] = 'Page life expectancy'
The recommended value of the PLE counter is (updated: minimum of) 300 seconds. I have seen on busy system this value to be as low as even 45 seconds and on unused system as high as 1250 seconds. Page Life Expectancy is the number of seconds a page will stay in the buffer pool without references. In simple words, if your page stays longer in the buffer pool (area of the memory cache) your PLE is higher, leading to higher performance as every time request comes there are chances it may find its data in the cache itself instead of going to the hard drive to read the data.
Now check your system and post back what is this counter value for you during various times of the day. Is this counter any way related to performance issues for your system?
Note: There are various other counters which are important to discuss during the performance tuning and this counter is not everything.
Update: PLE counter should be me 300 or more (OLTP Blueprint – A Performance Profile of OLTP applications)
Update2: Paul has done very technical and informative blog post where he explains the reasons and the correct answer for PLE. Read here.
Reference: Pinal Dave (https://blog.sqlauthority.com)
Hi my SQL server instance is Page life expectancy 1080. Why i came here is because of bothering endless emails from SCOM , directed to be to fix this thing. This issue open and closes it self almost within 1-2 hours time frame.
Alert: SQL DB 2008 Engine Page Life Expectancy is too low
Last modified by: System
Last modified time: 4/4/2017 7:54:07 AM
Alert description: Page Life Expectancy of SQL instance “GENERAL” on computer “VS02” is too low. See “alert context” tab for more details.
It all depends on threshold.. better to change them, if needed.
I cannot find out Page life expectancy counter in the dmv (sys.dm_os_performance_counters).Can you tell me how can I tackle this?
My server PLE:7677
My PLE: 58,431. Is that too high
My PLE count is 5
My PLE is growing. It was around 7000 and after 10 minutes is around 9000. This is on a test server with very low activity. There are 2 instances of sql server 2008R2 and 2012 on the same computer and both of them are growing.
A growing PLE means you’re not having to dismiss pages from memory. This is *good* from a performance perspective. An accountant might argue you spent too much money on RAM. I might argue the accountant needs to find someplace else to count beans.
PLE on one of my instances is 510196. MSSQL 2008r2 Enterprise on a Hyper-V VM with 32GB RAM running Windows Server 2012r2 Standard.
Wow! You are lucky.
Here’s some values:
My PLE is 550 and it down to 15-30 when the server is proccesing a lot of transactions.
you definitely need more RAM for SQL Server
Or find out the query which are pushing data out of memory :)
28533 ple its ok?