You are on page 1of 28

Alta Disponibilidad en SQL Server 2005

Rubn Garrigs Solid Quality Mentors http://www.solidq.com


1

Solid Quality Mentors


Mentores

Fernando G. Guerrero, Miguel Egea, Alejandro Leguzamo, Jess Lpez, Jordi Rambla, Eladio Rincn, Daniel Seara, Guillermo Som, Antonio Soto, Adolfo Wiernik,

+80 mentores en todo el mundo, 45 MVPs, 5 RDs. Ayudando a obtener lo mejor de SQLServer y .NET con

Formacin Consultora Mentoring


2

http://blogs.solidq.com/es http://blogs.solidq.com/ES/ElRinconDelDBA

Objetivos

Conocer que nos ofrece SQL Server 2005 para Mostrar el funcionamiento de alguna de estas
capacidades.

mantener una alta disponibilidad de la plataforma de datos de nuestro negocio

Alta disponibilidad

Acceso continuo y confiable a la informacin y los


sistemas que la manejan.

Disponibilidad 24x7, una utopa? Presin para reducir costes


Hardware Equipos de IT Costes asociados (formacin, licencias, etc.)

Que nos impide la disponibilidad

Operaciones de mantenimiento de la base de datos Limitaciones en el acceso concurrente Errores o desastres en el servidor de base de datos

Caractersticas

Operaciones sobre ndices online Failover Clustering Database Mirroring (BD en espejo) Database Snapshot (instantneas de BD) Mejoras en la recuperacin de datos

Indexacin avanzada

Cuesta encontrar periodos para


el mantenimiento?

Indexacin lenta? Indexacin sin bloqueos? Y si queremos aadir un ndice?

Indexacin ONLINE

Disponibilidad de la tabla
Paralelismo

Solo se bloquea un instante al principio y al final del indexado

Consume ms espacio
Lleva ms tiempo

Si generamos un nuevo ndice cluster se necesita al menos 2x

Con y sin ONLINE

La duracin del proceso es ms lenta que en modo OFFLINE Depende de la carga, el sistema de IO, etc.
8

DEMOSTRACIN: INDEXACIN
Indexacin on-line

Failover clustering

Complicado de configurar Hardware especializado y almacenamiento


compartido

Hasta 8 nodos Tiempo de recuperacin variable (~20s) Failover a nivel de instancia de SQL Server
10

Database Mirroring

Funcionamiento de Database Mirroring


oModo sncrono oModo asncrono

nicamente 2 nodos (principal secundario)


oAlternativa a ms nodos Log shipping

Tiempo de recuperacin rpido (~3s)

11

Cmo funciona Database Mirroring


Modo sncrono alta disponibilidad

Cliente

7. Reconocimiento (ACK) 1. Transaccin

Testigo
2. Transfiere a espejo 6. Reconocimiento (ACK)
4. Escribe en log

2. Escribe en Log 3. Log escrito

Log escrito Data

Data

Log

Log

Principal
12

Mirror

Cmo funciona Database Mirroring


Modo asncrono alto rendimiento

Cliente

7. Reconocimiento (ACK) 1. Transaccin

2. Transfiere a espejo 6. Reconocimiento (ACK)


4. Escribe en log 2. Escribe en Log 3. Log escrito Log escrito Data

Data

Log

Log

Principal
13

Mirror

Niveles de sincronismo

FULL (sncrono)
Se confirma transaccin en Principal slo cuando la
transaccin es registrada en el Mirror
o La menor perdida de datos

o Requerido para recuperaciones automticas o Impone dependencia de comunicacin mutua

OFF (asncrono)

Se confirma la transaccin en Principal segn es registrada


o No espera confirmacin en Mirror
o Permite independencia entre servidores

14

Consideraciones Failover
Modo Sncrono con testigo Testigo Si Failover Posible prdida automtico de datos Yes No

Sncrono sin testigo Asncrono

No No

No No

No Si

15

Consideraciones
Permite tener alta disponibilidad con un coste mucho
ms reducido que una solucin en cluster

Al igual que en la replicacin se utiliza el log de Redireccin automtica si:

transacciones el cual puede crecer mucho de tamao si las comunicaciones fallan.

Modo asncrono requiere EE Para el testigo podemos usar incluso Express Edition
16

ADO.NET o SQL Native Client Cadena de conexin: Data Source=A; Failover Partner=B

DEMOSTRACIN: DATABASE MIRRORING


Configuracin de mirroring y demostracin de catstrofe

17

Database snapshot
Permite tener una copia de solo lectura de una base de
datos en un instante de tiempo

Diversos campos de aplicacin Permite restaurar la base de datos al instante del snapshot OJO! No sustituye a los backups
Inicializacin instantnea Uso de disco optimizado

No permite el avance en el tiempo aplicando logs adicionales

Informes/operaciones masivas lectura Proteccin ante fallos humanos (deletes/updates)

18

Cmo funciona
CREATE DATABASE dbSnap AS SNAPSHOT OF mydb
USE mydb UPDATE (pages 4, 9, 10)

mydb Database

Page
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

USE dbSnap dbSnap SELECT (pages 4, 6, 9, 10, 14)


19

Read-Only Database Snapshot

DEMOSTRACIN: DATABASE SNAPSHOT


Snapshot y recuperacin

20

Disponibilidad parcial de la BD

Los datos no daados siguen accesibles Podemos comprobar el estado de los ficheros en la
vista sys.database_files

Las pginas erroneas se detectan y escriben en la tabla


suspect_pages en msdb

Alertas configurables:
Notificacin de fichero daado Podemos poner offline la base de datos si hay un error Automatizar la recuperacin si son datos de solo lectura
21

Diferencias en la recuperacin

Cuando estamos recuperando el sistema

En SQL Server 2000


o La base de datos est en un estado de recuperacin
o Los usuarios NO pueden acceder a la base de datos

o Los ficheros necesitan crearse e inicializarse a 0 byte a byte


o La restauracin a nivel de fichero es una operacin offline

En SQL Server 2005


o El filegroup est en estado de recuperacin, no toda la BD o Los usuarios pueden acceder a toda la parte no daada de la BD o Los ficheros se pueden crear con inicializacin instantnea o Podemos recuperar fragmentos (pginas, ficheros, etc.) online.

22

Recuperacin parcial

Podemos recuperar de forma ONLINE a nivel de


pgina, fichero o filegroup
tener que restaurar el log

Los filegroups de solo lectura se pueden recuperar sin


Los usuarios pueden acceder a la base de datos
mientras se realiza el restore (siempre que el filegroup primario est disponible)

23

DEMOSTRACIN: RECUPERACIN PARCIAL


Fallo de un disco, acceso parcial a la BD y recuperacin

24

Resumen funcionalidades
Tecnologa
Clustering Database Mirroring
High Availability

Disponibilidad
Muy rpida Muy rpida Rpida Rpida Rpida Rpida Rpida
25

Cobertura
Servidor BD BD BD BD Artculos Pgina Fichero

Database Mirroring
High Protection

Database Mirroring
High Performance

Log Shipping Replicacin Recuperacin parcial

Preguntas?

26

Si se olvid preguntar algo

Rubn Garrigs
MCT, MCSD, MCITP SQL 2005 Data Platform Architect

rgarrigos@solidq.com

Fernando Guerrero y Rubn Garrigs En la cumbre de la piramide del Sol (Teotihuacan - Mxico)

http://blogs.solidq.com/es/elrincondeldba
27

Gracias a todos por asistir!

28

You might also like