SQL SERVER – What is Logical Read?

A logical read requests a database page through the buffer cache. A customer asked about that measure after my STATISTICS IO video.

An open folio remains available at the workbench beside a separate storage cabinet.

An ordinary rowstore page is 8 KiB. One hundred logical reads therefore represent about 800 KiB of page access. Those need not be distinct pages or newly read data. A plan can revisit the same page.

SET STATISTICS IO ON;
SELECT ProductID, Name FROM Production.Product WHERE ProductID BETWEEN 1 AND 100;
SET STATISTICS IO OFF;

Run the example in an installed AdventureWorks sample and read Messages. An absent cached page requires a physical read. Read-ahead and large-object accounting have separate fields. Logical reads alone don’t establish disk traffic.

Reducing unnecessary accesses can help. Compare the same query and parameters while retaining correct results. Logical reads don’t measure duration, CPU, contention or result size. The short video provides the original explanation.

Related reading

A logical read is not necessarily a disk read, it is a page access through the buffer cache.

Published by Pinal Dave on SQLAuthority. More of my work at pinaldave.com.


Discover more from SQL Authority with Pinal Dave

Subscribe to get the latest posts sent to your email.

SQL Server, SQL Server Management Studio, SQL Statistics
Previous Post
SQL SERVER – 3 Different Ways to Set MAXDOP
Next Post
sp_autostats: See and Undo Automatic Statistics Updates

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.