Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PaolaCristina CruzCetina Unidad 5 6 6SA
PaolaCristina CruzCetina Unidad 5 6 6SA
¿QUÉ ES ESPEJEO?
Se conoce como copia espejo (en inglés data mirroring) al procedimiento de protección de datos y
de acceso a los mismos en los equipos informáticos implementado en la tecnología de
RAID1.Consiste en la idea básica de tener dos discos duros conectados. Uno es el principal y en el
segundo se guarda la copia exacta del principal, almacenando cualquier cambio que se haga en
tiempo real en las particiones, directorios, etc, creando imágenes exactas, etc.
De esta forma se consigue tener 2 discos duros idénticos y que permiten, si todo está bien
configurado, que, ante el fallo del disco principal, el secundario tome el relevo, impidiendo la caída
del sistema y la pérdida de los datos almacenados.
Además de proporcionar una copia adicional de los datos con el fin de redundancia en caso de fallo
de hardware, la duplicación de disco puede permitir que cada disco se acceda por separado para los
propósitos de lectura. En determinadas circunstancias esto puede mejorar significativamente el
rendimiento ya que el sistema puede elegir para cada lectura que disco puede buscar más
rápidamente a los datos requeridos. Esto es especialmente importante cuando hay varias tareas que
compiten por los datos en el mismo disco, y el "trashing" (donde el cambio entre tareas ocupa más
tiempo que la tarea en sí) se puede reducir. Esta es una consideración importante en las
configuraciones de hardware que frecuentemente tienen acceso a los datos en el disco.
En algunas implementaciones, el disco reflejado se puede dividir fuera y se utiliza para la copia de
seguridad de datos, permitiendo que el primer disco para permanecer activos. Sin embargo, la fusión
de los dos discos se puede requerir un período de sincronización en su caso escribir la actividad I/O
ha ocurrido con el disco duplicado.
EXISTEN VARIOS TIPOS DE MIRRORING:
• Alta disponibilidad: Garantiza la consistencia transaccional entre el servidor principal y el
servidor de espejo y ofrece Automatic Failover mediante un servidor testigo.
• Alta Protección: Garantiza la consistencia transaccional entre el servidor principal y el
espejo.
• Alto Rendimiento: Aplica las transacciones en el Servidor Espejo de manera asíncrona
ocasionando mejoras significativas en el rendimiento del servidor principal pero no
garantiza que dichas transacciones se hallan realizado de manera exitosa en el espejo.
5.2 RÉPLICA (REPLICATION)
¿QUÉ ES REPLICA?
Replicación es el proceso de copiar y administrar objetos de base de datos, tales como tablas, hacia
múltiples bases de datos en localidades remotas que son parte de un sistema de bases de datos
distribuido. Los cambios ejecutados en una localidad son capturados y guardados localmente antes
de ser aplicados a las localidades remotas. Los términos sistemas de bases de datos
distribuidas y replicación de bases de datos, están relacionados, pero no son equivalentes. En un
sistema puro de bases de datos distribuidas se maneja o administra una sola copia de todos los
objetos de la base de datos y sus datos, es decir que existe de manera única la ocurrencia de
un objeto de base de datos en todas las localidades, es decir la información se encuentra
particionada de manera horizontal entre todas las localidades.
• Replicación básica: las réplicas de tablas se gestionan para accesos de sólo lectura. Para
modificaciones, se deberá acceder a los datos del sitio primario.
• Replicación avanzada (simétrica): amplían las capacidades básicas de sólo- lectura de la
replicación, permitiendo que las aplicaciones hagan actualizaciones a las réplicas de las
tablas, a través de un sistema replicado de la base de datos. Con la replicación avanzada, los
datos pueden proveer lectura y acceso a actualizaciones a los datos de las tablas.
VENTAJAS
• Disponibilidad: El modo en que la replicación incrementa la disponibilidad de los datos para
los usuarios y aplicaciones.
• Fiabilidad: Al haber múltiples copias de los datos disponibles en el sistema, se dispone de
un mecanismo excelente de recuperación cuando existan fallos en nodos.
• Rendimiento: Se mejora para las transacciones de consulta cuando se introduce la
replicación en un sistema que estuviera aquejado de sobrecarga de recursos centralizados
• Reducción de la carga: Modo en que se utiliza la replicación para distribuir datos en
ubicaciones remotas
• Copia de seguridad: En condiciones normales, una base de datos replicada de forma correcta
es válida como copia de seguridad. Además, se puede realizar copias de seguridad usando
un servidor esclavo para así no interferir al servidor maestro.
• Mejorar la escalabilidad: Podríamos configurar nuestras aplicaciones para balancear
las consultas de lectura (SELECT) entre los servidores replicados. ·
• Alta disponibilidad: En aplicaciones y entornos en donde sólo se requieren lecturas,
podríamos configurar nuestras aplicaciones para balancear las consultas de lectura (SELECT)
entre los servidores replicados de manera que si uno se cause continúe prestando servicio.
Las réplicas locales constituyen una ayuda especialmente útil cuando se desea trabajar en una
computadora que en ocasiones no estará conectada a la red donde se encuentra el servidor
en el que reside el curso
Tipos de replicación
• Replicación Instantánea: Los datos de un servidor son simplemente
copiados a otro servidor o a otra base de datos dentro del mismo servidor. Al
copiarse todo no necesitas un control de cambios. Se suele utilizar cuando los datos
cambian con muy poca frecuencia.
INCONVENIENTE:
Aumento de la sobrecarga en las actualizaciones: El sistema debe asegurar que todas las réplicas de
la tabla sean consistentes. Cuando se realiza una actualización sobre una de las réplicas, los cambios
deben propagarse a todas las réplicas de dicha tabla a lo largo del sistema distribuido.
5.3 MÉTODOS DE RESPALDO DE UN SGBD
Es la obtención de una copia de los datos en otro medio magnético, de tal modo que a partir de
dicha copia es posible restaurar el sistema al momento de haber realizado el respaldo. Por lo tanto,
los respaldos deben hacerse con regularidad, con la frecuencia preestablecida y de la manera
indicada, a efectos de hacerlos correctamente. Existen varias maneras de respaldar base de datos
MySQL, en este post únicamente mostraré una manera de hacerlo utilizando mysqldump() y PHP.
Básicamente lo que se realiza es un respaldo de todas las bases de datos, por lo que el script debe
ejecutarse como un usuario que tenga permisos sobre todas las bases. Adicionalmente se mantiene
en disco las ultimas 3 copias de los respaldos.
En mySQL existen varios métodos para la realización de un backup y esto se debe principalmente a
que mySQL guarda las tablas como archivos y al tipo de tablas que se esté manejando (InnoDB,
MyISAM, ISAM).
InnoDB es una de las tecnologías de almacenamiento que utiliza mySQL, es de codigo abierto. Entre
sus características principales están que soporta transacciones con características ACID (Atomicidad,
Consistencia, Aislamiento y Durabilidad), tiene bloque de registros e integridad referencial (cosa que
no maneja ISAM, ni myISAM). Esta última es una de sus características más importantes pues una
base de datos sin integridad referencial, es nada más un conjunto de datos que no denotan
información.Este tipo de almacenamiento también ofrece una alta fiabilidad y consistencia. El
mismo gestiona el control de los datos y no se lo deja al sistema operativo, una de sus desventajas
es que no tiene una buena compresión de datos, por lo que ocupa un poco más de espacio que
myISAM.
Normalmente cuando uno plantea que va a respaldar los datos de su PC a una persona en una
compañía uno tiene que definir muy bien cuál es la información crítica para la empresa, por ejemplo
la música que guarde un empleado en su PC no es crítica para las actividades de la empresa ni lo son
las fotos de su última fiesta. En cambio su correo electrónico, proyectos, informes y papeles
administrativos si lo suelen ser y tener un respaldo de estos es clave para el funcionamiento de la
empresa en caso de cualquier eventualidad.
Clasificación de Respaldos
Este archive bit indica un punto de respaldo y puede existir por archivo o al nivel de "Bloque de
Información" (típicamente 4096 bytes), esto dependerá tanto del software que será utilizado para
los respaldos, así como el archivo que será respaldado. Este mismo archive bit es activado en los
archivos (o bloques) cada vez que estos sean modificados y es mediante este bit que se llevan a cabo
los tres tipos de respaldos comúnmente utilizados:
Guarda todos los archivos que sean especificados al tiempo de ejecutarse el respaldo. El archive bit
es eliminado de todos los archivos (o bloques), indicando que todos los archivos ya han sido
respaldados.
Cuando se lleva a cabo un Respaldo de Incremento, sólo aquellos archivos que tengan el archive bit
serán respaldados; estos archivos (o bloques) son los que han sido modificados después de un
Respaldo Completo. Además cada Respaldo de Incremento que se lleve a cabo también eliminará
el archive bit de estos archivos (o bloques) respaldados.
No toda la información se actualiza con la misma frecuencia, hay información que puede durar años
sin ser modificada y otra que se actualice constantemente todos los días, es importante definir qué
información se actualiza y en qué momento para hacer una política de respaldo más eficiente. La
mayoría de las aplicaciones de respaldos hacen esto automáticamente fijándose en la fecha de
modificación del archivo y comparándola con la que tiene en el respaldo.
El otro punto es si queremos hacer un respaldo con históricos o duplicados, en este caso tenemos
que indicarle al programa que no queremos que nos borre o sobrescriba ningún archivo y que vaya
guardando los archivos con su respectiva fecha y con qué frecuencia queremos hacer el respaldo.
En caso de que haya información que se pueda sobrescribir o actualizar, se realiza un respaldo
incremental donde sólo se actualiza lo que ha cambiado del archivo lo que mejora la eficiencia de
nuestro sistema. Esto realmente va a depender del tipo de información y varía de empresa a
empresa, pero es algo importante que tengamos que tomar en cuenta ya que toda la información
no es igual.
RESPALDO.
Es la obtención de una copia de los datos en otro medio magnético, de tal modo que a partir de
dicha copia es posible restaurar el sistema al momento de haber realizado el respaldo. Por lo tanto,
los respaldos deben hacerse con regularidad, con la frecuencia preestablecida y de la manera
indicada, a efectos de hacerlos correctamente.
Es fundamental hacer bien los respaldos. De nada sirven respaldos mal hechos (por ejemplo,
incompletos). En realidad, es peor disponer de respaldos no confiables que carecer totalmente de
ellos. Suele ocurrir que la realización de respaldos es relegada a un plano secundario.
Existen varias maneras de respaldar base de datos MySQL, en este post únicamente mostraré una
manera de hacerlo utilizando mysqldump() y PHP. Básicamente lo que se realiza es un respaldo de
todas las bases de datos, por lo que el script debe ejecutarse como un usuario que tenga permisos
sobre todas las bases. Adicionalmente se mantiene en disco las últimas 3 copias de los respaldos.
5.4 MÉTODOS DE RECUPERACIÓN DE UN SGBD
Los sistemas de gestión de bases de datos (SGBD) incluyen métodos de recuperación para garantizar
la integridad y la disponibilidad de los datos en caso de fallas o errores. Aquí te presento algunos
métodos comunes de recuperación utilizados en los SGBD:
Puntos de control (Checkpoints): Los puntos de control son momentos en los que se realiza una
instantánea de la base de datos y se guardan en registros de control. Estos puntos de control se
utilizan como punto de referencia para la recuperación en caso de una falla. Si ocurre un fallo, el
sistema puede volver al último punto de control conocido y recuperar los datos desde ese punto.
Recuperación ante fallas (Crash Recovery): En caso de una falla del sistema, el SGBD debe realizar
una recuperación para garantizar la integridad de los datos. Esto implica deshacer las transacciones
incompletas y recuperar las transacciones confirmadas. Se utilizan técnicas como el registro de
transacciones y los puntos de control para llevar a cabo la recuperación.
Copia de seguridad y restauración (Backup and Restore): La copia de seguridad implica crear copias
periódicas de la base de datos y almacenarlas en un lugar seguro. En caso de pérdida de datos o
daños en la base de datos, se puede restaurar la base de datos desde la copia de seguridad más
reciente. Las copias de seguridad pueden ser completas (backup completo de toda la base de datos)
o incrementales (backup de las modificaciones realizadas desde la última copia de seguridad).
Réplica y conmutación por error (Replication and Failover): La replicación implica mantener copias
sincronizadas de la base de datos en varios servidores. Si uno de los servidores falla, otro servidor
puede asumir el control y continuar brindando acceso a los datos. Esto se conoce como conmutación
por error y garantiza la alta disponibilidad de la base de datos.
Estos son solo algunos métodos comunes de recuperación utilizados en los SGBD. La
implementación específica puede variar dependiendo del sistema y la configuración.
Para mover aplicaciones y datos a entornos más ventajosos, Gartner recomienda "desenredar" datos
y aplicaciones como medio para superar la gravedad de los datos. Si las empresas dedican algo de
tiempo al principio del proyecto a abordar las dificultades relativas a los datos y las aplicaciones,
pueden mejorar la gestión de datos, permitir la movilidad de aplicaciones y mejorar el gobierno de
los datos.
El problema principal es que cada aplicación complica la gestión de datos introduciendo elementos
de lógica de aplicaciones en el nivel de gestión de datos y cada una de ellas es indiferente al siguiente
caso de uso de datos. Los procesos empresariales utilizan los datos de forma aislada y, a
continuación, generan sus propios formatos, lo que deja la integración para el siguiente proceso. Por
lo tanto, el diseño de aplicaciones, la arquitectura de datos y los procesos empresariales deben
responder unos a otros, pero a menudo uno de estos grupos no puede o no está dispuesto a cambiar.
Esto obliga a los administradores de aplicaciones a utilizar flujos de trabajo ideales y sencillos, lo que
da como resultado diseños subóptimos. Y, aunque la solución puede haber sido necesaria en ese
momento, esta deuda técnica debe ser finalmente abordada durante la migración de datos o los
proyectos de integración.
• Migración del almacenamiento. El proceso de mover los datos de las cabinas existentes a
otras más modernas que permiten a otros sistemas acceder a ellos. Ofrece un rendimiento
significativamente más rápido y un escalado más rentable a la vez que permite funciones de
gestión de datos como clonado, snapshots y backup y recuperación ante desastres.
• Migración de nube. El proceso de mover datos, aplicaciones u otros elementos
empresariales de un centro de datos on-premises a una nube o moverlos entre nubes. En
muchos casos, también supone una migración del almacenamiento.
• Migración de aplicaciones. El proceso de mover un programa de aplicación de un entorno a
otro. Puede incluir mover toda la aplicación de un centro on-premises a una nube, moverse
entre nubes o simplemente mover los datos subyacentes de la aplicación a una nueva forma
de la aplicación alojada por un proveedor de software.
Mover datos importantes o confidenciales y de comisionar sistemas heredados puede poner muy
nerviosos a los principales responsables. Es necesario tener un plan sólido, pero tampoco es
necesario reinventar la rueda. Pueden encontrarse numerosos ejemplos de planes de migración de
datos y listas de comprobación en la internet. Por ejemplo, Data Migration Pro, una comunidad de
especialistas en migración de datos, tiene una lista de comprobación completa que describe un
proceso de 7 fases:
1. Planificación previa a la migración. Evalúa los datos que se van a mover a efectos de
estabilidad.
2. Iniciación del proyecto. Identifica y mantén informadas a las principales partes interesadas.
3. Análisis del entorno. Establece un sólido proceso de gestión de reglas de calidad de datos y
mantén informadas a las partes implicadas sobre los objetivos del proyecto, incluido el cierre
de sistemas heredados.
4. Diseño de la solución Determina qué datos se van a mover y la calidad de estos antes y
después de su traslado.
5. Crea y prueba. Crea código con la lógica de migración y prueba la migración en un reflejo del
entorno de producción.
6. Ejecutar y validar. Demuestra que la migración ha cumplido los requisitos y que los datos
que se han migrado son viables para el uso en el negocio.
7. Retirada y supervisión. Apaga y desecha los sistemas antiguos.
Tipos de datos no coincidentes (fecha, número, sub-registros): en este caso habría que trabajar por
mantener la integridad de los datos, pudiendo ser preciso el orientar la gestión a la modificación de
algunas de las aplicaciones que utilizan la base de datos.
Diferentes conjuntos de caracteres (codificaciones distintas en cada columna para una misma tabla):
cuando esto suceda habrá que revisar a fondo las aplicaciones que u
Las herramientas ETL son muy adecuadas para la tarea de migrar datos de una base de datos a otra,
estando su uso aún más indicado en proyectos en que existen pocas conexiones entre origen y
destino.
En los casos en que, además de ejercer la función de almacenamiento de datos, la base de datos
represente también la lógica empresarial en forma de procedimientos almacenados y disparadores,
realizar un estudio de viabilidad de la migración a la base de datos de destino, podría ser la acción
más indicada. De esta forma, si se demostrase que la base de destino no admite algunas de las
características, todavía se estaría a tiempo de implementar cambios en las aplicaciones o en el
software middleware.
Los sistemas mainframe utilizan formatos basados en registros para almacenar datos que, aunque
son sencillos de gestionar suelen incorporar optimizaciones.
La forma de proceder sería llevando a cabo la extracción en el propio sistema fuente; para después
convertir los datos en un formato imprimible que se pudiese analizar más tarde utilizando
herramientas estándar.
Codificación de caracteres: en este caso, la complejidad radica en el hecho de que la mayoría de los
sistemas desarrollados en la plataforma basada en el PC utilizan codificación ASCII. Sin embargo,
los sistemas mainframe se basan principalmente en la codificación EBCDIC que es incompatible
con ASCII y la conversión es necesaria para mostrar los datos. Para poder superar este desafío hay
que tener previsto al elegir herramientas ETL que éstas deben soportar las conversiones entre
conjuntos de caracteres, incluyendo EBCDIC.
6.1 MONITOREO
El monitoreo en el contexto de los sistemas de gestión de bases de datos (SGBD) implica supervisar
y recopilar información sobre el rendimiento y el estado del sistema de base de datos. El monitoreo
es esencial para garantizar un funcionamiento óptimo, identificar problemas y tomar medidas
correctivas cuando sea necesario. Aquí hay algunos aspectos clave del monitoreo en los SGBD:
Rendimiento del sistema: El monitoreo del rendimiento implica realizar un seguimiento de métricas
como el uso de CPU, la memoria, la utilización del disco y la red. Estas métricas ayudan a identificar
cuellos de botella, recursos subutilizados o cualquier otro problema que pueda afectar el
rendimiento del sistema de base de datos. Se pueden utilizar herramientas específicas de monitoreo
o funciones incorporadas en el SGBD para recopilar y analizar estas métricas.
Utilización de recursos: Supervisar el uso de recursos del sistema de base de datos, como el espacio
de almacenamiento, el tamaño de las tablas y los índices, puede ayudar a optimizar la utilización de
los recursos disponibles. Esto implica identificar tablas o índices que estén creciendo rápidamente o
utilizando una cantidad desproporcionada de espacio, y tomar medidas para optimizarlos y evitar
problemas de espacio.
6.2 AUDITORÍA
La auditoría de una base de datos implica examinar y evaluar la seguridad, integridad y conformidad
de los datos y operaciones realizadas en el sistema de gestión de bases de datos (SGBD). La auditoría
ayuda a garantizar la confiabilidad de los datos, identificar posibles riesgos y asegurar el
cumplimiento de regulaciones y políticas establecidas. A continuación, se presentan algunos
aspectos clave de la auditoría de bases de datos: