Introdução a Wait Types e Queues
Nivel 100
Marcos Freccia
Chapter Leader – Virtual PASS PT
Quem sou?
2 |
Database Administrator
Pass Chapter Leader – Virtual PASS PT
Pass Chapter – MCITP SC
Blog: http://marcosfreccia.wordpress.com
Twitter: @sqlfreccia
E-mail: marcosfreccia@hotmail.com
Agenda
 O que são Wait Types e Queues
 Porque estou esperando?
 O que estou esperando?
 Afinal é normal eu estar esperando?
O que são Wait Types
 Descreve o comportamento do SQL Server a
cada espera.
 A cada passo e a cada espera, um tipo de
wait ocorre.
 Baseado em estatisticas o SQL Server
determina pelo o que está esperando
O que são Queues
 Queues são representados por objetos do
Performance Monitor.
 Baseado em queues você determina o
estado do recurso mais utilizado
 Cada counter é considerado uma queue.
Porque estou esperando?
 Você precisa de um recurso.
 Você não tem o recurso
 Logo você espera pelo recurso
 SQLOS
 Schedulers
 Threads (Workers)
Porque estou esperando?
Running
SuspendedRunnable
O que estou esperando?
 Waits são dividas em grupos
 Resource Waits
 Queue Waits
 External Waits
O que estou esperando?
 Resource Waits
 IO
 Memoria
 CPU
 Rede
 Queue Waits
 Background tasks
 Deadlock Monitoring
 Lazy Writter
 Checkpoint
 External Waits
 Linked Server
 Extended Stored Procedures
O que estou esperando?
 Como monitorar?
sys.dm_os_wait_stats
 wait_type
 waiting_tasks_count
 wait_time_ms
 max_wait_time_ms
 signal_wait_time_ms
O que estou esperando?
 Como monitorar?
sys.dm_os_waiting_tasks
 session_id
 wait_duration_ms
 blocking_session_id
 resource_description
O que estou esperando?
 Como monitorar?
 Performance Monitor
 SQL Server Objects
 Windows Objects
O que estou esperando?
 Waits comuns
 LCK_M_*
 CXPACKET
 SOS_SCHEDULER_YIELD
 WRITELOG
 LOGBUFFER
 ASYNC_NETWORK_IO
 PAGEIOLATCH_*
 PAGELATCH_*
O que estou esperando?
 Performance counters comuns
 PhysicalDisk
 Avg Disk Bytes/Read
 Avg Disk Bytes/Write
 Avg Disk sec/Read
 Avg Disk sec/Write
 SQLServer:Buffer Manager
 Page Life Expectancy
 Checkpoint pages/sec
 SQLServer:Memory Manager
 Total Server Memory (KB)
 Target Server Memory (KB)
 Memory Grants Pending
 Performance counters comuns
 Paging File
 %Usage
 Process
 %Processor Time (sqlserv)
 SQLServer: Statistics
 Batch Requests/sec
 SQL Compilations/sec
 SQL Recompilations/sec
DEMO
 PAL
 SQL Scripts
 Gleen Berry’s script
Afinal é normal eu estar esperando?
Depende!
Materiais adicionais
 http://sqlserverperformance.wordpress.com/2013/07/09/sql-server-
diagnostic-information-queries-for-july-2013/
 http://www.sqlskills.com/blogs/paul/
 http://blogs.msdn.com/b/psssql/archive/2009/11/03/the-sql-server-wait-type-
repository.aspx
 http://sqlcat.com/sqlcat/b/whitepapers/archive/2007/11/19/sql-server-2005-
waits-and-queues.aspx
 http://pal.codeplex.com/
Dúvidas?
26/11/2011 |18 |
Patrocinadores
Obrigado
26/11/2011 |20 |

Introdução a wait types e queues

  • 1.
    Introdução a WaitTypes e Queues Nivel 100 Marcos Freccia Chapter Leader – Virtual PASS PT
  • 2.
    Quem sou? 2 | DatabaseAdministrator Pass Chapter Leader – Virtual PASS PT Pass Chapter – MCITP SC Blog: http://marcosfreccia.wordpress.com Twitter: @sqlfreccia E-mail: marcosfreccia@hotmail.com
  • 3.
    Agenda  O quesão Wait Types e Queues  Porque estou esperando?  O que estou esperando?  Afinal é normal eu estar esperando?
  • 4.
    O que sãoWait Types  Descreve o comportamento do SQL Server a cada espera.  A cada passo e a cada espera, um tipo de wait ocorre.  Baseado em estatisticas o SQL Server determina pelo o que está esperando
  • 5.
    O que sãoQueues  Queues são representados por objetos do Performance Monitor.  Baseado em queues você determina o estado do recurso mais utilizado  Cada counter é considerado uma queue.
  • 6.
    Porque estou esperando? Você precisa de um recurso.  Você não tem o recurso  Logo você espera pelo recurso  SQLOS  Schedulers  Threads (Workers)
  • 7.
  • 8.
    O que estouesperando?  Waits são dividas em grupos  Resource Waits  Queue Waits  External Waits
  • 9.
    O que estouesperando?  Resource Waits  IO  Memoria  CPU  Rede  Queue Waits  Background tasks  Deadlock Monitoring  Lazy Writter  Checkpoint  External Waits  Linked Server  Extended Stored Procedures
  • 10.
    O que estouesperando?  Como monitorar? sys.dm_os_wait_stats  wait_type  waiting_tasks_count  wait_time_ms  max_wait_time_ms  signal_wait_time_ms
  • 11.
    O que estouesperando?  Como monitorar? sys.dm_os_waiting_tasks  session_id  wait_duration_ms  blocking_session_id  resource_description
  • 12.
    O que estouesperando?  Como monitorar?  Performance Monitor  SQL Server Objects  Windows Objects
  • 13.
    O que estouesperando?  Waits comuns  LCK_M_*  CXPACKET  SOS_SCHEDULER_YIELD  WRITELOG  LOGBUFFER  ASYNC_NETWORK_IO  PAGEIOLATCH_*  PAGELATCH_*
  • 14.
    O que estouesperando?  Performance counters comuns  PhysicalDisk  Avg Disk Bytes/Read  Avg Disk Bytes/Write  Avg Disk sec/Read  Avg Disk sec/Write  SQLServer:Buffer Manager  Page Life Expectancy  Checkpoint pages/sec  SQLServer:Memory Manager  Total Server Memory (KB)  Target Server Memory (KB)  Memory Grants Pending  Performance counters comuns  Paging File  %Usage  Process  %Processor Time (sqlserv)  SQLServer: Statistics  Batch Requests/sec  SQL Compilations/sec  SQL Recompilations/sec
  • 15.
    DEMO  PAL  SQLScripts  Gleen Berry’s script
  • 16.
    Afinal é normaleu estar esperando? Depende!
  • 17.
    Materiais adicionais  http://sqlserverperformance.wordpress.com/2013/07/09/sql-server- diagnostic-information-queries-for-july-2013/ http://www.sqlskills.com/blogs/paul/  http://blogs.msdn.com/b/psssql/archive/2009/11/03/the-sql-server-wait-type- repository.aspx  http://sqlcat.com/sqlcat/b/whitepapers/archive/2007/11/19/sql-server-2005- waits-and-queues.aspx  http://pal.codeplex.com/
  • 18.
  • 19.
  • 20.