Creo que está bien en algunas circunstancias, siempre que acepte las consecuencias y no tenga otras opciones.
Para otras opciones, empujaría a las personas a usar el aislamiento de instantáneas de lectura comprometida (RCSI) para nuevas aplicaciones, o la AISLAMIENTO DE INSTANTÁNEA (SI) para aplicaciones más antiguas, donde no se puede probar fácilmente la base de código completa para las condiciones de carrera con RCSI.
Sin embargo, esos podrían no ser una buena opción. Es posible que necesite pasar un tiempo extra amando y cuidando tempdb, y asegurándose de que nadie deje una transacción abierta que haga que la tienda de versiones (y tempdb) crezca y llene el disco.
Si no tiene un DBA, o alguien cuyo trabajo es monitorear y administrar su SQL Server, esas opciones pueden ser peligrosas. En términos más generales, no todos tienen el control total del código que va a su servidor, donde pueden cambiar la cadena de conexión o el código para solicitar SI si hay consultas problemáticas.
Además de eso, la mayoría de las personas no tienen problemas de bloqueo con toda su aplicación . Tienen problemas con cosas como informar sobre datos OLTP. Si puede aceptar las compensaciones de NOLOCK / RU a cambio de que los informes no sean bloqueados por los escritores, hágalo.
Solo asegúrate de entender lo que eso significa. No significa que su consulta no tenga bloqueos, significa que no respeta los bloqueos extraídos por otras consultas.
Y, por supuesto, si su problema es el bloqueo escritor / escritor, la única opción que ayudará es SI, pero se necesitaría una increíble cantidad de trabajo del desarrollador para implementarlo adecuadamente con el manejo de errores, etc.