Sql-server – MEMORYCLERK SQLBUFFERPOOL

buffer-poolmemorysql serversql-server-2017

SQL Buffer pool is consuming more memory in sql server 2017. Is there any way to reduce it??
or How can we find what is consuming more? We are receiving alert for low buffer cache hit ratio.
MEMORYCLERK_SQLBUFFERPOOL 90365.62 MB

One particular database alone consuming 87GB buffer pool. Total memory allocated to this instance is 100GB

Best Answer

SQL Buffer pool is consuming more memory in sql server 2017.

That is by design.

The default memory management behavior of the SQL Server Database Engine is to acquire as much memory as it needs without creating a memory shortage on the system. The SQL Server Database Engine does this by using the Memory Notification APIs in Microsoft Windows.

Memory Management Architecture Guide - Dynamic Memory Management

The thinking is that it's better for SQL Server to use the memory to cache data than to leave it unused.

Is there any way to reduce it??

You can set MAX SERVER MEMORY to constrain it if you want.