J'ai des tables statiques qui obtiennent beaucoup de requêtes sélectionnées
Je me demande si j'ajoute cela à chaque requête, cela fait-il une différence de performance?
SQL Server 2014
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
voici mes temps d'attente après avoir exécuté la requête ci-dessous
select *
from sys.dm_os_wait_stats
WHERE [wait_type] NOT IN (
N'CLR_SEMAPHORE', N'LAZYWRITER_SLEEP',
N'RESOURCE_QUEUE', N'SQLTRACE_BUFFER_FLUSH',
N'SLEEP_TASK', N'SLEEP_SYSTEMTASK',
N'WAITFOR', N'HADR_FILESTREAM_IOMGR_IOCOMPLETION',
N'CHECKPOINT_QUEUE', N'REQUEST_FOR_DEADLOCK_SEARCH',
N'XE_TIMER_EVENT', N'XE_DISPATCHER_JOIN',
N'LOGMGR_QUEUE', N'FT_IFTS_SCHEDULER_IDLE_WAIT',
N'BROKER_TASK_STOP', N'CLR_MANUAL_EVENT',
N'CLR_AUTO_EVENT', N'DISPATCHER_QUEUE_SEMAPHORE',
N'TRACEWRITE', N'XE_DISPATCHER_WAIT',
N'BROKER_TO_FLUSH', N'BROKER_EVENTHANDLER',
N'FT_IFTSHC_MUTEX', N'SQLTRACE_INCREMENTAL_FLUSH_SLEEP',
N'DIRTY_PAGE_POLL', N'SP_SERVER_DIAGNOSTICS_SLEEP')
order by wait_time_ms desc;
Si vos données sont immuables marquent la base de données comme uniquement. Le moteur d'exécution de la requête reconnaît cela et saute le verrouillage. Cependant, les avantages sont marginaux. Si le verrouillage est préoccupé, cela signifie que A) Vous avez des conflits de verrouillage, ce qui implique des données n'est pas immuable ou b) vous acquérez trop de verrous, ce qui implique de grandes analyses qui doivent être traitées en ajoutant un index au besoin.
Pour plus de détails, lisez Comment analyser les performances SQL Server .
READ UNCOMMITTED
est identique à utiliser NOLOCK
, et si les données ne changent pas, il fournira les mêmes avantages de performance que NOLOCK
.
Ceci est [~ # ~] pas [~ # ~ ~] Un bouton Go-plus rapide pour tout, cependant. Les données non engagées sont des données non engagées et ne doivent pas être approuvées si les données sous-jacentes changent souvent. Assurez-vous que vous l'utilisez dans le bon contexte.
Je regarderais également les index de couverture, ce qui signifie que les index répondant à vos questions. Vous pouvez également trouver la joie avec des index filtrés. Je vais plus tôt regarder là avant d'allumer NOLOCK
/READ UNCOMMITTED
.