Monday, October 20, 2008

Microsoft SQL Server Data storage:Buffer management

SQL Server buffers pages in RAM to reduce disc I/O. Any 8 KB page can be buffered in-memory, and the set of all pages at this time buffered is called the buffer cache. The quantity of memory available to SQL Server decides how lots of page will be cached in memory. The buffer cache is managed by the Buffer Manager. Either analysis from or marks to any side copies it to the buffer cache. Subsequent reads or writes are redirect to the in-memory copy, rather than the on-disc side. The page is updated on the disc by the Buffer Manager only if the in-memory cache has not been referenced for a few times. While writing pages back to disc, asynchronous I/O is use whereby the I/O operation is done in a backdrop thread so that other operation do not have to wait for the I/O operation to total. Each page is written along with its checksum when it is written. When interpretation the page back, its checksum is compute again and matched with the store version to ensure the page has not been injured or tamper with in the mean time.

No comments: