Capítulo 10 Bases de datos distribuidas

Capítulo 10
Bases de datos
distribuidas
ÍNDICE CAPÍTULO 10
‰ Conceptos de bases distribuidas
• Introducción
• Arquitectura de un DDBMS
• Fragmentación, replicación y distribución de datos
• Tipos de sistemas de bases distribuidas
‰ Replicación en MySQL
• Panorámica de la replicación
• Arquitectura y configuración
• Implementación de un sistema de bases replicado
• Administración y mantenimiento
‰ Balanceo de carga y alta disponibilidad en MySQL
• Fundamentos
• MySQL Cluster
• Organización de los datos
• Instalación y configuración
Definición y esquema general
Definición
Una base de datos distribuida es una colección de datos que pertenece
lógicamente al mismo sistema pero que se almacenan en distintas
máquinas conectadas por una red
Porqué bases distribuidas
‰
‰
‰
‰
‰
‰
‰
Mejora de rendimiento
Disponibilidad
Diccionario
Optimización
Integridad
Consistencia
Recuperación
‰
‰
‰
‰
‰
‰
Fiabilidad
Tipos de aplicaciones
Escalabilidad
Capacidad
Diccionario
Optimización
Arquitectura de un RDBMS
PARÁMETROS
‰Autonomía
‰Heterogeneidad
• Integración fuerte
• Sistema
semiautonómo
• Sistema aislado
• Hardware
• Comunicaciones
• Sistema operativo
‰Distribución
• Distribución cero
• Cliente/servidor
• Servidores
cooperativos
Fragmentación, replicación y
distribución de datos
‰ Fragmentación
• Horizontal: Separamos filas
• Vertical:
Separamos campos
Fragmentación, replicación y
distribución de datos
‰ Replicación
• Facilita la distribución de la carga
• Mejora la disponibilidad
• Sirve de copia de seguridad
Tipos de sistemas de bases
distribuidas
Según los parámetros comentados: autonomía,
heterogeneidad e integración
Replicación en MySQL
Concepto
La replicación en MySQL consiste en usar el registro binario
para propagar modificaciones de las base de datos en uno o
varios servidores maestros a otros esclavos
Beneficios
‰ Alta disponibilidad: si cae un maestro puede sustituirlo
un esclavo
‰ Copia de seguridad
‰ Posibilidad de balanceo de carga de lectura y/o
escritura
Arquitectura y Configuración
‰ Un maestro, un esclavo
‰ Maestro dual
‰ Anillo de replicación
‰ Pirámide
Implementación de la
replicación en MySQL
Replicación en un servidor existente
1. MASTER:
2. ESCLAVO:
3. MASTER:
4. MASTER:
5. MASTER:
6. MASTER:
7. ESCLAVO:
8. ESCLAVO:
9. ESCLAVO:
10.ESCLAVO:
11.ESCLAVO:
Configurar server-id y reiniciar
Preparar cuenta de acceso al master
Bloquear tablas
Realizar copia de seguridad de datos
Leer coordenadas del Master
Desbloquear tablas
Configurar server-id
Iniciar con la opción skip-slave-start
Cargar datos de copia de seguridad
Indicar datos de Master
Iniciar replicación
Administración y Mantenimiento
‰Monitorización
• Estado del maestro
• Estado de los esclavos
‰Rotación del registro
‰Cambio de maestro
Balanceo de carga y alta
disponibilidad
‰Balanceo carga
Reparto de la carga entre varios equipos
o procesos
‰Alta disponibilidad
Garantiza que el servicio estará activo y
disponible el máximo tiempo posible
Balanceo de carga y alta
disponibilidad en MySQL
Balanceo de carga y alta
disponibilidad
Objetivos
‰-Escalabilidad
‰ Eficiencia
‰ Disponibilidad
‰ Transparencia
Mysql Cluster
Definición de cluster en computación
Conjunto de computadoras que trabajan
coordinadamente para ofrecer un servicio de
forma que aparezcan ante el cliente como un
solo equipo
Mysql Cluster
Esquema
Mysql Cluster
Componentes
‰Nodos del cluster
• Nodo de administración (Management node)
• Nodo de datos (Data node)
• Nodos SQL (API node)
‰Aplicaciones cliente
• Clientes estándar
• Clientes del gestor
‰ Registro de eventos
‰ Puntos de comprobación
Mysql Cluster
Organización de los datos
‰
‰
‰
‰
Partición
Réplica
Nodo de datos
Grupo de nodo
Ejemplo dos grupos
Con dos réplicas
Mysql Cluster
Instalación y Configuración
1. Descargar/descomprimir archivo
2. Configurar nodos SQL
3. Configurar nodos de datos
4. Configurar nodo de administración
MySQL Cluster
Inicio y comprobación del cluster
‰ Iniciar nodos por orden:
1. Nodo Administrador,
2. Nodos de datos
3. Nodos SQL
‰ Comprobar estado con cliente de
administración (SHOW STATUS)
FIN CAPITULO 10