SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Guillermo Taylor F.
Consultor Senior TI & Especialista SQL Server
guillermotaylor@hotmail.com
http://mastergt68.wordpress.com
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
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)
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
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!
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 %
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/
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.
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
Guillermo Taylor F.
Consultor Senior TI & Especialista SQL Server
guillermotaylor@hotmail.com
http://mastergt68.wordpress.com

Weitere ähnliche Inhalte

Andere mochten auch

NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.
NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.
NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.nenukiita
 
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...Stephen Tindi
 
Descartes, locke y hume comparación
Descartes, locke y hume comparaciónDescartes, locke y hume comparación
Descartes, locke y hume comparación6NadineS
 
Recozimento e normalização
Recozimento e normalizaçãoRecozimento e normalização
Recozimento e normalizaçãoHertz Oliveira
 
Verb to Be
Verb to BeVerb to Be
Verb to Benlogo
 

Andere mochten auch (11)

Presentación nutricion
Presentación nutricionPresentación nutricion
Presentación nutricion
 
Heranca ligada sexo
Heranca ligada sexoHeranca ligada sexo
Heranca ligada sexo
 
NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.
NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.
NACIMIENTO DE UN PROYECTO DE INVESTIGACIÓN CUANTITATIVA, CUALITATIVA O MIXTA.
 
Ligacao genica
Ligacao genicaLigacao genica
Ligacao genica
 
Determinacao sexo
Determinacao sexoDeterminacao sexo
Determinacao sexo
 
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...
Theorical basis: Excellence, Critical and Rhetorical theories in Public Relat...
 
Descartes, locke y hume comparación
Descartes, locke y hume comparaciónDescartes, locke y hume comparación
Descartes, locke y hume comparación
 
Eletroerosão
EletroerosãoEletroerosão
Eletroerosão
 
Termofixos
TermofixosTermofixos
Termofixos
 
Recozimento e normalização
Recozimento e normalizaçãoRecozimento e normalização
Recozimento e normalização
 
Verb to Be
Verb to BeVerb to Be
Verb to Be
 

Ähnlich wie 01 troubleshooting essentials en sql server 2012 sql pass peru

02 troubleshooting essentials sql server profiler - sql pass peru
02 troubleshooting essentials   sql server profiler - sql pass peru02 troubleshooting essentials   sql server profiler - sql pass peru
02 troubleshooting essentials sql server profiler - sql pass peruGuillermo Taylor
 
Tecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreoTecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreoSpanishPASSVC
 
Curso sql server_administracion
Curso sql server_administracionCurso sql server_administracion
Curso sql server_administracionSalvador Ramos
 
SQLSaturday 346 El Salvador 2015 Cubes Performance
SQLSaturday 346 El Salvador 2015 Cubes PerformanceSQLSaturday 346 El Salvador 2015 Cubes Performance
SQLSaturday 346 El Salvador 2015 Cubes PerformanceMarco Tulio Gómez Reyes
 
Escalabilidad - Apache y MySQL
Escalabilidad - Apache y MySQLEscalabilidad - Apache y MySQL
Escalabilidad - Apache y MySQLLorena Fernández
 
POLITICAS DE SEGURIDAD
POLITICAS DE SEGURIDADPOLITICAS DE SEGURIDAD
POLITICAS DE SEGURIDADFelipe Pela
 
SERVER 2003 POLITICAS DE SEGURIDAD
SERVER 2003 POLITICAS DE SEGURIDADSERVER 2003 POLITICAS DE SEGURIDAD
SERVER 2003 POLITICAS DE SEGURIDADFelipe Pela
 
Efc programación .net-luis fernando aguas - 22012022 1700
Efc programación .net-luis fernando aguas - 22012022 1700Efc programación .net-luis fernando aguas - 22012022 1700
Efc programación .net-luis fernando aguas - 22012022 1700Luis Fernando Aguas Bucheli
 
SQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes PerformanceSQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes PerformanceMarco Tulio Gómez Reyes
 
Clase 5 bases de datos
Clase 5   bases de datosClase 5   bases de datos
Clase 5 bases de datoscarlosgalan12
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxLuis Fernando Aguas Bucheli
 
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...Eladio Rincón Herrera
 
gbd semana 6.pdf
gbd semana 6.pdfgbd semana 6.pdf
gbd semana 6.pdfAndy317060
 
Optimizacion de Modelos Multidimensionales con Analysis Services
Optimizacion de Modelos Multidimensionales con Analysis ServicesOptimizacion de Modelos Multidimensionales con Analysis Services
Optimizacion de Modelos Multidimensionales con Analysis ServicesMarco Tulio Gómez Reyes
 

Ähnlich wie 01 troubleshooting essentials en sql server 2012 sql pass peru (20)

02 troubleshooting essentials sql server profiler - sql pass peru
02 troubleshooting essentials   sql server profiler - sql pass peru02 troubleshooting essentials   sql server profiler - sql pass peru
02 troubleshooting essentials sql server profiler - sql pass peru
 
Tecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreoTecnicas avanzadas de monitoreo
Tecnicas avanzadas de monitoreo
 
Curso sql server_administracion
Curso sql server_administracionCurso sql server_administracion
Curso sql server_administracion
 
SQLSaturday 346 El Salvador 2015 Cubes Performance
SQLSaturday 346 El Salvador 2015 Cubes PerformanceSQLSaturday 346 El Salvador 2015 Cubes Performance
SQLSaturday 346 El Salvador 2015 Cubes Performance
 
Escalabilidad - Apache y MySQL
Escalabilidad - Apache y MySQLEscalabilidad - Apache y MySQL
Escalabilidad - Apache y MySQL
 
POLITICAS DE SEGURIDAD
POLITICAS DE SEGURIDADPOLITICAS DE SEGURIDAD
POLITICAS DE SEGURIDAD
 
SERVER 2003 POLITICAS DE SEGURIDAD
SERVER 2003 POLITICAS DE SEGURIDADSERVER 2003 POLITICAS DE SEGURIDAD
SERVER 2003 POLITICAS DE SEGURIDAD
 
Aplicaciones En Capas
Aplicaciones En CapasAplicaciones En Capas
Aplicaciones En Capas
 
Efc programación .net-luis fernando aguas - 22012022 1700
Efc programación .net-luis fernando aguas - 22012022 1700Efc programación .net-luis fernando aguas - 22012022 1700
Efc programación .net-luis fernando aguas - 22012022 1700
 
Db2 10 afinamiento
Db2 10   afinamientoDb2 10   afinamiento
Db2 10 afinamiento
 
Funcion de un DBA.ppt
Funcion de un DBA.pptFuncion de un DBA.ppt
Funcion de un DBA.ppt
 
SQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes PerformanceSQLSaturday 322 Guatemala 2014 Cubes Performance
SQLSaturday 322 Guatemala 2014 Cubes Performance
 
Clase 5 bases de datos
Clase 5   bases de datosClase 5   bases de datos
Clase 5 bases de datos
 
Clases 30 05
Clases 30 05Clases 30 05
Clases 30 05
 
SQL_ADO.NET.ppt
SQL_ADO.NET.pptSQL_ADO.NET.ppt
SQL_ADO.NET.ppt
 
SQL_ADO.NET.pptx
SQL_ADO.NET.pptxSQL_ADO.NET.pptx
SQL_ADO.NET.pptx
 
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptxEFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
EFC-Programación .net-Luis Fernando Aguas - 15012022 1500.pptx
 
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...
Some Features on SQL Server 2012 from the Accidental DBA and the ITPro perspe...
 
gbd semana 6.pdf
gbd semana 6.pdfgbd semana 6.pdf
gbd semana 6.pdf
 
Optimizacion de Modelos Multidimensionales con Analysis Services
Optimizacion de Modelos Multidimensionales con Analysis ServicesOptimizacion de Modelos Multidimensionales con Analysis Services
Optimizacion de Modelos Multidimensionales con Analysis Services
 

01 troubleshooting essentials en sql server 2012 sql pass peru

  • 1. Guillermo Taylor F. Consultor Senior TI & Especialista SQL Server guillermotaylor@hotmail.com http://mastergt68.wordpress.com
  • 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. 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)
  • 5. Recolección de métricas Almacenamiento de datos significativos en el tiempo Cálculo de medidas tipo “Baseline”
  • 6. Identificar el problema Medir el impacto Refinar la recolección de datos
  • 7. Corrección del problema Mejorar el “Query” Modificar la aproximación
  • 8. Validar el comportamiento Mover a producción Confirmar con los usuarios
  • 9.
  • 10. 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!
  • 11.
  • 12. 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 %
  • 13. 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/
  • 14.
  • 15. 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.
  • 16. 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
  • 17. Guillermo Taylor F. Consultor Senior TI & Especialista SQL Server guillermotaylor@hotmail.com http://mastergt68.wordpress.com