trabajo investigación oracle data guard

Upload: alejandramend4410

Post on 17-Jul-2015

471 views

Category:

Documents


1 download

TRANSCRIPT

Trabajo de Investigacion: Gestion, Recuperacion y Alta Disponibilidad de Base de Datos - Oracle Data GuardAlta Disponibilidad, Tolerancia a Fallos, Bases de Datos de Reserva, Clsters y Replicacin Avanzada

Prof. Juan Carlos Vargas Alccer

Integrantes: Ingrid Chavarra Alejandra Mendoza Cordero Gloriana Pea Ramrez Jorge Villegas Murillo Allen Vquez Marn

Licenciatura en Sistemas Universidad Latina Sede Santa Cruz Marzo 2012

Tabla de contenido

Introduccin .................................................................................................................................... 2 Por qu la disposicin por y hacia la Alta Disponibilidad? ............................................................ 3 Bases de datos Oracle tolerantes a fallo ......................................................................................... 3 Clsteres reales de aplicaciones Oracle .......................................................................................... 4 Recuperacin transparente de fallos de aplicacin ........................................................................ 9 Oracle Data Guard ......................................................................................................................... 11 Proteccin contra Errores Humanos ............................................................................................. 15 Replicacin avanzada .................................................................................................................... 16 Proteccin contra la Corrupcin de Datos .................................................................................... 19 Combinacin de soluciones........................................................................................................... 20 Conclusiones ................................................................................................................................. 21 Bibliografa ........................................................................................................................................ 22 Anexos ........................................................................................................................................... 23

1

IntroduccinHoy en da, una de las principales preocupaciones de las empresas reside en la necesidad de proteger la informacin que manejan. Por este motivo, invierten muchos recursos en disponer de sistemas cada vez ms fiables y eficientes. Esta necesidad implcita que tienen las compaas de ofrecer una imagen de fortaleza ante sus clientes, lleva a las mismas a incorporar a su organizacin los ltimos avances en tecnologa. Las empresas utilizan la tecnologa de la Informacin (IT) para obtener una ventaja competitiva, reducir los costos operativos, mejorar la comunicacin con los clientes y aumentar la visibilidad de administracin de los procesos de negocio centrales. A medida que el uso de IT y delos Servicios activados por IT (ITeS) se vuelve ms y ms dominante en todos los aspectos de las operaciones de negocio, las empresas modernas dependen cada vez ms de su infraestructura de IT para tener xito. La no disponibilidad de una aplicacin o dato crtico puede implicar un costo significativo para las empresas en trminos de prdida de productividad e ingresos, clientes insatisfechos y una mala imagen corporativa. Por lo tanto, una infraestructura de IT altamente disponible es un factor de xito crtico para las empresas de la economa actual, que se mueve con rapidez y est siempre activa. (oracle-alta disponibilidad) Durante los ltimos aos, uno de los campos de investigacin en los que se han invertido mayor cantidad de recursos, est relacionado con el desarrollo de bases de datos. En la actualidad, este tipo de sistemas suele integrarse dentro de una arquitectura distribuida que de soporte para tolerancia a fallos. Al tratarse de sistemas que requieren alta disponibilidad, debe ofrecerse continuidad en el servicio an en presencia de fallo. Es ms, con la aparicin de Internet, el problema se ha agravado an ms, pus sistemas accedidos hasta ahora por cientos de personas, han visto como, de la noche a la maana, quedaban obsoletos e incapaces de dar respuesta al crecimiento inesperado de la demanda. Por ello, nicamente aquellos que hayan sido precavidos habrn sido capaces de compensar este incremento, los que no, tarde o temprano se vern obligados a adaptarse a los tiempos modernos. Es en este sentido, que muchos fabricantes de servidores de bases de datos, ya incorporan en sus productos potentes mecanismos de replicacin. Con ello, pretenden que quines utilicen sus servidores, tengan la seguridad de que la informacin que albergan va a estar siempre disponible (con independencia de los posibles fallos que puedan acontecer).

2

Por qu la disposicin por y hacia la Alta Disponibilidad?Al disear una infraestructura de IT altamente disponible, primero es importante entender las variadas causas de los cortes de servicio de las aplicaciones. Tal como se muestra en la Figura, el tiempo de baja puede categorizarse en no planificado y planificado. Los cortes de servicio no planificados pueden ser causados por fallas de la computadora y por otras fallas que pueden ocasionar la no disponibilidad de los datos (por ej., corrupcin en el almacenamiento, fallas del sitio, etc.). Las actividades de mantenimiento del sistema como los cambios de hardware, software, aplicacin y/o datos son tpicas causas del tiempo de baja planificado.

Las organizaciones de IT que entienden los diferentes factores responsables de la interrupcin del servicio estn mejor equipadas para evitar los cortes de servicio. Mediante este entendimiento, se pueden implementar slidas arquitecturas de alta disponibilidad para protegerse contra todas las causas del tiempo de baja del sistema. En esta investigacin, describiremos varias tecnologas de Oracle que pueden ofrecer proteccin integral de cada una de las fallas mencionadas ms arriba.

Bases de datos Oracle tolerantes a fallo Oracle ofrece un completo paquete de herramientas y aplicaciones para desarrollar, desplegar, gestionar y poner a punto aplicaciones que requieran una alta disponibilidad. Una discusin completa de estas herramientas se extendera durante varios captulos, por3

este motivo, esta seccin se centra nicamente en explicar algunas de las caractersticas de alta disponibilidad ofrecidas:

Clsteres reales de aplicaciones Oracle. o Alta disponibilidad usando clsteres reales de aplicaciones. o Ventajas de los clsteres reales de aplicaciones. o Desventajas de los clsteres reales de aplicaciones. Recuperacin transparente de fallos de aplicacin. o Alta disponibilidad usando la recuperacin transparente de fallos de aplicacin. o Ventajas de la recuperacin transparente de fallos de aplicacin. o Desventajas de la recuperacin transparente de fallos de aplicacin. Oracle Data Guard o Alta disponibilidad usando Oracle Data Guard. o Ventajas de Oracle Data Guard. o Desventajas de Oracle Data Guard. Replicacin Avanzada. o Alta disponibilidad usando replicacin avanzada. o Ventajas de la replicacin avanzada. o Desventajas de la replicacin avanzada. Combinacin de mltiples soluciones.

Clsteres reales de aplicaciones Oracle Una falla de computadora puede surgir cuando una mquina que hace funcionar el servidor de base de datos falla de manera inesperada, ms probablemente debido a un mal funcionamiento de hardware. Este es uno de los tipos de fallas ms comunes. Oracle Real Application Clusters, que es la base de la arquitectura Oracle Grid Computing, puede ofrecer la proteccin ms efectiva contra esas fallas. Oracle RAC (Oracle Real Application Clusters) (wikipedia - oracle_rac) es una configuracin de base de datos que consiste en mltiples instancias de la base de datos con acceso compartido al mismo conjunto de archivos de datos. (Oracle-RAC) Como su predecesor, RAC est configurado en combinaciones de hardware/SO especficas capaces de soportar un entorno de clster.

4

Oracle RAC permite que mltiples computadoras ejecuten el software de SGBD de Oracle simultneamente mientras acceden a una base de datos individual. Esto se llama una base de datos en grupo (cluster o clustered). En una base de datos de Oracle no-RAC, una base de datos individual es accedida por una instancia individual. La base de datos se considera la coleccin de ficheros de datos, ficheros de control, y ficheros redo log localizados en disco. La instancia se considera la coleccin de procesos del sistema operativo y memoria relacionada de Oracle que estn ejecutndose en el computador. En Oracle RAC, dos o ms computadoras (cada una con una instancia) acceden concurrentemente a una base de datos individual. Esto permite que una aplicacin o usuario se conecte a alguno de los computadores y tenga acceso a los mismos datos. (Oracle Press) El Oracle RAC es una combinacin de un nmero de distintos componentes hardware y software. La lista siguiente detalla los componentes individuales y sus funciones:

Hardware del servidor clster: El hardware fsico en el que se aloja la base de datos RAC. Esto comprende dos o ms nodos uniprocesador o multiprocesador conectados en una configuracin clster con una interconexin de alta velocidad para la comunicacin entre nodos. Discos compartidos del clster: Los discos compartidos en los que se almacenan los archivos de la base de datos. Los discos compartidos deben permitir accesos directos al disco simultneos desde todos los nodos del clster. Las configuraciones de discos compartidos pueden ser SAN (Store Area Network), RAID compartidos o NAS (Network Attached Storage), pudiendo conectarse tanto directamente a los nodos del clster como a una interconexin de alta velocidad. Gestor del clster: Las funciones OSD (Operating System Dependent) para el control de la funcionalidad del clster. Esto se compone de dos mdulos distintos. Primero, el demonio Global Services ejecuta tareas en nombre del software RAC, como el cierre, inicio y otras acciones de tipo administrativo en los nodos individuales del clster. Segundo, el Node Monitor es responsable de mantener la comunicacin entre los nodos del clster y el software RAC. Esto incluye supervisin del estado de los nodos del clster y el paso de esta informacin al software RAC. Servicio global de cah/colas: Controla el acceso a los recursos de todos los nodos que forman parte del RAC. Durante las operaciones de bases de datos en las que debe accederse al mismo recurso desde mltiples sesiones, el servicio Global Cache/Enqueue se encarga de coordinar las operaciones entre los nodos del clster. Operaciones como el acceso a bloques de datos en cach o la ejecucin de operaciones de bloqueo, deben producirse de forma transparente independientemente de la sesin a la que est asociado el nodo. Se utiliza un esquema conocido como dominio de recurso para permitir que la propiedad de un5

recurso ``flote'' entre los nodos, dependiendo de dnde sea ptimamente referenciado. Fusin de cach: Una de las capacidades ms poderosas de RAC. Utilizando los servicios globales de cach y colas, la fusin de cachs permite que las sesiones conectadas a un nodo del clster hagan referencia a bloques de bases de datos que estn en la memoria cach de un nodo distinto. Cuando se solicita la lectura de un bloque de base de datos, si el bloque de datos referenciado ya est en la cach de uno de los nodos del clster, Oracle usa la interconexin de alta velocidad para copiar el bloque entre los nodos. Cuando se solicita la escritura de un bloque en la base de datos, si el bloque ya est en la cach de uno de los otros nodos del clster, Oracle de nuevo copia los datos entre los nodos pero ahora la propiedad se asigna al nodo que est ejecutando la actualizacin del bloque de datos. Las operaciones de lectura adicionales sobre el bloque pueden continuar en otros nodos, pero cualquier escritura del bloque en base de datos se ver forzada a esperar hasta que la primera sesin que est actualizando efecte una confirmacin (commit) o un rechazo (rollback).

Siempre que se produce un fallo en uno de los nodos del clster, se ponen en marcha las siguientes operaciones:

El demonio de Global Services efecta una reorganizacin del clster que implica determinar qu nodos ya no forman parte del clster. Esto se logra indicando a cada instancia de base de datos que actualice su entrada en el mapa de miembros contenido en el archivo de control. Al final del proceso, las entradas sin actualizar del mapa de pertenencia se juzgan como nodos con fallos. La recuperacin de la base de datos implica determinar qu bloques de cach y bloqueos de objetos de la base de datos pertenecen a la instancia que ha fallado. Asimismo, es necesario reasignar la propiedad de los recursos. La recuperacin de transaccin conlleva la lectura de los archivos de registro para rehacer el nodo que ha fallado, para determinar las transacciones que deben aplicarse y las transacciones incompletas que deberan ser deshechas. Dependiendo de la cantidad de recuperacin que deba efectuarse, este proceso puede tomar una cantidad de tiempo excesivo. La caracterstica fast-start-rollback le permite ajustar la duracin mxima del proceso de recuperacin y facilita que la recuperacin se efecte en paralelo.

Las dos configuraciones de alta disponibilidad ms simples que se pueden crear utilizando RAC usan un clster de dos nodos con una configuracin primario/secundario. Este mtodo usa una base de datos primaria activa que da servicio a la mayora de las solicitudes de conexin de la aplicacin. La base de datos secundaria normalmente no responde a las solicitudes de la aplicacin, aunque con la configuracin de red apropiada, la instancia secundaria puede conectarse directamente para operaciones como el mantenimiento o los informes por lotes. En caso de fallo de la instancia primaria, la secundaria toma el control efectuando la devolucin de transaccin y recuperacin de6

instancia. Todos los intentos de conexin siguientes son entonces dirigidos a la instancia secundaria. Los dos tipos de configuracin RAC primaria/secundaria son:

Oyente dedicado bsico de clster real de aplicacin es una configuracin en la que cada base de datos tiene su propio oyente. La aplicacin se configura para conectar con el oyente de la primera base de datos. Cuando una solicitud de conexin no puede ser satisfecha por la primera base de datos, la aplicacin conecta con la segunda base de datos. En ese caso, todas las transacciones que se encontraban en curso son canceladas. La siguiente figura muestra la configuracin de oyentes para la configuracin de oyente dedicado bsico RAC.

Figura: Oyente dedicado bsico RAC

7

Oyente compartido bsico de clster real de aplicacin. Una configuracin en la que las bases de datos comparten uno o ms oyentes. Cuando se inicia la base de datos primaria, se registra con cada uno de los oyentes. La aplicacin entonces se configura para conectar con cualquiera de los oyentes y las solicitudes son enviadas a la instancia primaria. Cuando la instancia primaria falla, la instancia secundaria efecta la recuperacin, se registra como instancia primaria y acepta todas las conexiones siguientes. Cualquier transaccin que estuviese en proceso cuando fall la instancia primaria es cancelada y la aplicacin tiene que reconectar. La figura muestra la configuracin de oyentes para la configuracin oyente compartido bsico RAC.

Figura : Oyente compartido bsico RAC

8

Ventajas de los clsteres reales de aplicaciones Los RAC (Real Application Clusters) ofrecen las siguientes ventajas:

Son mnimos los cambios requeridos en la aplicacin para aprovechar las caractersticas ofrecidas por la arquitectura del RAC. Crear una solucin de alta disponibilidad es extremadamente fcil usando el RAC de dos nodos. En una configuracin primario/secundario, la recuperacin de instancias tras el fallo de un nodo es automtica, mejorando as el tiempo medio de recuperacin o MTTR (mean time to recover). Combinando el RAC con otras caractersticas, como Oracle RAC Guard, recuperacin transparente de fallos de aplicacin y Oracle Data Guard se puede crear una arquitectura extremadamente potente, altamente escalable as como flexible.

Desventajas de los clsteres reales de aplicaciones Los RAC Real Application Clusters) tienen las desventajas que se exponen a continuacin:

Al compartir el subsistema de disco todos los nodos participantes, la configuracin es todava dbil a los fallos de disco a menos que se den pasos especficos para prevenirlos. Estos pasos incluyen espejos por hardware. Dado que la interconexin de alta velocidad es el punto central de comunicacin entre los nodos del clster, a menos que se use redundancia puede convertirse en un punto de posibles fallos. RAC puede proteger tan slo contra fallos localizados en cadas de los nodos del clster. Por s mismo, no ofrece ninguna redundancia remota como la que es necesaria para prevenir desastres como la prdida completa de un centro de datos.

Pueden conseguirse mejoras adicionales de alta disponibilidad y escalabilidad combinando RAC con otras posibilidades de Oracle.

Recuperacin transparente de fallos de aplicacinUna de las consideraciones de diseo ms importantes de cualquier aplicacin es la transparencia para el usuario final que nunca debera conocer la arquitectura de la aplicacin. Desde la perspectiva del usuario, las interrupciones frecuentes del servicio pueden resultar frustrantes. Incluso la ms elegante solucin de alta disponibilidad puede parecer molesta a los usuarios si requiere que tengan que reconectar y reiniciar su trabajo.

9

TAF (Transparent Application Failover) es un componente de Oracle Networking que puede utilizarse para minimizar la interrupcin causada por temas relacionados con conectividad. Cuando se pierde la conexin entre la aplicacin y la base de datos, TAF ejecuta las siguientes funciones dependiendo de cmo haya sido configurado:

Restauracin de sesiones de base de datos: Se restaura la conexin a la base de datos usando el mismo identificador de usuario y clave utilizados previamente. Continuacin de operaciones SELECT: Las sentencias SELECT emitidas previamente vuelven a ejecutarse, continuando a partir del mismo punto en que se produjo la desconexin.

Puesto que TAF no restaura transacciones dudosas, las variables de sesin de usuario perdern su estado tras la recuperacin del fallo. Si se requiere transparencia completa en la aplicacin, sin embargo, puede combinarse una composicin de funciones de retorno para recuperacin de fallos con la escritura de valores en una tabla temporal en la base de datos para restauracin tras la recuperacin del fallo. A pesar de no ser estrictamente una caracterstica de TAF, un componente adicional de Oracle Networking que puede utilizarse para mltiples instancias de bases de datos, como con RAC, para mejorar la transparencia de la aplicacin, es el balanceo de cargas. Esto permite que las conexiones a la aplicacin se repartan entre todas las instancias de bases de datos disponibles. El balanceo de cargas puede usarse tambin con bases de datos replicadas y bases de datos de reserva de Oracle Data Guard. Cuando se combina con la reconexin automtica de TAF, esto ofrece una mejora significativa de alta disponibilidad minimizando la interrupcin de sesiones. Ventajas de la recuperacin transparente de fallos de aplicacin TAF ofrece las siguientes ventajas:

Las aplicaciones pueden reconectarse transparentemente a la base de datos sin intervencin del usuario. Las sentencias SELECT previamente ejecutadas continan donde se quedaron. TAF puede combinarse con el balanceo de cargas para mejorar la escalabilidad y disponibilidad de forma significativa.

Desventajas de la recuperacin transparente de fallos de aplicacin TAF tiene las siguientes desventajas:

No es posible la restauracin de toda la informacin de sesin. Las transacciones previas son deshechas.

10

Oracle Data GuardODG (Oracle Data Guard) ofrece una solucin integrada para la configuracin y gestin de bases de datos de reserva. Una implementacin de base de datos de reserva consiste en una o ms bases de datos que son copias separadas de una base de datos en produccin. A diferencia de las bases de datos RAC, las bases de datos de reserva pueden situarse en la misma localizacin dentro del mismo centro de datos que la base de datos en produccin, localizarse remotamente en una red de rea ancha (WAN) o una combinacin de ambos. Algunos de los usos de las bases de datos de reserva incluye el mantenimiento de bases de datos separadas para informes, una base de datos fuera de sede para recuperacin de desastres o una copia de la base de datos de produccin usada para desarrollo o prueba de aseguramiento de la calidad. Es la funcionalidad de la base de datos Oracle que brinda la mayor y ms efectiva disponibilidad, proteccin y recuperacin ante desastres de los datos, ya que provee la administracin, el monitoreo y la automatizacin de una o ms bases de datos standby para proteger a los datos ante fallas, desastres, errores o corrupcin. (oracle.com)

La lista siguiente incluye algunos de los muchos componentes que son parte de la arquitectura ODG.

Base de datos primaria: La base de datos en produccin que es la fuente de datos para la instancia de reserva. Una sola base de datos primaria puede tener mltiples bases de datos de reserva. Base de datos de reserva: La base de datos que es copia de la base de datos primaria en produccin. Servicios de registro: El mtodo por el que los registros de rehacer son transferidos desde la base de datos primaria a las bases de datos de reserva. Tambin controlan la frecuencia con que los archivos de registro para rehacer se aplican a las bases de datos de reserva. Data Guard Broker: Es el componente software que se encarga de la creacin, control y gestin de la configuracin de base de datos primaria/secundaria. Sede de Data Guard: La coleccin de una base de datos primaria y hasta nueve bases de datos de reserva.

Una base de datos de reserva puede crearse utilizando tanto el componente Data Guard Manager de Oracle Enterprise Manager como herramientas desde la lnea de comandos. Crear y gestionar una sede ODB implica estos pasos:

Configurar la base de datos primaria: La base de datos primaria debe estar funcionando en modo ARCHIVELOG y la misma plataforma hardware, versin de SO y versin del software RDBMS que el usado para la base de datos de reserva.11

Determinacin del modo de proteccin. Cuando cree una base de datos de reserva, considerar qu modo de proteccin es el apropiado, podra ser importante. ODG permite utilizar un nmero de distintos modos de proteccin. o Modo de proteccin garantizada: Asegura que todos los cambios sean propagados a la sede de la base de datos de reserva despus de que hayan sido confirmados en la base de datos primaria. o Modo de proteccin instantnea: Asegura que todos los cambios se propaguen a la base de datos de reserva tras ser confirmados en la base de datos primaria a menos que la conectividad de la red lo impida. Una vez que la conectividad de red se haya restablecido, los registros para rehacer se aplican para conseguir que la base de datos de reserva est actualizada. o Modo de proteccin rpida: Procura que los cambios se propaguen a la base de datos de reserva tan pronto como sea posible, sin causar una degradacin del rendimiento en la base de datos primaria. o Modo de proteccin demorada: Asegura la propagacin de todos los cambios a la base de datos de reserva una vez ha transcurrido un pequeo periodo de tiempo. Con la espera del modo de proteccin demorado, el retraso en la propagacin puede especificarse para permitir que la base de datos quede detrs de la base de datos en produccin. Determinar el modo de operacin de reserva: Utilizado para controlar la frecuencia con que los cambios se aplican a la base de datos de reserva tras la propagacin desde la base de datos primaria. La base de datos puede estar funcionando en uno de los dos modos siguientes: o Modo de recuperacin gestionada: Permite a la base de datos de reserva aplicar todos los cambios tan pronto como se propaguen a la sede de reserva. La base de datos no est disponible para uso, sin embargo, hasta que ha sido abierta. o Modo de slo lectura: Permite que la base de datos permanezca abierta slo para consultas de slo lectura. Sin embargo, no se aplican cambios a la base de datos hasta que el modo se cambia a modo de recuperacin gestionada.

Las bases de datos de reserva Data Guard ofrecen una alta rentabilidad de las inversiones, ya que tambin admiten consultas ad hoc, informes, backups o actividades de prueba, al tiempo que brindan proteccin contra desastres. Especficamente: 1. La opcin Active Data Guard, por primera vez disponible con Oracle Database 11g, permite que una base de datos fsica de reserva se use para el acceso de slo lectura a las aplicaciones, mientras que recibe actualizaciones de la base de datos principal. Las consultas ejecutadas en una base de datos de reserva en actividad reciben los resultados actualizados. 2. Snapshot Standby permite la apertura de una base de datos fsica de reserva para realizar actividades de lectura y escritura a fin de probarlas o realizar cualquier otra actividad que requiera una replicacin de lectura y escritura de los datos de12

produccin. Una instancia de Snapshot Standby sigue recibiendo, pero no aplica, las actualizaciones que se generan en la base de datos principal. Esas actualizaciones se aplican automticamente a la base de datos de reserva cuando Snapshot Standby se vuelve a convertir en una base fsica de reserva. Los datos principales cuentan con proteccin en todo momento. 3. Una base de datos lgica de reserva cuenta con la flexibilidad adicional de poder abrirse en modo de lectura y escritura. Si bien los datos que mantiene SQL Apply no pueden modificarse, es posible agregar tablas locales adicionales a la base de datos, adems de crear estructuras locales de ndices para optimizar la generacin de informes o usar la base de reserva como almacn de datos, o para transformar la informacin utilizada a fin de cargar almacenes de datos especializados (data marts).

La figura muestra de forma global la arquitectura de ODG.

Figura: Arquitectura de Oracle Data Guard Una vez se han creado y configurado las bases de datos de reserva, el broker ODG gestiona y supervisa la propagacin y aplicacin de registros para rehacer, dependiendo del modo de proteccin seleccionado. Ya que ODG permite la creacin de mltiples instancias de reserva, la mejor configuracin de proteccin podra ser tener un nmero de bases de datos de reserva, cada una de ellas con un modo de proteccin distinto. Si la base de datos primaria queda inaccesible por problemas de hardware en el nodo de la base de datos primaria, puede iniciarse una recuperacin del fallo con la base de datos de reserva. La cantidad de datos perdidos durante la operacin de recuperacin del fallo

13

depender del modo de proteccin elegido. Una vez se haya producido la recuperacin del fallo, la base de datos de reserva asume el papel de base de datos primaria. Una vez resuelto el problema de hardware en el nodo de la base de datos primaria, volver a la configuracin original requiere volver a crear una instancia de la base de datos copiando de nuevo la base de datos y reconfigurando el nodo de reserva con su estado original. ODG permite el inicio manual de un intercambio desde la base de datos primaria a la base de datos de reserva sin necesidad de re-instanciar cuando se produzca la vuelta a la situacin original. Esto puede ser til para efectuar mantenimiento en los nodos de bases de datos. Ventajas de Oracle Data Guard ODG ofrece las siguientes ventajas:

Puede ser utilizado conjuntamente con RAC y la recuperacin transparente de fallos de aplicacin. Dependiendo del modelo de proteccin elegido, el intercambio y recuperacin de errores puede ocurrir con poca o ninguna prdida de informacin. La configuracin y administracin se simplifican con Data Guard Manager. Data Guard ofrece recuperacin de desastres si la base de datos de reserva se mantiene en una localizacin remota. Data Guard es flexible puesto que la base de datos de reserva puede mantenerse automticamente o de forma manual mediante entradas de usuario y/o guiones. Las necesidades de ancho de banda son menos intensivas comparadas con otras soluciones de alta disponibilidad ya que slo se propagan los archivos de registro guardados desde la base primaria a la que est en reserva.

Desventajas de Oracle Data Guard ODG tiene las siguientes desventajas:

Aunque ODG puede configurarse para funcionar en nodos locales, no ofrece la misma escalabilidad que los Oracle RAC. Dependiendo del modo de proteccin elegido, el intercambio y recuperacin ante fallos pueden necesitar una cantidad de tiempo significativa. La frecuencia de la propagacin depende mucho del ancho de banda disponible en la red. En un entorno con un significativo volumen de cambios en la base de datos, la cantidad de cambios propagados puede provocar un excesivo trfico en la red. No existe un mecanismo fcil de vuelta atrs para volver a la mquina primaria original una vez que se ha activado la de reserva. La base de datos de reserva debe

14

reconstruirse como si fuera la primaria e iniciarse una recuperacin de fallo en la primaria original (ahora la de reserva). Mientras la base de datos de reserva est abierta en modo slo de lectura, no puede mantenerse sincronizada con la base de datos primaria (esto es, no pueden aplicarse los archivos de reconstruccin guardados mientras est abierta). Los datos no presentes en los registros de reconstruccin guardados (como las tablas e ndices creados mediante la opcin NOLOGGING/UNRECOVERABLE) no se propagan a la reserva. Por ello, los comandos que desconectan la reconstruccin deben evitarse o tienen que implementarse medidas explcitas para registrar y propagar manualmente esos comandos. La implementacin de un procedimiento robusto de parcheo de base de datos puede ayudar a travs de los registros de reconstruccin archivados si no se detecta y rectifica a tiempo. La base de datos de reserva debe estar funcionando en el mismo hardware, versin de SO y versin de DBMS que la base de datos principal.

Proteccin contra Errores HumanosCasi toda investigacin realizada sobre las causas del tiempo de baja identifica al error humano como la nica causa importante del tiempo de baja. Los errores humanos, como la eliminacin involuntaria de datos importantes o cuando una clusula WHERE incorrecta de una sentencia UPDATE actualiza muchas ms filas que las que se quera; deben evitarse donde sea posible, y anularse cuando fallan las precauciones contra ellos. Oracle Database brinda herramientas fciles de utilizar y avanzadas que ayudan a los administradores a realizar diagnsticos rpidos y recuperarse de estos errores, en caso de que ocurran. Tambin incluye caractersticas que permiten que los usuarios finales se recuperen de los problemas sin la intervencin del administrador, reduciendo la carga de soporte del DBA, y acelerando la recuperacin de los datos perdidos y daados. Protegerse de los Errores Humanos La mejor forma de evitar errores es restringir el acceso de un usuario a los datos y servicios que verdaderamente necesitan para dirigir su empresa. Oracle Database ofrece una amplia gama de herramientas de seguridad para controlar el acceso de usuarios a los datos de las aplicaciones al autenticar usuarios y luego permitir que los administradores otorguen a los usuarios solo aquellos privilegios requeridos para realizar sus tareas. Adems del modelo de seguridad, Oracle Database brinda la capacidad para restringir el acceso a los datos en el nivel de filas, utilizando la caracterstica Virtual Private Database (VPD), aislando an ms a los usuarios de los datos para los que no necesitan acceso.

15

Tecnologa Oracle Flashback Cuando la gente autorizada comete errores, usted necesita las herramientas para corregir esos errores. Oracle Database 11g brinda una tecnologa para la correccin de errores humanos denominada Flashback. Flashback que revoluciona la recuperacin de datos. En el pasado, daar una base de datos podra tardar minutos, pero varias horas en recuperarla. Con Flashback, el tiempo para corregir los errores es igual al tiempo que llev cometer el error. Tambin es extremadamente fcil de utilizar, y se puede utilizar un solo comando breve para recuperar toda la base de datos en lugar de seguir algn procedimiento complejo. Flashback ofrece una interface SQL para analizar y reparar rpidamente los errores humanos. Flashback brinda reparacin y anlisis de grano fino para el dao localizado como cuando se elimina el pedido errneo de un cliente. Flashback tambin permite la correccin de daos ms generalizados, y lo hace con rapidez para evitar un largo tiempo de baja como cuando se eliminan todas las rdenes del mes de un cliente. Flashback es exclusivo para Oracle Database y soporta la recuperacin en todos los niveles, incluso las filas, transacciones, tablas, espacios de tabla y base de datos.

Replicacin avanzadaAR (Advanced Replication) es un sofisticado mecanismo de replicacin disponible en Oracle. AR permite que una o ms bases de datos origen, con ciertos esquemas predeterminados, e incluso con segmentos especficos dentro de cada base de datos sean replicadas a una o ms bases de datos destino en un esquema de replicacin de sentido nico o mltiple. As, tanto las base de datos de origen como las de destino pueden gestionar de forma concurrente las lecturas y escrituras. Desde una perspectiva lgica, AR ofrece una base de datos de reserva ``en caliente''. A diferencia de un escenario convencional de base de datos de reserva, la base de datos destino est abierta y disponible para recuperacin inmediata ante un fallo de la base de datos origen (ver siguiente figura). Idealmente, el destino es mantenido en una mquina separada en una situacin remota para propsito de recuperacin de desastres.

16

Figura: Arquitectura de replicacin avanzada Bajo AR, las copias mltiples de bases de datos o subconjuntos especficos son escritas concurrentemente y se mantienen sincronizadas casi en tiempo real. Una configuracin as se denomina configuracin multi-maestro (porque existen mltiples copias maestras). Si no se desea sincronizacin inmediata, puede tomarse un modelo dirigido por eventos para propagar las transacciones de un maestro a los otros. Por ejemplo, la propagacin puede estar basada en tiempo, producindose durante horas especficas de poco uso. Si se est usando la replicacin para propsitos de recuperacin de fallos, sin embargo, la sincronizacin debera ser inmediata. Por ello, cada copia de la base de datos debera de mantenerse de manera peer-to-peer. Todas las escrituras inicialmente se almacenan de forma local, y luego se remiten a cada base de datos de destino utilizando el mecanismo push, en oposicin a la replicacin simple de instantneas que se obtiene al tirar (pull) de los datos desde la base de datos origen. Cada transaccin se propaga de forma consistente para prevenir violaciones de la integridad de los datos. Si se producen violaciones o conflictos de integridad, se llevan a cabo los esquemas especficos para resolucin de conflictos. stos pueden producirse por una variedad de razones. Por ejemplo, si distintos usuarios efectan cambios en la misma fila en cada base de datos, existir un conflicto. Una violacin de clave nica es otro ejemplo de estos conflictos. Los conflictos deben ser detectados y resueltos amigablemente. AR ofrece potentes algoritmos para la deteccin de conflictos y su resolucin. La resolucin de conflictos puede ser consistente o variar al nivel de segmento (tabla) o incluso columna. Hay disponibles mltiples tcnicas de resolucin de conflictos, como utilizar el ltimo de los cambios, usar el primero de los cambios, utilizar los cambios especficos a una cierta sede/base de datos, etc. A medida que las transacciones van remitiendo, si una base de datos destino especfica no est disponible, las transacciones son retenidas en el origen en la cola diferida. Cuando la17

base de datos de destino est disponible otra vez, se aplican en ella las transacciones. La falta de disponibilidad de una o ms bases de datos destino no evitan que las transacciones sean propagadas a las restantes copias de la base de datos. Tanto las sentencias DML como las DDL se propagan entre todas las maestras. AR tradicionalmente ha usado desencadenadores (triggers), colas asncronas y varias tablas peridicas para implementar distintos esquemas de replicacin. La replicacin basada en desencadenadores es efectiva en ciertos escenarios. Tradicionalmente, el enfoque basado en desencadenadores en AR es disuasorio, evitando que las sedes con una fuerte actividad puedan usarlo eficientemente sin una degradacin significativa del rendimiento. AR en Oracle usa desencadenadores y paquetes internos. Los desencadenadores y paquetes internos son mdulos de cdigo en C enlazados en el ncleo de Oracle. Esto hace el cdigo relativamente ms a prueba de manipulacin (con seguridad elevada), as como ligero y eficiente, permitiendo que la implementacin sea rpida y escalable. No se configuran ni mantienen componentes externos. Al no generarse paquetes ni disparadores, pueden ser instanciados y ejecutados con mayor rapidez. La propagacin de datos es manejada mediante el protocolo de flujo directo, en lugar de mediante el igualmente fiable, pero menos eficaz, protocolo de confirmacin en dos fases. En el caso de AR, durante el fallo de una copia especfica de la base de datos, la causa del fallo debe determinarse y la base de datos recuperarse/reconstruirse desde la ltima copia o desde salvaguardas. Como se indic previamente, existe la posibilidad de una prdida de datos (las escrituras ms recientes) durante ese fallo. Siempre que una copia especfica de la base de datos falla, las otras copias continan funcionando a menos que se produzca un desastre mayor en cuyo caso todas las copias existentes son descartadas. Las posibilidades de que esto ocurra son remotas. Durante estas situaciones, el intervalo de fuera de servicio es significativo porque la base de datos tiene que reconstruirse usando la ltima salvaguarda disponible. Todo el trfico de clientes/usuarios tiene que redirigirse a travs de TAF o Net8 a copias supervivientes de la base de datos. Ventajas de la replicacin avanzada AR ofrece las siguientes ventajas:

Todas las bases de datos mantenidas por AR pueden mantenerse abiertas y en uso concurrente. AR puede utilizarse para recuperacin de desastres teniendo una copia de la base de datos mantenida en una sede remota. Existe independencia de hardware ya que las mquinas en que se crean las bases de datos pueden ser de distintos fabricantes, plataformas y versiones de SO. Se han efectuado mejoras a Oracle Enterprise Manager para simplificar la configuracin y administracin de bases de datos replicadas.

18

Desventajas de la replicacin avanzada AR tiene las siguientes desventajas:

La propagacin podra no ser siempre inmediata. Los cambios de datos en una base de datos pueden no ser visibles inmediatamente en las otras bases de datos. Durante desastres, existe una posibilidad de alguna prdida de datos porque la base de datos de una sede puede destruirse antes de que los ltimos cambios se hayan propagado. Si la base de datos de una sede falla, pero no es destruida, la prdida de datos podra ser temporal y todas las copias de la base de datos pueden sincronizarse una vez que la base de datos se recupere del fallo. Los mecanismos de resolucin de conflictos deben ser bien planificados y tener en cuenta escenarios en los que puede escribirse directamente en las copias de la base de datos para prevenir corrupcin lgica de los datos.

Proteccin contra la Corrupcin de DatosLa corrupcin fsica de datos es creada por fallas en cualquiera de los componentes que conforman la estructura IO. En un nivel alto, cuando Oracle origina una operacin de escritura, la operacin IO de la base de datos pasa al cdigo IO del sistema operativo. Esto inicia el proceso para pasar IO a travs de la estructura IO donde atraviesa varios componentes, desde el sistema de archivos hasta el administrador de volumen y el controlador de dispositivo hasta el Host-Bus Adapter y el controlador de almacenamiento, y finalmente a la unidad de disco donde se escriben los datos. Las fallas de hardware o bugs en cualquiera de estos componentes podran dar como resultado datos invlidos o corruptos que se escriben en el disco. La corrupcin resultante podra daar la informacin de control interno de Oracle o los datos de aplicaciones/usuarios, y ambos seran catastrficos para el funcionamiento o la disponibilidad de la base de datos. Oracle Hardware Assisted Resilient Data (HARD) Oracle Hardware Assisted Resilient Data es un programa completo que facilita las medidas preventivas para reducir la incidencia de corrupcin fsica debido a fallas en la estructura IO. Este exclusivo programa es un esfuerzo de colaboracin entre Oracle y proveedores de almacenamiento lderes. Especficamente, los proveedores de almacenamiento participantes implementan los algoritmos para la validacin de datos Oracle dentro de sus dispositivos de almacenamiento. Exclusivo para la base de datos Oracle, HARD detecta corrupciones en cualquier parte del proceso IO entre la base de datos y el dispositivo de almacenamiento; esta validacin de datos evita que los datos corruptos se escriban en almacenamiento persistente. HARD ha sido mejorado para ofrecer algoritmos de validacin ms completos y soporte para todo tipo de archivos. Los archivos de datos, registros online, registros de archivo y backups estn respaldados mediante el programa HARD. Automatic Storage Management (ASM) utiliza las capacidades HARD sin la necesidad de utilizar dispositivos binarios.19

Combinacin de solucionesCada una de las opciones de alta disponibilidad ofrece proteccin contra ciertos tipos de fallos. A veces, la mejor opcin es combinar dos o ms de las soluciones y prevenir una amplia variedad de situaciones causantes de paros. Por ejemplo, usando RAC nos protegemos contra fallos de nodos locales solamente, pero usndolo con ODG obtenemos una proteccin adicional contra escenarios de desastres, como una prdida completa del centro de datos.

Ilustracin 1: Data Guard en Oracl Enterprise Manager 10g

20

Conclusiones Las empresas han comprendido casi a cabalidad el valor esencial de mantener sus infraestructuras tecnolgicas altamente disponibles para proteger los sistemas de informacin y de datos crticos. Lo esencial para muchos sistemas de informacin crticos es la base de datos, as como la responsabilidad de la disponibilidad, seguridad y confiabilidad de la infraestructura de tecnologa. Basados en dcadas de innovacin, Oracle con sus distintos productos Database introduce las nuevas y revolucionarias tecnologas de proteccin de datos para ofrecer a los clientes nuevas y efectivas maneras de maximizar su disponibilidad de aplicaciones y datos. Todo el conjunto de tecnologas Oracle ofrece a las empresas proteccin frente a prcticamente cualquier clase de tiempo de baja ocasionado tanto por una actividad de mantenimiento planificada como por una falla inesperada. Y las capacidades ofrecidas hacen que el costo de implementacin de su entorno de base de datos y de adaptacin a las cambiantes necesidades comerciales sea significativamente menor al que las empresas u organizaciones tenan que pagar antes para lograr resultados equivalentes.

21

BibliografaOracle Press. (s.f.). Obtenido de http://oracleracnotes.wordpress.com/ oracle.com. (s.f.). Obtenido de http://www.oracle.com/global/lad/database/active-dataguard.html oracle-alta disponibilidad. (s.f.). Obtenido de www.oracle.com/technetwork/es/documentation/317488-esa.pdf Oracle-RAC. (s.f.). Obtenido de http://www.oracle.com/technology/products/database/clustering/index.html wikipedia - oracle_rac. (s.f.). Obtenido de http://es.wikipedia.org/wiki/Oracle_RAC

22

Anexos

Anexo 1: Actualizacin Rotativa de Software

23

Anexo 2: Parches Online

24