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
© Copyright 2024 ExpyDoc