MS SQL рд╕рд░реНрд╡рд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреЗ рдХреБрдЫ рдкрд╣рд▓реВред рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢

рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛

рдЕрдХреНрд╕рд░, MS SQL рд╕рд░реНрд╡рд░ DBMS рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдкреНрд░рд╢рд╛рд╕рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рд╕рдВрдкреВрд░реНрдг DBMS рдХреА рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП MS SQL рд╕рд░реНрд╡рд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдмрд╣реБрдд рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред
рдпрд╣ рд▓реЗрдЦ рд▓реЗрдЦ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реИ рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдЬрд╝реИрдмрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ рдЗрд╕рдореЗрдВ рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рдХреБрдЫ рдкрд╣рд▓реБрдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ: рдХреИрд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдХрд┐ рдХреМрди рд╕реЗ рд╕рдВрд╕рд╛рдзрди рдЧрд╛рдпрдм рд╣реИрдВ, рд╕рд╛рде рд╣реА рдЯреНрд░реЗрд╕ рдлреНрд▓реИрдЧ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рднреАред
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд╛рдВрдЫрд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдПрдХ inf рд╕реНрдХреАрдорд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
рдПрдХ inf рд╕реНрдХреАрдорд╛ рдмрдирд╛рдирд╛

use <╨╕╨╝╤П_╨С╨Ф>;
go
create schema inf;

RAM рдХреА рдХрдореА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐

рд░реИрдо рдХреА рдХрдореА рдХрд╛ рдкрд╣рд▓рд╛ рд╕рдВрдХреЗрддрдХ рд╡рд╣ рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрдм рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЙрд╕реЗ рдЖрд╡рдВрдЯрд┐рдд рд╕рднреА рд░реИрдо рдХреЛ рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо inf.vRAM рдХрд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдмрдирд╛рдПрдВрдЧреЗ:
inf.vRAM рджреГрд╢реНрдп рдмрдирд╛рдирд╛

CREATE view [inf].[vRAM] as
select a.[TotalAvailOSRam_Mb]						--╤Б╨║╨╛╨╗╤М╨║╨╛ ╤Б╨▓╨╛╨▒╨╛╨┤╨╜╨╛ ╨Ю╨Ч╨г ╨╜╨░ ╤Б╨╡╤А╨▓╨╡╤А╨╡ ╨▓ ╨Ь╨С
		 , a.[RAM_Avail_Percent]					--╨┐╤А╨╛╤Ж╨╡╨╜╤В ╤Б╨▓╨╛╨▒╨╛╨┤╨╜╨╛╨│╨╛ ╨Ю╨Ч╨г ╨╜╨░ ╤Б╨╡╤А╨▓╨╡╤А╨╡
		 , a.[Server_physical_memory_Mb]				--╤Б╨║╨╛╨╗╤М╨║╨╛ ╨▓╤Б╨╡╨│╨╛ ╨Ю╨Ч╨г ╨╜╨░ ╤Б╨╡╤А╨▓╨╡╤А╨╡ ╨▓ ╨Ь╨С
		 , a.[SQL_server_committed_target_Mb]			--╤Б╨║╨╛╨╗╤М╨║╨╛ ╨▓╤Б╨╡╨│╨╛ ╨Ю╨Ч╨г ╨▓╤Л╨┤╨╡╨╗╨╡╨╜╨╛ ╨┐╨╛╨┤ MS SQL Server ╨▓ ╨Ь╨С
		 , a.[SQL_server_physical_memory_in_use_Mb] 		--╤Б╨║╨╛╨╗╤М╨║╨╛ ╨▓╤Б╨╡╨│╨╛ ╨Ю╨Ч╨г ╨┐╨╛╤В╤А╨╡╨▒╨╗╤П╨╡╤В MS SQL Server ╨▓ ╨┤╨░╨╜╨╜╤Л╨╣ ╨╝╨╛╨╝╨╡╨╜╤В ╨▓╤А╨╡╨╝╨╡╨╜╨╕ ╨▓ ╨Ь╨С
		 , a.[SQL_RAM_Avail_Percent]				--╨┐╨╛╤Ж╨╡╨╜╤В ╤Б╨▓╨╛╨▒╨╛╨┤╨╜╨╛╨│╨╛ ╨Ю╨Ч╨г ╨┤╨╗╤П MS SQL Server ╨╛╤В╨╜╨╛╤Б╨╕╤В╨╡╨╗╤М╨╜╨╛ ╨▓╤Б╨╡╨│╨╛ ╨▓╤Л╨┤╨╡╨╗╨╡╨╜╨╜╨╛╨│╨╛ ╨Ю╨Ч╨г ╨┤╨╗╤П MS SQL Server
		 , a.[StateMemorySQL]						--╨┤╨╛╤Б╤В╨░╤В╨╛╤З╨╜╨╛ ╨╗╨╕ ╨Ю╨Ч╨г ╨┤╨╗╤П MS SQL Server
		 , a.[SQL_RAM_Reserve_Percent]				--╨┐╤А╨╛╤Ж╨╡╨╜╤В ╨▓╤Л╨┤╨╡╨╗╨╡╨╜╨╜╨╛╨╣ ╨Ю╨Ч╨г ╨┤╨╗╤П MS SQL Server ╨╛╤В╨╜╨╛╤Б╨╕╤В╨╡╨╗╤М╨╜╨╛ ╨▓╤Б╨╡╨│╨╛ ╨Ю╨Ч╨г ╤Б╨╡╤А╨▓╨╡╤А╨░
		 --╨┤╨╛╤Б╤В╨░╤В╨╛╤З╨╜╨╛ ╨╗╨╕ ╨Ю╨Ч╨г ╨┤╨╗╤П ╤Б╨╡╤А╨▓╨╡╤А╨░
		, (case when a.[RAM_Avail_Percent]<10 and a.[RAM_Avail_Percent]>5 and a.[TotalAvailOSRam_Mb]<8192 then 'Warning' when a.[RAM_Avail_Percent]<=5 and a.[TotalAvailOSRam_Mb]<2048 then 'Danger' else 'Normal' end) as [StateMemoryServer]
	from
	(
		select cast(a0.available_physical_memory_kb/1024.0 as int) as TotalAvailOSRam_Mb
			 , cast((a0.available_physical_memory_kb/casT(a0.total_physical_memory_kb as float))*100 as numeric(5,2)) as [RAM_Avail_Percent]
			 , a0.system_low_memory_signal_state
			 , ceiling(b.physical_memory_kb/1024.0) as [Server_physical_memory_Mb]
			 , ceiling(b.committed_target_kb/1024.0) as [SQL_server_committed_target_Mb]
			 , ceiling(a.physical_memory_in_use_kb/1024.0) as [SQL_server_physical_memory_in_use_Mb]
			 , cast(((b.committed_target_kb-a.physical_memory_in_use_kb)/casT(b.committed_target_kb as float))*100 as numeric(5,2)) as [SQL_RAM_Avail_Percent]
			 , cast((b.committed_target_kb/casT(a0.total_physical_memory_kb as float))*100 as numeric(5,2)) as [SQL_RAM_Reserve_Percent]
			 , (case when (ceiling(b.committed_target_kb/1024.0)-1024)<ceiling(a.physical_memory_in_use_kb/1024.0) then 'Warning' else 'Normal' end) as [StateMemorySQL]
		from sys.dm_os_sys_memory as a0
		cross join sys.dm_os_process_memory as a
		cross join sys.dm_os_sys_info as b
		cross join sys.dm_os_sys_memory as v
	) as a;

рдлрд┐рд░ рдЖрдк рдирд┐рдореНрди рдХреНрд╡реЗрд░реА рджреНрд╡рд╛рд░рд╛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЙрд╕реЗ рдЖрд╡рдВрдЯрд┐рдд рд╕рднреА рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИ:

select  SQL_server_physical_memory_in_use_Mb,  SQL_server_committed_target_Mb
from [inf].[vRAM];

рдпрджрд┐ SQL_server_physical_memory_in_use_Mb рд▓рдЧрд╛рддрд╛рд░ SQL_server_committed_target_Mb рд╕реЗ рдЕрдзрд┐рдХ рдпрд╛ рдЙрд╕рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рддреЛ рдкреНрд░рддреАрдХреНрд╖рд╛ рдЖрдБрдХрдбрд╝реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред
рдкреНрд░рддреАрдХреНрд╖рд╛ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд░реИрдо рдХреА рдХрдореА рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП inf.vWaits рджреГрд╢реНрдп рдмрдирд╛рдПрдВ:
inf.vWaits View рдмрдирд╛рдирд╛

CREATE view [inf].[vWaits] as
WITH [Waits] AS
    (SELECT
        [wait_type], --╨╕╨╝╤П ╤В╨╕╨┐╨░ ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П
        [wait_time_ms] / 1000.0 AS [WaitS],--╨Ю╨▒╤Й╨╡╨╡ ╨▓╤А╨╡╨╝╤П ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░ ╨▓ ╨╝╨╕╨╗╨╗╨╕╤Б╨╡╨║╤Г╨╜╨┤╨░╤Е. ╨н╤В╨╛ ╨▓╤А╨╡╨╝╤П ╨▓╨║╨╗╤О╤З╨░╨╡╤В signal_wait_time_ms
        ([wait_time_ms] - [signal_wait_time_ms]) / 1000.0 AS [ResourceS],--╨Ю╨▒╤Й╨╡╨╡ ╨▓╤А╨╡╨╝╤П ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░ ╨▓ ╨╝╨╕╨╗╨╗╨╕╤Б╨╡╨║╤Г╨╜╨┤╨░╤Е ╨▒╨╡╨╖ signal_wait_time_ms
        [signal_wait_time_ms] / 1000.0 AS [SignalS],--╨а╨░╨╖╨╜╨╕╤Ж╨░ ╨╝╨╡╨╢╨┤╤Г ╨▓╤А╨╡╨╝╨╡╨╜╨╡╨╝ ╤Б╨╕╨│╨╜╨░╨╗╨╕╨╖╨░╤Ж╨╕╨╕ ╨╛╨╢╨╕╨┤╨░╤О╤Й╨╡╨│╨╛ ╨┐╨╛╤В╨╛╨║╨░ ╨╕ ╨▓╤А╨╡╨╝╨╡╨╜╨╡╨╝ ╨╜╨░╤З╨░╨╗╨░ ╨╡╨│╨╛ ╨▓╤Л╨┐╨╛╨╗╨╜╨╡╨╜╨╕╤П
        [waiting_tasks_count] AS [WaitCount],--╨з╨╕╤Б╨╗╨╛ ╨╛╨╢╨╕╨┤╨░╨╜╨╕╨╣ ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░. ╨н╤В╨╛╤В ╤Б╤З╨╡╤В╤З╨╕╨║ ╨╜╨░╤А╨░╤Й╨╕╨▓╨░╨╡╤В╤Б╤П ╨║╨░╨╢╨┤╤Л╨╣ ╤А╨░╨╖ ╨┐╤А╨╕ ╨╜╨░╤З╨░╨╗╨╡ ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П
        100.0 * [wait_time_ms] / SUM ([wait_time_ms]) OVER() AS [Percentage],
        ROW_NUMBER() OVER(ORDER BY [wait_time_ms] DESC) AS [RowNum]
    FROM sys.dm_os_wait_stats
    WHERE [waiting_tasks_count]>0
		and [wait_type] NOT IN (
        N'BROKER_EVENTHANDLER',         N'BROKER_RECEIVE_WAITFOR',
        N'BROKER_TASK_STOP',            N'BROKER_TO_FLUSH',
        N'BROKER_TRANSMITTER',          N'CHECKPOINT_QUEUE',
        N'CHKPT',                       N'CLR_AUTO_EVENT',
        N'CLR_MANUAL_EVENT',            N'CLR_SEMAPHORE',
        N'DBMIRROR_DBM_EVENT',          N'DBMIRROR_EVENTS_QUEUE',
        N'DBMIRROR_WORKER_QUEUE',       N'DBMIRRORING_CMD',
        N'DIRTY_PAGE_POLL',             N'DISPATCHER_QUEUE_SEMAPHORE',
        N'EXECSYNC',                    N'FSAGENT',
        N'FT_IFTS_SCHEDULER_IDLE_WAIT', N'FT_IFTSHC_MUTEX',
        N'HADR_CLUSAPI_CALL',           N'HADR_FILESTREAM_IOMGR_IOCOMPLETION',
        N'HADR_LOGCAPTURE_WAIT',        N'HADR_NOTIFICATION_DEQUEUE',
        N'HADR_TIMER_TASK',             N'HADR_WORK_QUEUE',
        N'KSOURCE_WAKEUP',              N'LAZYWRITER_SLEEP',
        N'LOGMGR_QUEUE',                N'ONDEMAND_TASK_QUEUE',
        N'PWAIT_ALL_COMPONENTS_INITIALIZED',
        N'QDS_PERSIST_TASK_MAIN_LOOP_SLEEP',
        N'QDS_CLEANUP_STALE_QUERIES_TASK_MAIN_LOOP_SLEEP',
        N'REQUEST_FOR_DEADLOCK_SEARCH', N'RESOURCE_QUEUE',
        N'SERVER_IDLE_CHECK',           N'SLEEP_BPOOL_FLUSH',
        N'SLEEP_DBSTARTUP',             N'SLEEP_DCOMSTARTUP',
        N'SLEEP_MASTERDBREADY',         N'SLEEP_MASTERMDREADY',
        N'SLEEP_MASTERUPGRADED',        N'SLEEP_MSDBSTARTUP',
        N'SLEEP_SYSTEMTASK',            N'SLEEP_TASK',
        N'SLEEP_TEMPDBSTARTUP',         N'SNI_HTTP_ACCEPT',
        N'SP_SERVER_DIAGNOSTICS_SLEEP', N'SQLTRACE_BUFFER_FLUSH',
        N'SQLTRACE_INCREMENTAL_FLUSH_SLEEP',
        N'SQLTRACE_WAIT_ENTRIES',       N'WAIT_FOR_RESULTS',
        N'WAITFOR',                     N'WAITFOR_TASKSHUTDOWN',
        N'WAIT_XTP_HOST_WAIT',          N'WAIT_XTP_OFFLINE_CKPT_NEW_LOG',
        N'WAIT_XTP_CKPT_CLOSE',         N'XE_DISPATCHER_JOIN',
        N'XE_DISPATCHER_WAIT',          N'XE_TIMER_EVENT')
    )
, ress as (
	SELECT
	    [W1].[wait_type] AS [WaitType],
	    CAST ([W1].[WaitS] AS DECIMAL (16, 2)) AS [Wait_S],--╨Ю╨▒╤Й╨╡╨╡ ╨▓╤А╨╡╨╝╤П ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░ ╨▓ ╨╝╨╕╨╗╨╗╨╕╤Б╨╡╨║╤Г╨╜╨┤╨░╤Е. ╨н╤В╨╛ ╨▓╤А╨╡╨╝╤П ╨▓╨║╨╗╤О╤З╨░╨╡╤В signal_wait_time_ms
	    CAST ([W1].[ResourceS] AS DECIMAL (16, 2)) AS [Resource_S],--╨Ю╨▒╤Й╨╡╨╡ ╨▓╤А╨╡╨╝╤П ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░ ╨▓ ╨╝╨╕╨╗╨╗╨╕╤Б╨╡╨║╤Г╨╜╨┤╨░╤Е ╨▒╨╡╨╖ signal_wait_time_ms
	    CAST ([W1].[SignalS] AS DECIMAL (16, 2)) AS [Signal_S],--╨а╨░╨╖╨╜╨╕╤Ж╨░ ╨╝╨╡╨╢╨┤╤Г ╨▓╤А╨╡╨╝╨╡╨╜╨╡╨╝ ╤Б╨╕╨│╨╜╨░╨╗╨╕╨╖╨░╤Ж╨╕╨╕ ╨╛╨╢╨╕╨┤╨░╤О╤Й╨╡╨│╨╛ ╨┐╨╛╤В╨╛╨║╨░ ╨╕ ╨▓╤А╨╡╨╝╨╡╨╜╨╡╨╝ ╨╜╨░╤З╨░╨╗╨░ ╨╡╨│╨╛ ╨▓╤Л╨┐╨╛╨╗╨╜╨╡╨╜╨╕╤П
	    [W1].[WaitCount] AS [WaitCount],--╨з╨╕╤Б╨╗╨╛ ╨╛╨╢╨╕╨┤╨░╨╜╨╕╨╣ ╨┤╨░╨╜╨╜╨╛╨│╨╛ ╤В╨╕╨┐╨░. ╨н╤В╨╛╤В ╤Б╤З╨╡╤В╤З╨╕╨║ ╨╜╨░╤А╨░╤Й╨╕╨▓╨░╨╡╤В╤Б╤П ╨║╨░╨╢╨┤╤Л╨╣ ╤А╨░╨╖ ╨┐╤А╨╕ ╨╜╨░╤З╨░╨╗╨╡ ╨╛╨╢╨╕╨┤╨░╨╜╨╕╤П
	    CAST ([W1].[Percentage] AS DECIMAL (5, 2)) AS [Percentage],
	    CAST (([W1].[WaitS] / [W1].[WaitCount]) AS DECIMAL (16, 4)) AS [AvgWait_S],
	    CAST (([W1].[ResourceS] / [W1].[WaitCount]) AS DECIMAL (16, 4)) AS [AvgRes_S],
	    CAST (([W1].[SignalS] / [W1].[WaitCount]) AS DECIMAL (16, 4)) AS [AvgSig_S]
	FROM [Waits] AS [W1]
	INNER JOIN [Waits] AS [W2]
	    ON [W2].[RowNum] <= [W1].[RowNum]
	GROUP BY [W1].[RowNum], [W1].[wait_type], [W1].[WaitS],
	    [W1].[ResourceS], [W1].[SignalS], [W1].[WaitCount], [W1].[Percentage]
	HAVING SUM ([W2].[Percentage]) - [W1].[Percentage] < 95 -- percentage threshold
)
SELECT [WaitType]
      ,MAX([Wait_S]) as [Wait_S]
      ,MAX([Resource_S]) as [Resource_S]
      ,MAX([Signal_S]) as [Signal_S]
      ,MAX([WaitCount]) as [WaitCount]
      ,MAX([Percentage]) as [Percentage]
      ,MAX([AvgWait_S]) as [AvgWait_S]
      ,MAX([AvgRes_S]) as [AvgRes_S]
      ,MAX([AvgSig_S]) as [AvgSig_S]
  FROM ress
  group by [WaitType];

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрдк рдирд┐рдореНрди рдХреНрд╡реЗрд░реА рд╕реЗ RAM рдХреА рдХрдореА рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

SELECT [Percentage]
      ,[AvgWait_S]
  FROM [inf].[vWaits]
  where [WaitType] in (
    'PAGEIOLATCH_XX',
    'RESOURCE_SEMAPHORE',
    'RESOURCE_SEMAPHORE_QUERY_COMPILE'
  );

рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рд╕рдВрдХреЗрддрдХ рдкреНрд░рддрд┐рд╢рдд рдФрд░ AvgWait_S рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рд╡реЗ рдЕрдкрдиреА рд╕рдордЧреНрд░рддрд╛ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ, рддреЛ рдЗрд╕ рдмрд╛рдд рдХреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд RAM рдирд╣реАрдВ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╛рди рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗ рд╢реБрд░реБрдЖрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкреНрд░рддрд┐рд╢рдд>=1 рдФрд░ рдФрд╕рддWait_S>=0.005ред
рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд╝реИрдмрд┐рдХреНрд╕) рдореЗрдВ рд╕рдВрдХреЗрддрдХ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЛ рдХреНрд╡реЗрд░реАрдЬрд╝ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:

  1. рдкреНрд░рддрд┐рд╢рдд рдореЗрдВ RAM рджреНрд╡рд╛рд░рд╛ рдХрд┐рддрдиреЗ рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХреА рдЬрд╛рддреА рд╣реИ (рдРрд╕реЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд╛ рдпреЛрдЧ):
    select coalesce(sum([Percentage]), 0.00) as [Percentage]
    from [inf].[vWaits]
           where [WaitType] in (
               'PAGEIOLATCH_XX',
               'RESOURCE_SEMAPHORE',
                'RESOURCE_SEMAPHORE_QUERY_COMPILE'
      );
    
  2. рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рдХрд┐рддрдиреЗ рд░реИрдо рдкреНрд░рддреАрдХреНрд╖рд╛ рдкреНрд░рдХрд╛рд░ рд▓рдЧрддреЗ рд╣реИрдВ (рдРрд╕реЗ рд╕рднреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рдФрд╕рдд рд╡рд┐рд▓рдВрдм рдХрд╛ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп):
    select coalesce(max([AvgWait_S])*1000, 0.00) as [AvgWait_MS]
    from [inf].[vWaits]
           where [WaitType] in (
               'PAGEIOLATCH_XX',
               'RESOURCE_SEMAPHORE',
                'RESOURCE_SEMAPHORE_QUERY_COMPILE'
      );
    

рдЗрди рджреЛ рд╕рдВрдХреЗрддрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓рддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд RAM рд╣реИ рдпрд╛ рдирд╣реАрдВред

рд╕реАрдкреАрдпреВ рдЕрдзрд┐рднрд╛рд░ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐

рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХреА рдХрдореА рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, sys.dm_os_schedulers рд╕рд┐рд╕реНрдЯрдо рджреГрд╢реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдпрд╣рд╛рдВ, рдпрджрд┐ runnable_tasks_count рд▓рдЧрд╛рддрд╛рд░ 1 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рдЗрд╕ рдмрд╛рдд рдХреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред
рдХрд┐рд╕реА рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрд╝реИрдмрд┐рдХреНрд╕) рдореЗрдВ рдПрдХ рд╕рдВрдХреЗрддрдХ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд╡реЗрд░реА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:

select max([runnable_tasks_count]) as [runnable_tasks_count]
from sys.dm_os_schedulers
where scheduler_id<255;

рдЗрд╕ рд╕реВрдЪрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдкреНрдд рдореВрд▓реНрдпреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓рддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдо рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп (рд╕реАрдкреАрдпреВ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛) рд╣реИ рдпрд╛ рдирд╣реАрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЕрдиреБрд░реЛрдз рд╕реНрд╡рдпрдВ рдПрдХ рд╕рд╛рде рдХрдИ рдереНрд░реЗрдб рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдХрднреА-рдХрднреА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдХреНрд╡реЗрд░реА рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рд╕рд╣реА рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛ рдкрд╛рддрд╛ рд╣реИред рдлрд┐рд░ рдЕрдиреБрд░реЛрдз рдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдереНрд░реЗрдб рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рджрд┐рдП рдЧрдП рд╕рдордп рдкрд░ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдпрд╣ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХреА рдХрдореА рд╕реЗ рдЬреБрдбрд╝реЗ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЗрдВрддрдЬрд╛рд░ рдХрд╛ рднреА рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реАрдкреАрдпреВ рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╢реЗрдбреНрдпреВрд▓рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрддрд╛рд░ рдХреА рд╡реГрджреНрдзрд┐, рдпрд╛рдиреА рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ runnable_tasks_count рд╕рдВрдХреЗрддрдХ рдмрдврд╝реЗрдЧрд╛ред
рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕реАрдкреАрдпреВ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░рд╡рд╛рдж рдЧреБрдгреЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ 2016 рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ, рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░рд╡рд╛рдж рдЧреБрдгреЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:
MS SQL рд╕рд░реНрд╡рд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреЗ рдХреБрдЫ рдкрд╣рд▓реВред рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢

MS SQL рд╕рд░реНрд╡рд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреЗ рдХреБрдЫ рдкрд╣рд▓реВред рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢
рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП:

  1. рд╕рдорд╛рдВрддрд░рддрд╛ рдХреА рдЕрдзрд┐рдХрддрдо рдбрд┐рдЧреНрд░реА - рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдереНрд░реЗрдбреНрд╕ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ - рдХреЗрд╡рд▓ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд)
  2. рд╕рдорд╛рдВрддрд░рддрд╛ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧрдд рд╕реАрдорд╛ - рд╕рдорд╛рдВрддрд░рддрд╛ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд▓рд╛рдЧрдд (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 5 рд╣реИ)
  3. рдЕрдзрд┐рдХрддрдо рдбреАрдУрдкреА - рдереНрд░реЗрдбреНрд╕ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрддрд░ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд╡реЗрд░реА рдХреЗ рд▓рд┐рдП рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди "рд╕рдорд╛рдирд╛рдВрддрд░рддрд╛ рдХреА рдЕрдзрд┐рдХрддрдо рдбрд┐рдЧреНрд░реА" рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдореВрд▓реНрдп рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ) (рдбрд┐рдлрд╝реЙрд▓реНрдЯ 0 рд╣реИ - рдХреЗрд╡рд▓ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рд╣реА рд╕реАрдорд┐рдд рд╣реИ рдФрд░ MS SQL рд╕рд░реНрд╡рд░ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг, рд╕рд╛рде рд╣реА MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рд╕рдВрдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рдХреА "рд╕рдорд╛рдирд╛рдВрддрд░рддрд╛ рдХреА рдЕрдзрд┐рдХрддрдо рдбрд┐рдЧреНрд░реА" рд╕рдВрдкрддреНрддрд┐ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз)

рдпрд╣рд╛рдВ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫрд╛ рдиреБрд╕реНрдЦрд╛ рджреЗрдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рдпрд╛рдиреА рдЖрдкрдХреЛ рднрд╛рд░реА рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдиреБрднрд╡ рд╕реЗ, рдореИрдВ рд╕рдорд╛рдВрддрд░рддрд╛ рдЧреБрдгреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдУрдПрд▓рдЯреАрдкреА рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ:

  1. рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг-рд╡реНрдпрд╛рдкреА рдЕрдзрд┐рдХрддрдо рд╕рдорд╛рдирддрд╛ рдХреА рдбрд┐рдЧреНрд░реА рдХреЛ 1 рдкрд░ рд╕реЗрдЯ рдХрд░рдХреЗ рд╕рдорд╛рдирддрд╛ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ
  2. рд╕рдмрд╕реЗ рднрд╛рд░реА рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдереНрд░реЗрдб рдХреА рдЗрд╖реНрдЯрддрдо рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
  3. рдЪрд░рдг 2 рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдереНрд░реЗрдбреНрд╕ рдХреА рдЪрдпрдирд┐рдд рдЗрд╖реНрдЯрддрдо рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдирд╛рдВрддрд░рд╡рд╛рдж рдХреА рдЕрдзрд┐рдХрддрдо рдбрд┐рдЧреНрд░реА рд╕реЗрдЯ рдХрд░реЗрдВ, рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдЪрд░рдг 2 рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЕрдзрд┐рдХрддрдо рдбреАрдУрдкреА рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВ
  4. рд╕рдмрд╕реЗ рднрд╛рд░реА рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ рдФрд░ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреЗ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдХреА рдкрд╣рдЪрд╛рди рдХрд░реЗрдВред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рд╕рдорд╛рдВрддрд░рддрд╛ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧрдд рд╕реАрдорд╛ рдмрдврд╝рд╛рдПрдБред
    1рд╕реА, рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╕реАрдЖрд░рдПрдо рдФрд░ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рдПрдирдПрд╡реА рдЬреИрд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП, рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЙрдкрдпреБрдХреНрдд рд╣реИ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдХреЛрдИ рдорд╛рдирдХ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рддреЛ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХрд╛ рдирд┐рд╖реЗрдз рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдЙрдкрдпреБрдХреНрдд рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг рд╕реАрдкреАрдпреВ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕реАрдорд┐рдд рд╣реИред
OLAP рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП, рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реИред
рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдиреБрднрд╡ рд╕реЗ, рдореИрдВ рд╕рдорд╛рдВрддрд░рддрд╛ рдЧреБрдгреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП OLAP рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ:

  1. рд╕рдмрд╕реЗ рднрд╛рд░реА рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдереНрд░реЗрдб рдХреА рдЗрд╖реНрдЯрддрдо рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ
  2. рдЪрд░рдг 1 рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдереНрд░реЗрдбреНрд╕ рдХреА рдЪрдпрдирд┐рдд рдЗрд╖реНрдЯрддрдо рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдирд╛рдВрддрд░рд╡рд╛рдж рдХреА рдЕрдзрд┐рдХрддрдо рдбрд┐рдЧреНрд░реА рд╕реЗрдЯ рдХрд░реЗрдВ, рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдЪрд░рдг 1 рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдЕрдзрд┐рдХрддрдо рдбреАрдУрдкреА рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВ
  3. рд╕рдмрд╕реЗ рднрд╛рд░реА рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ рдФрд░ рд╕рдорд╡рд░реНрддреАрддрд╛ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдХреА рдкрд╣рдЪрд╛рди рдХрд░реЗрдВред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдпрд╛ рддреЛ рд╕рдорд╛рдВрддрд░рддрд╛ рдорд╛рди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧрдд рд╕реАрдорд╛ рдХрдо рдХрд░реЗрдВ, рдпрд╛ рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рдЪрд░рдг 1-2 рдХреЛ рджреЛрд╣рд░рд╛рдПрдВ

рдпрд╛рдиреА, рдУрдПрд▓рдЯреАрдкреА рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд╣рдо рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбрд┐рдВрдЧ рд╕реЗ рдорд▓реНрдЯреА-рдереНрд░реЗрдбрд┐рдВрдЧ рдХреА рдУрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдУрдПрд▓рдПрдкреА-рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╣рдо рдорд▓реНрдЯреА-рдереНрд░реЗрдбрд┐рдВрдЧ рд╕реЗ рд╕рд┐рдВрдЧрд▓-рдереНрд░реЗрдбрд┐рдВрдЧ рдХреА рдУрд░ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рд╕рдВрдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╖реНрдЯрддрдо рд╕рдорд╛рдирддрд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рд╕рдордЭрдирд╛ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╕рдорд╛рдВрддрд░рддрд╛ рдЧреБрдгреЛрдВ рдХреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢

рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЕрдиреБрднрд╡ рдФрд░ рдЕрдкрдиреЗ рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрднрд╡ рд╕реЗ, рдЗрд╖реНрдЯрддрдо рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рдВрд╕реНрдХрд░рдг 2008-2016 рдХреЗ рд▓рд┐рдП MS SQL рд╕рд░реНрд╡рд░ рд╕реЗрд╡рд╛ рдХреЗ рд░рди рд╕реНрддрд░ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдБ:

  1. 610 - рдЕрдиреБрдХреНрд░рдорд┐рдд рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдХрдо рд▓реЙрдЧрд┐рдВрдЧред рдХрдИ рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдФрд░ рдХрдИ рд▓реЗрди-рджреЗрди рд╡рд╛рд▓реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдореЗрдВ рдорджрдж рдорд┐рд▓ рд╕рдХрддреА рд╣реИ, рд▓рдЧрд╛рддрд╛рд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ WRITELOG рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдореЗрдВ рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ
  2. 1117 - рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рд╕рдореВрд╣ рдореЗрдВ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдСрдЯреЛрдЧреНрд░реЛрде рдереНрд░реЗрд╢реЛрд▓реНрдб рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддреА рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рд╕рдореВрд╣ рдХреА рд╕рднреА рдлрд╝рд╛рдЗрд▓реЗрдВ рдмрдврд╝рддреА рд╣реИрдВ
  3. 1118 - рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рд╕реНрддрд╛рд░реЛрдВ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░рддрд╛ рд╣реИ (рдорд┐рд╢реНрд░рд┐рдд рд╡рд┐рд╕реНрддрд╛рд░реЛрдВ рдХрд╛ рдирд┐рд╖реЗрдз), рдЬреЛ рдПрд╕рдЬреАрдПрдПрдо рдкреГрд╖реНрда рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд┐рд╢реНрд░рд┐рдд рд╡рд┐рд╕реНрддрд╛рд░реЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  4. 1224 - рддрд╛рд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рддрд╛рд▓рд╛ рд╡реГрджреНрдзрд┐ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрддреНрдпрдзрд┐рдХ рдореЗрдореЛрд░реА рдЙрдкрдпреЛрдЧ рд▓реЙрдХ рдПрд╕реНрдХреЗрд▓реЗрд╢рди рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ
  5. 2371 - рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдЕрджреНрдпрддрди рд╕реАрдорд╛ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕рд╛рдВрдЦреНрдпрд┐рдХреА рдЕрджреНрдпрддрди рд╕реАрдорд╛ рдореЗрдВ рдмрджрд▓рддрд╛ рд╣реИред рдмрдбрд╝реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреНрд╡реЗрд░реА рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЬрд╣рд╛рдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рдЧрд▓рдд рдЧрдгрдирд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЧрд▓рдд рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЬрдирд╛рдПрдВ рдмрдирддреА рд╣реИрдВ
  6. 3226 - рддреНрд░реБрдЯрд┐ рд▓реЙрдЧ рдореЗрдВ рдмреИрдХрдЕрдк рд╕рдлрд▓рддрд╛ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рджрдмрд╛ рджреЗрддрд╛ рд╣реИ
  7. 4199 - рд╕реАрдпреВ рдФрд░ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рд╕рд░реНрд╡рд┐рд╕ рдкреИрдХ рдореЗрдВ рдЬрд╛рд░реА рдХреНрд╡реЗрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
  8. 6532-6534 - рд╕реНрдерд╛рдирд┐рдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рдХреНрд╡реЗрд░реА рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рд╕реБрдзрд╛рд░ рд╢рд╛рдорд┐рд▓ рд╣реИ
  9. 8048 - NUMA рд╡рд┐рднрд╛рдЬрд┐рдд рдореЗрдореЛрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ CPU рд╡рд┐рднрд╛рдЬрд┐рдд рдореЗрдореЛрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ
  10. 8780 - рдХреНрд╡реЗрд░реА рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдордп рдЖрд╡рдВрдЯрди рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдзреНрд╡рдЬ рдХреЗ рдмрд┐рдирд╛ рдХреБрдЫ рдЕрдиреБрд░реЛрдз рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдХреНрд╡реЗрд░реА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИ (рдмрд╣реБрдд рджреБрд░реНрд▓рдн рдмрдЧ)
  11. 8780 - 9389 - рдмреИрдЪ рдореЛрдб рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдбрд╛рдпрдиреЗрдорд┐рдХ рдЧреНрд░рд╛рдВрдЯ рдореЗрдореЛрд░реА рдмрдлрд░ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдмреИрдЪ рдореЛрдб рдСрдкрд░реЗрдЯрд░ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдореЗрдореЛрд░реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдореЗрдореЛрд░реА рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдкрд░ рдбреЗрдЯрд╛ рдХреЛ tempdb рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ 2016 рд╕реЗ рдкрд╣рд▓реЗ, рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ 2301 рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИ, рдЬреЛ рдЙрдиреНрдирдд рдирд┐рд░реНрдгрдп рд╕рдорд░реНрдерди рдЕрдиреБрдХреВрд▓рди рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдзрд┐рдХ рд╕рд╣реА рдХреНрд╡реЗрд░реА рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЪреБрдирдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рдВрд╕реНрдХрд░рдг 2016 рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕рдХрд╛ рдЕрдХреНрд╕рд░ рд▓рдВрдмреЗ рд╕рдордЧреНрд░ рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп рдкрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред
рд╕рд╛рде рд╣реА, рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЗрдВрдбреЗрдХреНрд╕ рд╡рд╛рд▓реЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 1рд╕реА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП), рдореИрдВ рдЯреНрд░реЗрд╕ рдлреНрд▓реИрдЧ 2330 рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рдЬреЛ рдЗрдВрдбреЗрдХреНрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЖрдорддреМрд░ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИред
рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ рдпрд╣рд╛рдВ
рдЙрдкрд░реЛрдХреНрдд рд▓рд┐рдВрдХ рд╕реЗ, MS SQL рд╕рд░реНрд╡рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдФрд░ рдмрд┐рд▓реНрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛрддреЗ рд╣реИрдВ рдпрд╛ рдЙрдирдХрд╛ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдЖрдк рдХреНрд░рдорд╢рдГ DBCC TRACEON рдФрд░ DBCC TRACEOFF рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ рдпрд╣рд╛рдВ
рдЖрдк DBCC TRACESTATUS рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдЕрдзрд┐рдХ
MS SQL рд╕рд░реНрд╡рд░ рд╕реЗрд╡рд╛ рдХреЗ рдСрдЯреЛрд╕реНрдЯрд╛рд░реНрдЯ рдореЗрдВ рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ SQL рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рдмрдВрдзрдХ рдкрд░ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕реЗрд╡рд╛ рдЧреБрдгреЛрдВ рдореЗрдВ -T рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрди рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛:
MS SQL рд╕рд░реНрд╡рд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдХреЗ рдХреБрдЫ рдкрд╣рд▓реВред рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢

рдкрд░рд┐рдгрд╛рдо

рдЗрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ, MS SQL рд╕рд░реНрд╡рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рдХреБрдЫ рдкрд╣рд▓реБрдУрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ рдЖрдк RAM рдХреА рдХрдореА рдФрд░ рдЦрд╛рд▓реА CPU рд╕рдордп рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдХрдИ рдЕрдиреНрдп рдХрдо рд╕реНрдкрд╖реНрдЯ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рддреБрд░рдВрдд рдкрд╣рдЪрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЯреНрд░реЗрд╕ рдлрд╝реНрд▓реИрдЧ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХреА рдЧрдИ рд╣реИред

рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ:

┬╗ SQL рд╕рд░реНрд╡рд░ рдкреНрд░рддреАрдХреНрд╖рд╛ рдЖрдБрдХрдбрд╝реЗ
┬╗ SQL рд╕рд░реНрд╡рд░ рдкреНрд░рддреАрдХреНрд╖рд╛ рдЖрдБрдХрдбрд╝реЗ рдпрд╛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдпрд╣ рдХрд╣рд╛рдБ рджрд░реНрдж рджреЗрддрд╛ рд╣реИ
┬╗ рд╕рд┐рд╕реНрдЯрдо рджреГрд╢реНрдп sys.dm_os_schedulers
┬╗ рдПрдордПрд╕ рдПрд╕рдХреНрдпреВрдПрд▓ рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рдЬрд╝реИрдмрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
┬╗ рдПрд╕рдХреНрдпреВрдПрд▓ рд▓рд╛рдЗрдлрд╕реНрдЯрд╛рдЗрд▓
┬╗ рдЯреНрд░реЗрд╕ рдЭрдВрдбреЗ
┬╗ sql.ru

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ