Hi,
I have a big database (~4GB), with 2 large tables (~3M records) having ~180K SELECTs/hour, ~2k UPDATEs/hour and ~1k INSERTs+DELETEs/hour.
What would be the best practice to guarantee no locks for the reading tasks while inserting/updating/deleting?
I was thinking about using a NOLOCK hint, but there is so much discussed about this (is good, is bad, it depends) that I'm a bit lost. I must say I've tried this in a dev environment and I didn't find any problems, but I don't want to put it on production until I get some feedback...
UPDATE: I clarify this upon the comment received -- because of the business dealed with this application, I don't mind if a SELECTed record is old because of being deleted/updated in simultaneous. Next read will return the new one and that's fine.
UPDATE 2: In this application, when a record is inserted or updated, then it is very probable to keep intact for a month at least. (so maybe I could partition the table according to the 'lastUpdated' column?)
Thank you! Luiggi