Top Banner
Troubleshooting de Bloqueos Parte I Ahías Portillo (El Salvador), DPA SolidQ MVP | MCT | MCTIP| MCTS
20

Sql Server - Troubleshooting De Bloqueos (Parte I)

Jul 26, 2015

Download

Technology

Ahias Portillo
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Sql Server - Troubleshooting De Bloqueos (Parte I)

Troubleshooting de BloqueosParte I

Ahías Portillo (El Salvador), DPA SolidQ

MVP | MCT | MCTIP| MCTS

Page 2: Sql Server - Troubleshooting De Bloqueos (Parte I)

Expositor

Arquitecto de plataforma de Datos en SolidQ. Cuenta con 9 años de experiencia en desarrollo de soluciones informáticas, ha desarrollado proyectos para 8 países distintos en el área de Centro América, Estados Unidos y El Caribe.

Cuenta con dos especialidades enfocadas a base de datos e inteligencia de negocios, actualmente es reconocido como uno de los 4 mil “Microsoft Most Valuable Professional” en el mundo.

Fundador de la comunidad “El Rincón de Sql Server”

http://www.elrincondesqlserver.com/

https://www.facebook.com/groups/elrincondesqlserver/

http://www.youtube.com/user/elrincondesqlserver

Page 3: Sql Server - Troubleshooting De Bloqueos (Parte I)

Troubleshooting de BloqueosParte I

Sesión Nivel 200. Orientado a DBA y entusiastas del

conocimiento.

Page 5: Sql Server - Troubleshooting De Bloqueos (Parte I)

Transacciones

Transacciones

AtomicidadConsistencia

AislamientoDurabilidad

Page 6: Sql Server - Troubleshooting De Bloqueos (Parte I)

Transacciones

(Guía de versiones de fila y bloqueo de transacciones de SQL Server, https://technet.microsoft.com/es-es/library/jj856598(v=sql.110).aspx)

Page 7: Sql Server - Troubleshooting De Bloqueos (Parte I)

Concurrencia

Operaciones Múltiples

Pesimista

Optimista

Page 8: Sql Server - Troubleshooting De Bloqueos (Parte I)

Problemas de concurrencia

LostUpdate

Dirty Read

Non- Reatable Reads

Phantom Reads

Double Reads

HalloweenEffect

Page 9: Sql Server - Troubleshooting De Bloqueos (Parte I)

DEMO

Page 10: Sql Server - Troubleshooting De Bloqueos (Parte I)

Isolation Levels

Definen el nivel de aislamiento de una transacción, en otras palabras define como el motor realiza los bloqueos para garantizar ACID.

Page 11: Sql Server - Troubleshooting De Bloqueos (Parte I)

Isolation Levels

Nivel de Aislamiento

Dirty Read

Nonrepeatable Read

Phantom Control de concurrencia

Read Uncommitted X X X Pesimista(Bloqueo toda la

tabla)

Read Committed(Locking)

- X X Pesimista

Read Committed(Snapshot)

- X X Optimista

Repeatable Read - - X Pesimista

Snapshot - - - Optimista

Serializable - - - Pesimista

Page 12: Sql Server - Troubleshooting De Bloqueos (Parte I)

Bloqueos

Bloqueos Compartidos (Consulta)

Bloqueos exclusivos (Insert, Delete, Update)

Page 13: Sql Server - Troubleshooting De Bloqueos (Parte I)

Bloqueos

(Table 13-3 Sql Server Lock Models, Microsoft Sql Server 2012 Internals)

Page 14: Sql Server - Troubleshooting De Bloqueos (Parte I)

Bloqueos

(Table 13-3 Sql Server Lock Models, Microsoft Sql Server 2012 Internals)

Page 15: Sql Server - Troubleshooting De Bloqueos (Parte I)

Niveles de Bloqueos

Tabla

Pagina

Pagina

Pagina

Fila

Fila

Fila

Fila

Fila

Fila

Fila

Fila

Fila

Page 16: Sql Server - Troubleshooting De Bloqueos (Parte I)

DEMO

Page 17: Sql Server - Troubleshooting De Bloqueos (Parte I)

Deadlock

Sucede cuando dos o mas proceso están a la espera de un recurso, pero que ninguno puede finalizar por otro impide conseguir el recurso.

Page 18: Sql Server - Troubleshooting De Bloqueos (Parte I)

Deadlock

(FIGURE 13-5 A cycle deadlock resulting from two processes, each holding a resource needed by the other., Microsoft Sql Server 2012 Internals)

Page 19: Sql Server - Troubleshooting De Bloqueos (Parte I)

DEMO