αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ MS SQL αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“

αž”αž»αž–αŸ’αžœαž€αžαžΆ

αž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹ αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž“αž·αž„αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ MS SQL Server DBMS αž”αŸ’αžšαžˆαž˜αž˜αž»αžαž“αžΉαž„αž”αž‰αŸ’αž αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ ឬ DBMS αž‘αžΆαŸ†αž„αž˜αžΌαž› αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ MS SQL Server αž‚αžΊαž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αŸ”
αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž›αžΎαž’αžαŸ’αžαž”αž‘ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Zabbix αžŠαžΎαž˜αŸ’αž”αžΈαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ MS SQL Server Database αž αžΎαž™αžœαžΆαž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ MS SQL Server αž‡αžΆαž–αž·αžŸαŸαžŸαŸ– αžšαž”αŸ€αž”αž€αŸ†αžŽαžαŸ‹αž™αŸ‰αžΆαž„αžšαž αŸαžŸαž“αžΌαžœαž’αž“αž’αžΆαž“αžŽαžΆαž˜αž½αž™αžŠαŸ‚αž›αž”αžΆαžαŸ‹ αž€αŸαžŠαžΌαž…αž‡αžΆαž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž‘αž„αŸ‹αžŠαžΆαž“αŸ”
αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αžŸαŸ’αž‚αŸ’αžšαžΈαž”αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαžαž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸ inf αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž…αž„αŸ‹αž”αžΆαž“αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–
αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸ inf

use <имя_Π‘Π”>;
go
create schema inf;

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž€αŸ’αž“αž»αž„αž€αžΆαžšαžšαž€αžƒαžΎαž‰αž€αž„αŸ’αžœαŸ‡ RAM

αžŸαžΌαž…αž“αžΆαž€αžšαžŠαŸ†αž”αžΌαž„αž“αŸƒαž€αž„αŸ’αžœαŸ‡ RAM αž‚αžΊαž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒ MS SQL Server ស៊ី 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 Server αž€αŸ†αž–αž»αž„αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ†αžŽαž½αžšαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

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 αž‡αžΆαž“αž·αž…αŸ’αž…αž“αŸ„αŸ‡ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžŸαŸ’αžαž·αžαž·αžšαž„αŸ‹αž…αžΆαŸ†αŸ”
αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αž€αžΆαžšαžαŸ’αžœαŸ‡αžαžΆαžαž“αŸƒ RAM αžαžΆαž˜αžšαž™αŸˆαžŸαŸ’αžαž·αžαž·αžšαž„αŸ‹αž…αžΆαŸ† αž…αžΌαžšαž™αžΎαž„αž”αž„αŸ’αž€αžΎαžαž‘αž·αžŠαŸ’αž‹αž—αžΆαž– inf.vWaitsαŸ–
αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‘αž·αžŠαŸ’αž‹αž—αžΆαž– inf.vWaits

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 Server instance αž˜αž·αž“αž˜αžΆαž“ RAM αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αŸ” αžαž˜αŸ’αž›αŸƒαžŸαŸ†αžαžΆαž“αŸ‹αŸ—αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž‡αžΆαž›αž€αŸ’αžαžŽαŸˆαž”αž»αž‚αŸ’αž‚αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž“αžΈαž˜αž½αž™αŸ—αŸ” αž‘αŸ„αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαžΌαž…αž“αžΆαž€αžšαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ– αž—αžΆαž‚αžšαž™>=1 αž“αž·αž„ AvgWait_S>=0.005 αŸ”
αžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž…αŸαž‰αžŸαžΌαž…αž“αžΆαž€αžšαž‘αŸ…αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ (αž§αž‘αžΆαž αžšαžŽαŸ Zabbix) αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž½αžšαž–αžΈαžšαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  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. αžαžΎαž”αŸ’αžšαž—αŸαž‘αžšαž„αŸ‹αž…αžΆαŸ† RAM αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αžαŸ’αžšαžΌαžœαž…αŸ†αžŽαžΆαž™αž–αŸαž›αž‚αž·αžαž‡αžΆαž˜αž·αž›αŸ’αž›αžΈαžœαž·αž“αžΆαž‘αžΈ (αžαž˜αŸ’αž›αŸƒαž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαž€αžΆαžšαž–αž“αŸ’αž™αžΆαž–αŸαž›αž‡αžΆαž˜αž’αŸ’αž™αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž—αŸαž‘αžšαž„αŸ‹αž…αžΆαŸ†αž‘αžΆαŸ†αž„αž’αžŸαŸ‹)αŸ–
    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'
      );
    

αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžŸαž€αŸ’αžŠαžΆαž“αž»αž–αž›αž“αŸƒαžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αž‘αž‘αž½αž›αž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαžΌαž…αž“αžΆαž€αžšαž‘αžΆαŸ†αž„αž–αžΈαžšαž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžαžΆαžαžΎαž˜αžΆαž“ RAM αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ MS SQL Server αžŠαŸ‚αžšαž¬αž‘αŸαŸ”

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžšαž€αžƒαžΎαž‰αž€αžΆαžšαž•αŸ’αž‘αž»αž€αžŸαŸŠαžΈαž—αžΈαž™αžΌαž›αžΎαžŸ

αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αž’αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαžŽαž€αž„αŸ’αžœαŸ‡αž–αŸαž›αžœαŸαž›αžΆαžŸαŸŠαžΈαž—αžΈαž™αžΌ αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž”αŸ’αžšαžΎαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αŸ’αžšαž–αŸαž“αŸ’αž’ sys.dm_os_schedulers αŸ” αž“αŸ…αž‘αžΈαž“αŸαŸ‡ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαžΌαž…αž“αžΆαž€αžš runnable_tasks_count αž‚αžΊαž’αŸ†αž‡αžΆαž„ 1 αž‡αžΆαž“αž·αž…αŸ’αž… αž“αŸ„αŸ‡αž˜αžΆαž“αž”αŸ’αžšαžΌαž”αžΆαž”αŸŠαžΈαž›αžΈαžαŸαžαŸ’αž–αžŸαŸ‹αžŠαŸ‚αž›αž…αŸ†αž“αž½αž“αžŸαŸ’αž“αžΌαž›αž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž‘αžΆαž αžšαžŽαŸ MS SQL Server αŸ”
αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž αžΆαž‰αžŸαžΌαž…αž“αžΆαž€αžšαž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ (αž§αž‘αžΆαž αžšαžŽαŸ Zabbix) αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαžΎαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

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

αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžŸαž€αŸ’αžŠαžΆαž“αž»αž–αž›αž“αŸƒαžαž˜αŸ’αž›αŸƒαžŠαŸ‚αž›αž‘αž‘αž½αž›αž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαžΌαž…αž“αžΆαž€αžšαž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžαžΆαžαžΎαž˜αžΆαž“αž–αŸαž›αžœαŸαž›αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹ (αž…αŸ†αž“αž½αž“αžŸαŸ’αž“αžΌαž›αžŸαŸŠαžΈαž—αžΈαž™αžΌ) αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž‘αžΆαž αžšαžŽαŸ MS SQL Server αžŠαŸ‚αžšαž¬αž‘αŸαŸ”
αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžœαžΆαž‡αžΆαžšαžΏαž„αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αž„αž…αžΆαŸ†αž“αžΌαžœαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆ αžŸαŸ†αžŽαž½αžšαžαŸ’αž›αž½αž“αž―αž„αž’αžΆαž…αžŸαž½αžšαžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž‡αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™αŸ” αž αžΎαž™αž–αŸαž›αžαŸ’αž›αŸ‡αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž˜αž·αž“αž’αžΆαž…αž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αžΌαžœαž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž“αŸƒαžŸαŸ†αžŽαž½αžšαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„αž“αŸ„αŸ‡αž‘αŸαŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžŸαŸ†αžŽαžΎαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž…αŸ’αžšαžΎαž“αž–αŸαž€ αžŠαŸ‚αž›αž“αŸ…αž–αŸαž›αž€αŸ†αžŽαžαŸ‹αž˜αž·αž“αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αŸ’αž“αž»αž„αž–αŸαž›αžŠαŸ†αžŽαžΆαž›αž‚αŸ’αž“αžΆαž”αžΆαž“αž‘αŸαŸ” αž αžΎαž™αž“αŸαŸ‡αž€αŸαž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαžšαž„αŸ‹αž…αžΆαŸ†αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžŸαžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαžαŸ’αžœαŸ‡αžαžΆαžαž–αŸαž›αžœαŸαž›αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž αžΎαž™αž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αŸƒαž‡αž½αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž€αŸ†αžŽαžαŸ‹αž–αŸαž›αžŠαŸ‚αž›αž”αŸ’αžšαžΎαžŸαŸ’αž“αžΌαž›αžŸαŸŠαžΈαž—αžΈαž™αžΌαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹ αž“αŸ„αŸ‡αž‚αžΊαž‡αžΆαžŸαžΌαž…αž“αžΆαž€αžš runnable_tasks_count αž“αžΉαž„αž€αžΎαž“αž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž”αŸ‚αž”αž“αŸαŸ‡αŸ”
αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡ αž˜αž»αž“αž“αžΉαž„αž”αž„αŸ’αž€αžΎαž“αž…αŸ†αž“αž½αž“ CPU cores αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ parallelism αž™αŸ‰αžΆαž„αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αŸƒ instance MS SQL Server αžαŸ’αž›αž½αž“αžœαžΆ αž αžΎαž™αž–αžΈ version 2016 αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ parallelism αž™αŸ‰αžΆαž„αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αŸƒ databases αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαŸ–
αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ MS SQL αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“

αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ MS SQL αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“
αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž’αŸ’αž“αž€αž‚αž½αžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž›αžΎαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜:

  1. Max Degree of Parallelismβ€”αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž“αž½αž“αž’αžαž·αž”αžšαž·αž˜αžΆαž“αŸƒαžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αž‘αŸ…αžαžΆαž˜αžŸαŸ†αžŽαžΎαž“αžΈαž˜αž½αž™αŸ— (αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž‚αžΊ 0β€”αž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž•αŸ’αž‘αžΆαž›αŸ‹ αž“αž·αž„αž€αžΆαžšαž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αžšαž”αžŸαŸ‹ MS SQL Server)
  2. αž€αž˜αŸ’αžšαž·αžαž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ - αžαž˜αŸ’αž›αŸƒαž”αŸ‰αžΆαž“αŸ‹αžŸαŸ’αž˜αžΆαž“αž“αŸƒαž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ (αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž‚αžΊ 5)
  3. Max DOP - αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž“αž½αž“αž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αžŠαŸ‚αž›αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαž½αžšαž“αžΈαž˜αž½αž™αŸ—αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ (αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αž·αž“αž›αžΎαžŸαž–αžΈαžαž˜αŸ’αž›αŸƒαž“αŸƒαž‘αŸ’αžšαž–αŸ’αž™αžŸαž˜αŸ’αž”αžαŸ’αžαž· "αžŸαž‰αŸ’αž‰αžΆαž”αžαŸ’αžšαž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ") (αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αžœαžΆαž‚αžΊ 0 - αž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžαŸ‚αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αžαŸ’αž›αž½αž“αžœαžΆαž•αŸ’αž‘αžΆαž›αŸ‹ αž“αž·αž„αž€αžΆαžšαž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αžšαž”αžŸαŸ‹ MS SQL Server αž€αŸαžŠαžΌαž…αž‡αžΆαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž›αžΎαž‘αŸ’αžšαž–αŸ’αž™αžŸαž˜αŸ’αž”αžαŸ’αžαž· "αž€αž˜αŸ’αžšαž·αžαž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ" αž“αŸƒ MS SQL Server αž‘αžΆαŸ†αž„αž˜αžΌαž›)

αžœαžΆαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž•αŸ’αžαž›αŸ‹αž“αžΌαžœαžšαžΌαž”αž˜αž“αŸ’αžαžŠαŸαž›αŸ’αž’αžŸαŸ’αž˜αžΎαž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ’αžšαž”αŸ‹αž€αžšαžŽαžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž“αŸ„αŸ‡αž‚αžΊαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžœαž·αž—αžΆαž‚αžŸαŸ†αžŽαž½αžšαž–αž·αž”αžΆαž€αŸ—αŸ”
αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸƒαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ OLTP αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ–

  1. αž‘αžΈαž˜αž½αž™αž”αž·αž‘αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαžŠαŸ„αž™αž€αŸ†αžŽαžαŸ‹ Max Degree of Parallelism αž‘αŸ… 1 αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž“αŸƒαž§αž‘αžΆαž αžšαžŽαŸαž‘αžΆαŸ†αž„αž˜αžΌαž›
  2. αžœαž·αž—αžΆαž‚β€‹αžŸαŸ†αžŽαž½αžšβ€‹αžŠαŸ‚αž›β€‹αž’αŸ’αž„αž“αŸ‹β€‹αž”αŸ†αž•αž»αž αž αžΎαž™β€‹αž‡αŸ’αžšαžΎαžŸβ€‹αž…αŸ†αž“αž½αž“β€‹αžαŸ’αžŸαŸ‚β€‹αžŸαŸ’αžšαž‘αžΆαž™β€‹αžŠαŸβ€‹αž›αŸ’αž’β€‹αž”αŸ†αž•αž»αžβ€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž–αž½αž€αž‚αŸαŸ”
  3. αž€αŸ†αžŽαžαŸ‹αž€αŸ†αžšαž·αžαž’αžαž·αž”αžšαž·αž˜αžΆαž“αŸƒαž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αž…αŸ†αž“αž½αž“αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž›αŸ’αž’αž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž–αžΈαž‡αŸ†αž αžΆαž“αž‘αžΈ 2 αž αžΎαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž€αŸ†αžŽαžαŸ‹αžαž˜αŸ’αž›αŸƒ DOP αž’αžαž·αž”αžšαž˜αžΆαžŠαŸ‚αž›αž‘αž‘αž½αž›αž”αžΆαž“αž–αžΈαž‡αŸ†αž αžΆαž“αž‘αžΈ 2 αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αžΈαž˜αž½αž™αŸ—αŸ”
  4. αžœαž·αž—αžΆαž‚αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž’αŸ’αž„αž“αŸ‹αž”αŸ†αž•αž»αž αž“αž·αž„αž€αŸ†αžŽαžαŸ‹αž–αžΈαž₯αž‘αŸ’αž’αž·αž–αž›αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž“αŸƒ multithreading αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαž‚αžΊ αž“αŸ„αŸ‡αžαŸ’αžšαžΌαžœαž”αž„αŸ’αž€αžΎαž“αž€αž˜αŸ’αžšαž·αžαž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ”
    αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαžΌαž…αž‡αžΆ 1C, Microsoft CRM αž“αž·αž„ Microsoft NAV αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž€αžΆαžšαž αžΆαž˜αžƒαžΆαžαŸ‹αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž–αž αž»αžαŸ’αžŸαŸ‚αž‚αžΊαžŸαž˜αžšαž˜αŸ’αž™

αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžšαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž˜αžΆαž“ Standard edition αž“αŸ„αŸ‡αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž€αžΆαžšαž αžΆαž˜αž”αŸ’αžšαžΆαž˜αž›αžΎ multi-threading αž‚αžΊαžŸαž˜αžšαž˜αŸ’αž™αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž€αžΆαžšαž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž€αŸ’αž“αž»αž„αž…αŸ†αž“αž½αž“ CPU cores αŸ”
αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαžαžΆαž„αž›αžΎαž‚αžΊαž˜αž·αž“αžŸαž˜αžšαž˜αŸ’αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ OLAP αž‘αŸαŸ”
αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸƒαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ OLAP αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ–

  1. αžœαž·αž—αžΆαž‚β€‹αžŸαŸ†αžŽαž½αžšβ€‹αžŠαŸ‚αž›β€‹αž’αŸ’αž„αž“αŸ‹β€‹αž”αŸ†αž•αž»αž αž αžΎαž™β€‹αž‡αŸ’αžšαžΎαžŸβ€‹αž…αŸ†αž“αž½αž“β€‹αžαŸ’αžŸαŸ‚β€‹αžŸαŸ’αžšαž‘αžΆαž™β€‹αžŠαŸβ€‹αž›αŸ’αž’β€‹αž”αŸ†αž•αž»αžβ€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž–αž½αž€αž‚αŸαŸ”
  2. αž€αŸ†αžŽαžαŸ‹αž€αŸ†αžšαž·αžαž’αžαž·αž”αžšαž·αž˜αžΆαž“αŸƒαž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„αž…αŸ†αž“αž½αž“αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž›αŸ’αž’αž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž–αžΈαž‡αŸ†αž αžΆαž“αž‘αžΈ 1 αž αžΎαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž€αŸ†αžŽαžαŸ‹αžαž˜αŸ’αž›αŸƒ DOP αž’αžαž·αž”αžšαž˜αžΆαžŠαŸ‚αž›αž‘αž‘αž½αž›αž”αžΆαž“αž–αžΈαž‡αŸ†αž αžΆαž“αž‘αžΈ 1 αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αžΈαž˜αž½αž™αŸ—αŸ”
  3. αžœαž·αž—αžΆαž‚αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž’αŸ’αž„αž“αŸ‹αž”αŸ†αž•αž»αž αž“αž·αž„αž€αŸ†αžŽαžαŸ‹αž–αžΈαž₯αž‘αŸ’αž’αž·αž–αž›αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž“αŸƒαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαžΌαž”αž·αž™αž”αŸαžŽαŸ’αžŽαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαž‚αžΊ αž“αŸ„αŸ‡αž”αž“αŸ’αžαž™αž€αž˜αŸ’αžšαž·αžαž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž˜αŸ’αž›αŸƒαž”αŸ‰αžΆαžšαŸ‰αžΆαž‘αŸ‚αž› αž¬αž’αŸ’αžœαžΎαž˜αŸ’αžαž„αž‘αŸ€αžαž‡αŸ†αž αžΆαž“ 1-2 αž“αŸƒαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸαŸ‡

αž“αŸ„αŸ‡αž‚αžΊαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ OLTP αž™αžΎαž„αž‘αŸ…αž–αžΈαžαŸ’αžŸαŸ‚αžαŸ‚αž˜αž½αž™αž‘αŸ…αž–αž αž»αžαŸ’αžŸαŸ‚ αž αžΎαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ OLAP αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αž™αžΎαž„αž‘αŸ…αž–αžΈαžαŸ’αžŸαŸ‚αž–αž αž»αžαŸ’αžŸαŸ‚αž‘αŸ…αžαŸ’αžŸαŸ‚αžαŸ‚αž˜αž½αž™αŸ” αžœαž·αž’αžΈαž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαžŠαŸαž›αŸ’αž’αž”αŸ’αžšαžŸαžΎαžšαž‘αžΆαŸ†αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹ αž“αž·αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž‘αžΆαž αžšαžŽαŸ MS SQL Server αž‘αžΆαŸ†αž„αž˜αžΌαž›αŸ”
αžœαžΆαž€αŸαžŸαŸ†αžαžΆαž“αŸ‹αž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαž™αž›αŸ‹αžαžΆαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž›αž€αŸ’αžαžŽαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαžαŸ’αžšαžΌαžœαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαžΆαž˜αž–αŸαž›αžœαŸαž›αžΆ αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžšαž”αžŸαŸ‹ MS SQL Server αŸ”

αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“

αž–αžΈαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž“αž·αž„αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžšαž”αžŸαŸ‹αžŸαž αžŸαŸαžœαž·αž€αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸαž›αŸ’αž’αž”αŸ’αžšαžŸαžΎαžš αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸ…αž€αž˜αŸ’αžšαž·αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ MS SQL Server αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαŸ‚ 2008-2016αŸ–

  1. 610 - αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž€αžΆαžšαž€αžαŸ‹αžαŸ’αžšαžΆαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αžŠαŸ‚αž›αž”αžΆαž“αž’αŸ’αžœαžΎαž›αž·αž”αž·αž€αŸ’αžšαž˜αŸ” αž’αžΆαž…αž‡αž½αž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αžαžΆαžšαžΆαž„αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž…αŸ†αž“αž½αž“αžŠαŸαž…αŸ’αžšαžΎαž“αž“αŸƒαž€αŸ†αžŽαžαŸ‹αžαŸ’αžšαžΆ αž“αž·αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“ αž‡αžΆαž˜αž½αž™αž“αžΉαž„ WRITELOG αž™αžΌαžšαž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αžšαž„αŸ‹αž…αžΆαŸ†αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž›αž·αž”αž·αž€αŸ’αžšαž˜
  2. 1117 - αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž―αž€αžŸαžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž―αž€αžŸαžΆαžšαžαŸ’αžšαžΌαžœαž“αžΉαž„αž€αž˜αŸ’αžšαž·αžαž›αžΌαžαž›αžΆαžŸαŸ‹αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž· αž―αž€αžŸαžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž―αž€αžŸαžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž„αŸ’αžšαžΈαž€
  3. 1118 - αž”αž„αŸ’αžαŸ†αž±αŸ’αž™αžœαžαŸ’αžαž»αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αžœαž·αžŸαžΆαž›αž—αžΆαž–αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ (αž˜αž·αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαžœαž·αžŸαžΆαž›αž—αžΆαž–αž…αž˜αŸ’αžšαž»αŸ‡) αžŠαŸ‚αž›αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αž€αŸαž“αž‘αŸ†αž–αŸαžš SGAM αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαžαžΆαž˜αžŠαžΆαž“αžœαž·αžŸαžΆαž›αž—αžΆαž–αž…αž˜αŸ’αžšαž»αŸ‡
  4. 1224 - αž”αž·αž‘αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ„αžšαž€αžΎαž“αž‘αžΎαž„αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž…αŸ†αž“αž½αž“αžŸαŸ„αŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž…αŸ’αžšαžΎαž“αž–αŸαž€αž’αžΆαž…αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„
  5. 2371 - αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž€αž˜αŸ’αžšαž·αžαž€αŸ†αžŽαžαŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžŸαŸ’αžαž·αžαž·αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžαŸαžšαž‘αŸ…αž€αž˜αŸ’αžšαž·αžαž€αŸ†αžŽαžαŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžŸαŸ’αžαž·αžαž·αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžαžΆαž˜αžœαž“αŸ’αžαŸ” αžŸαŸ†αžαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αž•αŸ‚αž“αž€αžΆαžšαžŸαŸ†αžŽαž½αžšαž“αŸ…αž›αžΎαžαžΆαžšαžΆαž„αž’αŸ† αžŠαŸ‚αž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž…αŸ†αž“αž½αž“αž€αŸ†αžŽαžαŸ‹αžαŸ’αžšαžΆαž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αžΆαŸ†αž±αŸ’αž™αž•αŸ‚αž“αž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžαž»αžŸ
  6. 3226 - αžšαžΆαžšαžΆαŸ†αž„αžŸαžΆαžšαž‡αŸ„αž‚αž‡αŸαž™αž“αŸƒαž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»αž€αŸ†αž αž»αžŸ
  7. 4199 - αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αŸ…αž›αžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž”αžΆαž“αž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž“αŸ…αž€αŸ’αž“αž»αž„ SQL Server rollups αž“αž·αž„αž€αž‰αŸ’αž…αž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜
  8. 6532-6534 - αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž€αžΆαžšαž€αŸ‚αž›αž˜αŸ’αž’αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž˜αžΆαž“αž”αŸ’αžšαž—αŸαž‘αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž αŸ†
  9. 8048 - αž”αŸ†αž”αŸ’αž›αŸ‚αž„αžœαžαŸ’αžαž»αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€ NUMA αž‘αŸ…αž‡αžΆαžœαžαŸ’αžαž»αžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αžŸαŸŠαžΈαž—αžΈαž™αžΌ
  10. 8780 - αž”αžΎαž€αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αž–αŸαž›αžœαŸαž›αžΆαž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαž•αŸ‚αž“αž€αžΆαžšαžŸαŸ†αžŽαž½αžšαŸ” αžŸαŸ†αžŽαžΎαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž‘αž„αŸ‹αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸ’αžšαžΆαž“αž…αŸ„αž› αžŠαŸ„αž™αžŸαžΆαžšαž–αž½αž€αž‚αŸαž˜αž·αž“αž˜αžΆαž“αž‚αž˜αŸ’αžšαŸ„αž„αžŸαŸ†αžŽαž½αžš (αž‡αžΆαž€αŸ†αž αž»αžŸαžŠαŸαž€αž˜αŸ’αžšαž˜αž½αž™)
  11. 8780 - 9389 - αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αžŽαŸ’αžαŸ„αŸ‡αž’αžΆαžŸαž“αŸ’αž“αž”αž“αŸ’αžαŸ‚αž˜αžαžΆαž˜αžœαž“αŸ’αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžšαžšαž”αŸ€αž”αž”αžΆαž…αŸ‹ αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžšαžšαž”αŸ€αž”αž”αžΆαž…αŸ‹αžŸαŸ’αž“αžΎαžŸαž»αŸ†αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αž“αŸ’αžαŸ‚αž˜ αž“αž·αž„αž‡αŸ€αžŸαžœαžΆαž„αž€αžΆαžšαž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ… tempdb αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž”αž“αŸ’αžαŸ‚αž˜

αžœαžΆαž€αŸαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αžΎαž€ trace flag 2016 αž˜αž»αž“αž–αŸαž›αž€αŸ†αžŽαŸ‚ 2301 αžŠαŸ‚αž›αž’αžΆαž…αž±αŸ’αž™αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž€αž˜αŸ’αžšαž·αžαžαŸ’αž–αžŸαŸ‹ αž αžΎαž™αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž‡αž½αž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž•αŸ‚αž“αž€αžΆαžšαžŸαŸ†αžŽαž½αžšαž”αŸ’αžšαžŸαžΎαžšαž‡αžΆαž„αž˜αž»αž“αŸ” αž‘αŸ„αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αŸ†αžŽαŸ‚ 2016 αž˜αž€ αž‡αžΆαžšαžΏαž™αŸ—αžœαžΆαž‡αŸ‡αž₯αž‘αŸ’αž’αž·αž–αž›αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž‘αŸ…αž›αžΎαž–αŸαž›αžœαŸαž›αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž˜αžΌαž›αŸ”
αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžš αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αž›αž·αž”αž·αž€αŸ’αžšαž˜αž…αŸ’αžšαžΎαž“ (αž§αž‘αžΆαž αžšαžŽαŸ αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ 1C) αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš trace flag 2330 αžŠαŸ‚αž›αž”αž·αž‘αž€αžΆαžšαž”αŸ’αžšαž˜αžΌαž›αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž›αž·αž”αž·αž€αŸ’αžšαž˜ αžŠαŸ‚αž›αž‡αžΆαž‘αžΌαž‘αŸ…αž˜αžΆαž“αž₯αž‘αŸ’αž’αž·αž–αž›αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž›αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ”
αž’αŸ’αž“αž€αž’αžΆαž…αžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž”αž“αŸ’αžαŸ‚αž˜αž’αŸ†αž–αžΈαž‘αž„αŸ‹αžŠαžΆαž“ αž“αŸ…αž‘αžΈαž“αŸαŸ‡
αž–αžΈαžαŸ†αžŽαžαžΆαž„αž›αžΎ αžœαžΆαž€αŸαžŸαŸ†αžαžΆαž“αŸ‹αž•αž„αžŠαŸ‚αžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαž–αž·αž…αžΆαžšαžŽαžΆαž›αžΎαž€αŸ†αžŽαŸ‚ αž“αž·αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžšαž”αžŸαŸ‹ MS SQL Server αžŠαžΌαž…αž‡αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ†αžŽαŸ‚αžαŸ’αž˜αžΈαž‡αžΆαž„αž“αŸαŸ‡ αž‘αž„αŸ‹αžŠαžΆαž“αž˜αž½αž™αž…αŸ†αž“αž½αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž¬αž‚αŸ’αž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αŸ”
αž’αŸ’αž“αž€αž’αžΆαž…αž”αžΎαž€ αž¬αž”αž·αž‘αž‘αž„αŸ‹αžŠαžΆαž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ DBCC TRACEON αž“αž·αž„ DBCC TRACEOFF αžšαŸ€αž„αž‚αŸ’αž“αžΆαŸ” αž˜αžΎαž›αž–αŸαžαŸŒαž˜αžΆαž“αž›αž˜αŸ’αž’αž·αžαž”αž“αŸ’αžαŸ‚αž˜ αž“αŸ…αž‘αžΈαž“αŸαŸ‡
αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαž‘αž„αŸ‹αžŠαžΆαž“αžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ DBCC TRACESTATUSαŸ– αž–αŸαžαŸŒαž˜αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜
αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž‘αž„αŸ‹αžŠαžΆαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž”αž‰αŸ’αž…αžΌαž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ MS SQL Server αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹ SQL Server Configuration Manager αž αžΎαž™αž”αž“αŸ’αžαŸ‚αž˜αž‘αž„αŸ‹αžŠαžΆαž“αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžαžΆαž˜αžšαž™αŸˆ -T αž“αŸ…αž€αŸ’αž“αž»αž„αž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ–
αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ MS SQL αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŽαŸ‚αž“αžΆαŸ†αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‘αž„αŸ‹αžŠαžΆαž“

αž›αž‘αŸ’αž’αž•αž›

αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡αž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ MS SQL Server αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž€αŸ†αžŽαžαŸ‹αž’αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαžŽαž€αž„αŸ’αžœαŸ‡ RAM αž“αž·αž„αž–αŸαž›αžœαŸαž›αžΆαžŸαŸŠαžΈαž—αžΈαž™αžΌαžŠαŸ„αž™αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒ αž–αŸ’αžšαž˜αž‘αžΆαŸ†αž„αž”αž‰αŸ’αž αžΆαž˜αž½αž™αž…αŸ†αž“αž½αž“αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαŸ‚αž›αž˜αž·αž“αžŸαžΌαžœαž…αŸ’αž”αžΆαžŸαŸ‹αŸ” αž‘αž„αŸ‹αžŠαžΆαž“αžŠαŸ‚αž›αž”αŸ’αžšαžΎαž‡αžΆαž‘αžΌαž‘αŸ…αž”αŸ†αž•αž»αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αŸ”

αž”αŸ’αžšαž—αž–:

Β» SQL Server αžšαž„αŸ‹αž…αžΆαŸ†αžŸαŸ’αžαž·αžαž·
Β» SQL Server αžšαž„αŸ‹αž…αžΆαŸ†αžŸαŸ’αžαž·αžαž· αž¬αžŸαžΌαž˜αž”αŸ’αžšαžΆαž”αŸ‹αžαŸ’αž‰αž»αŸ†αž–αžΈαž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžœαžΆαžˆαžΊ
Β» αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αž”αŸ’αžšαž–αŸαž“αŸ’αž’ sys.dm_os_schedulers
Β» αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Zabbix αžŠαžΎαž˜αŸ’αž”αžΈαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ MS SQL Server Database
Β» αžšαž”αŸ€αž”αžšαžŸαŸ‹αž“αŸ… SQL
Β» αž‘αž„αŸ‹αžŠαžΆαž“
Β» sql.ru

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹