Base de Datos en Standby y Clustering

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

Base de datos en Stand by

Una base de datos Oracle en Standby es una copia exacta de una base de datos
operativa en un servidor remoto, usada como backup, como copia para consulta,
recuperación de desastres, etc. Puede ser Física o Lógica, la copa física, que es la
que vamos a tratar, es una copia exacta, bit a bit, de la base de datos original.

Una base de datos en modo Standby es algo más que un backup normal ya que se
puede poner en producción en caso de desastre en un tiempo menor que si
tuviéramos que restaurar una copia (ya sea desde rman o un simple export).
Restaurar una copia desde fichero tarda tiempo, y durante este periodo el sistema
no está disponible. Con una base de datos adicional en modo standby no hay nada
(o casi nada que restaurar) en caso de desastre. En cuestión de minutos se hace el
cambio permitiendo continuidad en el servicio. No nos ofrece las ventajas de
rendimiento de un clúster o la seguridad del espejo, pero la relación de costes de
tiempo y licencia versus ventajas parece correcta.

Desde un punto de vista global:

 Disponemos de una copia de la base de datos de forma remota, que


podemos contabilizar como segundo juego de copias.
 A diferencia de un simple backup, la copia se mantiene viva y los datos son
actualizados con mayor frecuencia.
 En caso de desastre la podemos usar en cuestión de minutos sin esperar a
restaurar un backup entero, ya sea lógico(export) o físico(rman).
 Sirve como entorno de pruebas más real para la prueba de parches y
estimación de tiempos. El volumen de datos es idéntico.
 Tengo entendido que una base de datos en standby se puede usar hasta 10
días al año sin coste de licencia (aunque mira por donde Microsoft te deja 30
días.)

Desde un punto de vista técnico:

 El cambio en la base de datos principal se captura en los archivos de redo


log.
 Los archivos de redo no son permanentes, son sobrescritos de forma rotativa
(en este estado aún no se copia al segundo servidor).
 Se hace una copia del redo log. La copia permanente se llama archive log.
 Los archive logs (copias de redo log) se transfieren al servidor en standby.
En sistemas linux por ejemplo podemos hacerlo mediante rsync.
 Se aplican los archive logs transferidos a la base de datos en standby
quedando actualizada.
A nivel global los pasos a seguir para montar el chiringuito pueden ser los
siguientes:

1. Configurar la base de datos principal para que funcione en modo archivelog.


2. Preparar un script para hacer una copia en caliente (usando rman).
3. Crear un fichero de control standby (control file) en la base de datos principal.
4. Copiarlo todo (fichero de configuración, de control y copia rman) en el
segundo servidor (donde montamos la base de datos en standby).
5. Reconfigurar rutas (usando DB_FILE_NAME_CONVERT en init.ora o a
manita).
6. Iniciar la segunda base de datos en modo mount standby database.
7. Restaurar datos (recover database).
8. Sincronizar de forma periódica(cron) transportando (rsync?) y aplicando los
archive logs.

Para poder configurar una base de datos en stand by, se explican cada uno
de los pasos y comandos en el enlace siguiente:

https://sites.google.com/site/oracleland/manual-standby-database---parte-ii

Que es un Clúster
Un cúmulo, granja o clúster de computadoras, lo podemos definir como un sistema
de procesamiento paralelo o distribuido. Consta de un conjunto de computadoras
independientes, interconectadas entre sí, de tal manera que funcionan como un solo
recurso computacional. A cada uno de los elementos del clúster se le conoce como
nodo. Estos son aparatos o torres que pueden tener uno o varios procesadores,
memoria RAM, interfaces de red, dispositivos de entrada y salida, y sistema
operativo. Los nodos pueden estar contenidos e interconectados en un solo
gabinete, o, como en muchos casos, acoplados a través de una red de área local
(LAN (Local Area Network)). Otro componente básico en un clúster es la interfaz de
la red, la cual es responsable de transmitir y recibir los paquetes de datos, que viajan
a través de la red entre los nodos. Finalmente, el lograr que todos estos elementos
funcionen como un solo sistema, es la meta a la que se quiere llegar para dar origen
a un clúster.

Comúnmente, en el clúster existe una máquina (con monitor, teclado, ratón,


etcétera) que funciona como nodo-maestro y se encarga de administrar, controlar y
monitorear todas las aplicaciones y recursos del sistema, en tanto que el resto de
los nodos está dedicado al procesamiento de datos o a ejecutar operaciones
aritméticas. Se les conoce como nodos-esclavos.

Concepto de Clustering

El clustering se refiere a una técnica que permite combinar múltiples sistemas para
que trabajen en paralelo y se comporten como un recurso informático unificado para:
servir a un grupo de tareas, proporcionar tolerancia a fallos y tener disponibilidad
continua. Por ejemplo, en el caso de usuarios de Internet, el clustering proporciona
bases de datos, correo electrónico, ficheros u otros servicios de sistema sin
interrupciones. Si se presentara una falla dentro de una red de servidores de un
clúster, ésta se corregiría inmediatamente sin que los usuarios lo notaran. Dentro
de esta técnica existen una serie de conceptos fundamentales que se describen a
continuación. Comencemos por explicar el concepto de paralelismo, que consiste
en el procesamiento de una serie de instrucciones de un programa, que son
ejecutadas por múltiples procesadores que trabajan de manera independiente. El
paralelismo puede manejarse en dos niveles: paralelismo del hardware y el
software. El primero depende básicamente de la tecnología de cómputo disponible,
mientras el segundo se refiere a la habilidad del usuario para encontrar áreas bien
definidas del problema por resolver, de tal forma que éste pueda ser dividido en
partes autónomas que serán distribuidas entre los nodos del clúster, obteniendo un
sistema de alto rendimiento computacional.

Por otro lado, está el concepto de multiprocesamiento, una característica del


sistema operativo que controla el hardware. El software asegura la interacción entre
los procesadores a nivel de carga y descarga de datos, además de realizar el
despacho de trabajos en forma múltiple, independiente y simultánea. Otro concepto
fundamental es la programación de hebras (programming threads). Una hebra
(thread) es una secuencia de instrucciones ejecutables que pueden correr
independientemente, compartiendo recursos computacionales con otras hebras. En
un programa hay la posibilidad de ejecutar varias hebras simultáneamente. Cuando
esto ocurre todas las hebras activas pueden competir y compartir los recursos del
sistema. Por lo tanto, el usuario ha recurrido a la programación multi-hebras
(multithread) que trae como consecuencia la concurrencia entre procesos y tiene
una gran importancia en el cómputo paralelo (para obtener una descripción más
detallada, ver E. Cuadros 2001).

Clúster Base de Datos


Cuando hablamos de clúster de bases de datos, nos referimos a una arquitectura
en la que tenemos varios equipos con parte de los datos de usuario trabajando al
unísono como un solo sistema. La arquitectura de un clúster de base de datos viene
definida por la manera en que se almacenan los datos en cada nodo.

Clúster:

Un clúster es simplemente una colección de componentes que se unen y trabajan


como un solo componente para proveer alta disponibilidad.

Nodos.

Pueden ser simples ordenadores, sistemas multiprocesador o estaciones de


trabajo (Workstations)
Mecanismo de Almacenamiento (NDB)

Ofrece alta disponibilidad y persistencia de datos. Es altamente configurable


ofreciendo un gran numero de opciones pára manejar el balanceo de carga y la
tolerancia a fallos.

Nodo de Almacenamiento (MGM):

Cumple con la funcion de manejar, controlar y coordinar los otros nodos dentro del
cluster.

Nodo SQL:

Basicamente, consiste en un servidor SQL Server que utilizsa el motor de


almacenamiento NDB.

Cliente

Para conectarse a un clister MySQL remotamente, se debe utilizar el mismo cliente


utilizando para conectarse a un servidor MySQL no clusterisado. El cluster es
transparente para los clientes.
Como puede ayudar un cluster en este tipo de situaciones?

Una configuracion en cluster consiste en una serie de servidores que trabajan al


unisono como si fuera uno solo, ofreciendo: alto rendimiento, alta disponibilidad,
balance de carga y escalabilidad.

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy