Database – “Dirty Reads” / Read Un-committed data
Recently, noticed that our Database was running very slowly.
It took a little while, but with time was able to identify the “offending” queries.
As the conversation with the Query Designer evolved, I heard him muted what is the big deal, I have (no lock) on the Queries.
A couple of weeks ago, I would have concurred, but once one works on VLDB systems; one would have to think a bit more. What is the big deal.
Well, Dirty read (no luck), “merely” means do not block other users reads and writes.
The Query still:
- Reads just as many records
- Uses similar amount of resources such as (IO /CPU / Memory) omitting resources taking for latches and locks
So next time you see “no lock” do not assume that the Query does no HARM.