Guillermo Taylor F.
Consultor Senior TI & Especialista SQL Server
guillermotaylor@hotmail.com
http://mastergt68.wordpress....
Contexto de desempeño
Metodología de Troubleshooting
Herramientas en SQL Server 2012
Algunas mejoradas y una nueva…

Herra...
Escribir consultas eficientes
Generar índices adecuados
Crear vistas donde deben de crearse vistas
Crear funciones de usua...
Monitorear

Desplegar

Probar

Troubleshoot

Afinar/
Optimizar
Recolección de métricas

Almacenamiento de datos
significativos en el tiempo

Cálculo de medidas tipo “Baseline”
Identificar el problema

Medir el impacto

Refinar la recolección de datos
Corrección del problema

Mejorar el “Query”

Modificar la aproximación
Validar el comportamiento

Mover a producción

Confirmar con los usuarios
Monitor de actividad
Recolección de datos
Algunas “vistas dinámicas”
sys.dm_os_wait_stats
sys.dm_os_performance_counters
S...
Memory % Committed Bytes In Use Memory Available Bytes Memory Cache Bytes Memory Cache
Faults/sec Memory Committed Bytes M...
Adam Machanic’s Who is Active v11.11
http://sqlblog.com/blogs/adam_machanic/archive/
2012/03/22/released-who-is-active-v11...
Revisar el comportamiento de nuestros
servidores.
Tener mediciones base, para tener contra que
comparar.
Evaluar el rendim...
eBook gratuito "Troubleshooting SQL Server: A Guide for
the Accidental DBA“
http://www.red-gate.com/products/dba/sqlmonito...
Guillermo Taylor F.
Consultor Senior TI & Especialista SQL Server
guillermotaylor@hotmail.com
http://mastergt68.wordpress....
01 troubleshooting essentials en sql server 2012   sql pass peru
01 troubleshooting essentials en sql server 2012   sql pass peru
01 troubleshooting essentials en sql server 2012   sql pass peru
Upcoming SlideShare
Loading in …5
×

01 troubleshooting essentials en sql server 2012 sql pass peru

368 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
368
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

01 troubleshooting essentials en sql server 2012 sql pass peru

  1. 1. Guillermo Taylor F. Consultor Senior TI & Especialista SQL Server guillermotaylor@hotmail.com http://mastergt68.wordpress.com
  2. 2. Contexto de desempeño Metodología de Troubleshooting Herramientas en SQL Server 2012 Algunas mejoradas y una nueva… Herramientas de terceros Conclusiones Documentación y referencia
  3. 3. Escribir consultas eficientes Generar índices adecuados Crear vistas donde deben de crearse vistas Crear funciones de usuario e invocarlas donde corresponde Crear procedimientos almacenados adecuados a nuestros requerimientos Usar los distintos niveles de aislamiento de manera adecuada Manejo de transacciones (commit/rollback)
  4. 4. Monitorear Desplegar Probar Troubleshoot Afinar/ Optimizar
  5. 5. Recolección de métricas Almacenamiento de datos significativos en el tiempo Cálculo de medidas tipo “Baseline”
  6. 6. Identificar el problema Medir el impacto Refinar la recolección de datos
  7. 7. Corrección del problema Mejorar el “Query” Modificar la aproximación
  8. 8. Validar el comportamiento Mover a producción Confirmar con los usuarios
  9. 9. Monitor de actividad Recolección de datos Algunas “vistas dinámicas” sys.dm_os_wait_stats sys.dm_os_performance_counters Solo contadores de SQL Server sys.dm_io_virtual_file_stats Eventos extendidos (requiere otra sesión…) exec sp_server_diagnostics @repeat_interval=5 Nuevo en SQL Server 2012!
  10. 10. Memory % Committed Bytes In Use Memory Available Bytes Memory Cache Bytes Memory Cache Faults/sec Memory Committed Bytes Memory Free & Zero Page List Bytes Memory Modified Page List Bytes Memory Pages/sec Memory Page Reads/sec Memory Page Write/sec Memory Page Faults/sec Memory Pool Nonpaged Bytes Memory Pool Paged Bytes Memory Standby Cache Core Bytes Memory Standby Cache Normal Priority Bytes Memory Standby Cache Reserve Bytes Memory Pool Paged Bytes Memory Write Copies/sec Process(_Total) * Process($(TARGETPROCESS)) * Process(*) Thread Count Process(*) % Processor Time Process(*) IO Read Bytes/sec Process(*) IO Write Bytes/sec Process(*) Private Bytes Process(*) Working Set Processor(*) % Processor Time Processor(*) % User Time Processor(*) % Privileged Time Server Work Queues(*) Queue Length LogicalDisk(*) % Disk Time LogicalDisk(*) Avg. Disk Queue Length LogicalDisk(*) Avg. Disk Read Queue Length LogicalDisk(*) Avg. Disk Write Queue Length LogicalDisk(*) Avg. Disk sec/Read LogicalDisk(*) Avg. Disk sec/Write LogicalDisk(*) Avg. Disk sec/Transfer LogicalDisk(*) Disk Reads/sec LogicalDisk(*) Disk Bytes/sec LogicalDisk(*) Disk Writes/sec LogicalDisk(*) Split IO/sec System Processor Queue Length System File Read Operations/sec System File Write Operations/sec System File Control Operations/sec System File Read Bytes/sec System File Write Bytes/sec System File Control Bytes/sec Network Interface(*) Bytes Total/sec Network Interface(*) Output Queue Length $(INSTANCE):Buffer Manager Stolen pages $(INSTANCE):Buffer Manager Page life expectancy $(INSTANCE):Memory Manager Memory Grants Outstanding $(INSTANCE):Memory Manager Memory Grants Pending $(INSTANCE):Databases(_Total) Transactions/sec $(INSTANCE):Databases(tempdb) Transactions/sec $(INSTANCE):Databases(*) Active Transactions $(INSTANCE):General Statistics Logins/sec $(INSTANCE):General Statistics Logouts/sec $(INSTANCE):General Statistics User Connections $(INSTANCE):General Statistics Logical Connections $(INSTANCE):General Statistics Transactions $(INSTANCE):General Statistics Processes blocked $(INSTANCE):General Statistics Active Temp Tables $(INSTANCE):SQL Statistics Batch Requests/sec $(INSTANCE):SQL Statistics SQL Compilations/sec $(INSTANCE):SQL Statistics SQL Re-Compilations/sec $(INSTANCE):SQL Statistics SQL Attention rate $(INSTANCE):SQL Statistics Auto-Param Attempts/sec $(INSTANCE):SQL Statistics Failed Auto-Params/sec $(INSTANCE):Plan Cache(_Total) Cache Hit Ratio $(INSTANCE):Plan Cache(Object Plans) Cache Hit Ratio $(INSTANCE):Plan Cache(SQL Plans) Cache Hit Ratio $(INSTANCE):Plan Cache(Temporary Tables & Table Variables) Cache Hit Ratio $(INSTANCE):Transactions Free Space in tempdb (KB) $(INSTANCE):Workload Group Stats(*) Active requests $(INSTANCE):Workload Group Stats(*) Blocked tasks $(INSTANCE):Workload Group Stats(*) CPU usage %
  11. 11. Adam Machanic’s Who is Active v11.11 http://sqlblog.com/blogs/adam_machanic/archive/ 2012/03/22/released-who-is-active-v11-11.aspx SQL Sentry Plan Explorer v1.3 http://www.sqlsentry.net/plan-explorer/sql-serverquery-view.asp Idera’s SQL check v3.0 http://www.idera.com/Free-Tools/SQL-check/
  12. 12. Revisar el comportamiento de nuestros servidores. Tener mediciones base, para tener contra que comparar. Evaluar el rendimiento y la forma de acceso a los recursos. Debemos de ser proactivos en lugar de ser reactivos. Usar las herramientas de SQL Server 2012.
  13. 13. eBook gratuito "Troubleshooting SQL Server: A Guide for the Accidental DBA“ http://www.red-gate.com/products/dba/sqlmonitor/entrypage/tame-unruly-sql-servers-ebook Grant Fritchey’ SQL Server 2012 Query Performance Tuning eBook http://www.apress.com/9781430242031 Brent Ozar PLF’s SQL Server First Responder Kit http://www.brentozar.com/FirstResponder/ Contadores para Rendimiento de SQL Server http://msdn.microsoft.com/es-es/library/bb972264.aspx#EIAA Troubleshooting Performance Problems in SQL Server 2008 http://download.microsoft.com/download/D/B/D/DBDE79721EB9-470A-BA18-58849DB3EB3B/TShootPerfProbs2008.docx
  14. 14. Guillermo Taylor F. Consultor Senior TI & Especialista SQL Server guillermotaylor@hotmail.com http://mastergt68.wordpress.com

×