SQL Repository
  • Home
  • Articles
    • MS SQL DBA
    • SSIS
    • SSRS
    • T-SQL
  • Code Snippets
    • MS SQL DBA
    • SSIS
    • SSRS
    • T-SQL
  • Interview Questions
    • MS SQL DBA
    • SSIS
    • SSRS
    • T-SQL
  • How To
    • MS SQL DBA
    • SSIS
    • SSRS
    • T-SQL
  • Contact





SQL Server buffer pool

On 05 Nov, 2015
Articles, MS SQL DBA
By : Charith Silva
No Comments
Views : 3027

SQL Server uses a buffer pool of memory to cache data pages, reducing I/O demand and improving overall performance. SQL Server buffer pool also called as buffer cache is a place in the SQL Server system memory that is used for caching table and index 8KB data pages as they are modified or read from disk.

 

Below script will return data page count and total page size that are currently in the SQL Server buffer pool. When a data page is read from disk, the page is copied into the SQL Server buffer pool first and cached for reuse. DBCC DROPCLEANBUFFER command can be used to clean the buffer. Also The Buffer Pool Extension is an extension for the SQL Server buffer pool that targets non-volatile storage devices, such as solid-state disk drives (SSDs). When the Buffer Pool Extension is enabled, SQL Server uses it for data pages in a similar way to the main buffer pool memory.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SELECT [DatabaseName],
[Dirty Page Count],
[Dirty Page Count] * 8 / 1024 AS [Dirty Page Size(MB)],
[Clean Page Count],
[Clean Page Count] * 8 /1024 AS [Clean Page Size(MB)]
FROM
(
  SELECT
  DB_NAME([database_id]) AS [DatabaseName],
  SUM(CASE WHEN ([is_modified]=1) THEN 1 ELSE 0 END) AS [Dirty Page Count],
  SUM(CASE WHEN ([is_modified]=1) THEN 0 ELSE 1 END) AS [Clean Page Count]
  FROM sys.dm_os_buffer_descriptors
  GROUP BY [database_id]
) AS buffers
ORDER BY [Databasename]

 

 

Share this:

  • Click to share on Twitter (Opens in new window)
  • Click to share on Facebook (Opens in new window)
  • Click to share on Google+ (Opens in new window)

Related



Previous Post Next Post 

About The Author

Charith Silva

Charith Silva is a Microsoft certified SQL Server developer and database administrator who was graduated at Buckinghamshire New university in the UK. His career was started in 1998, primarily into Web application development, and later diversified into database development. He has got a vast experience in SQL Server database development, Database administration and Business Intelligence development. He believes that sharing the knowledge is key to the success.


Number of Posts : 87
All Posts by : Charith Silva

Leave a Comment

Click here to cancel reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">





  • Popular
  • Recent
  • Database stuck in “Restoring” state

    18362 views
  • Find the modified date of SQL Server Agents Jobs

    9119 views
  • Script to Check TempDB Speed

    4951 views
  • PING all the Linked Servers and get a status report

    4586 views
  • Log shipping Alerts failing to send emails

    4529 views
  • Moving the tempdb database

    27 Jan, 2016
  • Script to Check TempDB Speed

    14 Jan, 2016
  • SQL Server buffer pool

    05 Nov, 2015
  • Log shipping Alerts failing to send emails

    04 Nov, 2015
  • View queries waiting for memory grant

    21 Oct, 2015

Useful links

  • Books Online for SQL Server 2012
  • Developer Reference for SQL Server 2014
  • Download SQL Server
  • Installation for SQL Server 2012
  • Microsoft Virtual Academy
  • SQL Server Online Training
  • Transact-SQL Reference
  • Tutorials for SQL Server 2012

Tags

.CSV 70-461 AdventureWorks 2012 ALL ANY CAST Chinook Database Code Snippet CONVERT CTE dataset datasource Dates DATETIME divide by zero Duplicates Exam EXCEPT expressions FORMAT IF Import Indexes INTERSECT Jobs NULLIF REBUILD Recursive CTE REORGANIZE ROW_NUMBER() Schedules Sequence SOME sp_stop_job SQL Server 2012 SQL Server Agent SSIS SSRS T-SQL Tally Table T_SQL UAC Permissions Error UNION UNION ALL

Recent Comments

  • Rudnei Silva on Log shipping Alerts failing to send emails
  • johnson Welch on Database stuck in “Restoring” state
  • Neil on Database stuck in “Restoring” state
  • Mark Gribler on MS SQL Database Administrator Interview Questions – Part 4

Google Analytics Stats

Latest Tweets:

  • 6 years ago Attended @SQLSatMcr yesterday - it was amazing! Roll on @sqlsatcambs! Won some Beats Headphones courtesy of @SQLDBApros - thanks guys! :)
  • 6 years ago Looking forward to attending @SQLSatMcr - its too far off though!!!
  • 6 years ago Simple Post: WhoIsActive SPROC: http://t.co/LZvQUaeapK
  • 6 years ago POST: Index REBUILD or Index REORGANIZE: http://t.co/h3L0N37vw4
  • 6 years ago How to Ping all Linked Servers: http://t.co/Q2QxusrKjO
  • 6 years ago For beginners - T-SQL Divide by Zero Error: http://t.co/BBhgoH5hK9

© Copyright 2015 SQL Repository. All Rights Reserved by SQL Repository