Estoy en el negocio de crear sitios web y aplicaciones que no son de misión crítica -> eg. software de banca, vuelos espaciales, aplicación de monitoreo de cuidados intensivos, etc. Usted entiende la idea.
Entonces, con ese descargo de responsabilidad masivo, ¿es malo usar la sugerencia NOLOCK en alguna declaración SQL? Hace varios años, un compañero Administrador de SQL sugirió que debería usar NOLOCK si estoy contento con una "lectura sucia" que me dará un poco más de rendimiento de mi sistema porque cada lectura no bloquea el tabla / fila / lo que sea.
También me dijeron que es una gran solución si estoy experimentando bloqueos muertos. Entonces, comencé a seguir ese pensamiento durante unos años hasta que un gurú de SQL me ayudó con un código aleatorio y noté todas las NOLOCKS en mi código sql. Me regañaron cortésmente y él trató de explicármelo (por qué no es algo bueno) y me perdí. Sentí que la esencia de su explicación era 'es una solución de tirita a un problema más grave ... especialmente si estás experimentando un punto muerto. Como tal, arregle la raíz del problema '.
Recientemente busqué en Google al respecto y encontré esta publicación .
Entonces, ¿puede algún sql db guru sensei iluminarme?