En esta sesión veremos dos novedades que ofrece SQL Server 2014 para gestionar la concurrencia de las cargas transaccionales de los sistemas OLTP de forma muy transparente. La durabilidad diferida de transacciones permite "aligerar" el acceso al archivo de transacciones penalizando ligeramente la "transaccionalidad completa" de la operación; veremos pros y contras de esta operación. Las mejoras en gestión de bloqueos permitirán que operaciones de mantenimiento no se vean bloqueadas (o bloqueen) las operaciones del "día a día" del sistema transaccional.
1. Durabilidad diferida de transacciones y mejoras en gestión de bloqueos ( by Eladio Rincón)
Enrique Catala Bañuls
MVP , Mentor
ecatala@solidq.com
Twitter: @enriquecatala
www.enriquecatala.com
2. 3 Sponsor Sessions at 11:15
Don’t miss them, they might be getting distributing some awesome prizes!
Attunity
SolidQ
ApexSQL
Also Raffle prizes at the end of the event provided by
Cisco, SolidQ, Attunity, ApexSQL & Microsoft
4. Agenda
1.Transacciones durabilidad diferida en SQL Server 2014
Transacciones en SQL Server 2014
Transacciones Diferidas
Ejemplos y Escenarios de Uso
2.Nuevas Operaciones ONLINE
Prioridad en Bloqueos
Reconstrucción online de particiones
6. Transacciones en SQL Server 2014
Pros / Contras
Tradicionales
Sin perdida datos
Cuello de botella en Log
Diferidas
Perdida datos posible
Reducción esperas
Escribimos en lotes
Menos operaciones E/S disco
7. Transacciones Diferidas
Consideraciones
Son visibles para el resto de transacciones en registro
Con alto grado de simultaneidad es posible contención pero mucho menor que con las tradicionales
Utilizar en: Logs, Simuladores, Cargas masivas, Cuellos de Botella por Log Transacciones
Pero asumiendo que: ES POSIBLE LA PERDIDA DE DATOS
8. Durabilidad Transacciones Diferidas
Cuando se escribe a disco?
Una transacción tradicional de la misma bbdd se confirma
Sys.sp_flush_log
El buffer de registro de transacciones en memoria se llena y se vacía en disco automáticamente.
9. Modos Configuración BBDD
Modos de Configuración
Disabled
Allowed
Forced
ALTER DATABASE <BBDD> SET DELAYED DURABILITY =
COMMIT
[ { TRAN | TRANSACTION } ]
[ transaction_name| @tran_name_variable]
[ WITH ( DELAYED_DURABILITY = { OFF | ON } ) ]
10. Resumen Opciones
Combinatoria
DELAYEDDURABILITY EN BASE DE DATOS
COMMIT TRANSACCION
DISABLED
ALLOWED
FORCED
DELAYED_DURABILITY = OFF
Totalmente durable(Tradicional)
Totalmente durable(Tradicional)
Durabilidad diferida
DELAYED_DURABILITY = ON
Totalmente durable(Tradicional)
Durabilidad diferida
Durabilidad diferida
12. Bucles While
Cursores
Escenarios de Uso
Logs
Cargas Masivas (Cubos)
Procesos Perdida Datos
13. Agenda
1.Transacciones durabilidad diferida en SQL Server 2014
SQL Server 2014 Transacciones
Transacciones Diferidas
Durabilidad Transacciones Diferidas
Ejemplos y Escenarios de Uso
2.Nuevas Operaciones ONLINE
Reconstrucción online de particiones
Prioridad en Bloqueos
14. •Timeouts o caidade rendimiento
•Muchosrecursos(CPU, disco, memoria)
•Saturaciónde transasctionlog
•Impactoencargasde mission crítica
•Rebuild online (índiceenteroentablasparticionadas)
•Rebuild offline (a nivelde partición)
•BloqueoExclusivode Tabla(with Sch-M lock) durantela operación
ReconstrucciónONLINE de particiones
15. Granularidad
Accesibilidad
Lock Priority
Unao variasparticiones
Tablaaccesiblepara DML y bloqueosleves(al principio y al final)
Utilizael gestorde prioridadde bloqueos
Beneficiosde SPOIR (Singles Partition Online Index Rebuild)
Disponibilidad
Reducciónde downtime enmission crítica
Ahorrode Recursos
Mejorusode recursos(CPU, memoria, disco y log)
17. •Blocking transactions need to be completed before DDL
•SWITCH/OIR will block new transactions
•Workload slow down or timeouts
•Impact to Tier1 mission-critical OLTP workloads
Partition SWITCH
•Short Sch-M lock on source and target tables
Online Index Rebuild (OIR)
•Short table S and Sch-M lock
Prioridaden Gestiónde Bloqueos
21. Agenda
1.Transacciones durabilidad diferida en SQL Server 2014
SQL Server 2014 Transacciones
Transacciones Diferidas
Durabilidad Transacciones Diferidas
Ejemplos y Escenarios de Uso
2.Nuevas Operaciones ONLINE
Prioridad en Bloqueos
Reconstrucción online de particiones