00-Base de Datos I

Post on 05-Feb-2016

218 views 0 download

description

Gestion de Transacciones, BD Distribuidas (Completo)

Transcript of 00-Base de Datos I

ESCUELA:

PONENTE:

BIMESTRE:

BASES DE DATOS II

CICLO:

CIENCIAS DE LA COMPUTACIÓN

II BIMESTRE

Ing. Juan Carlos Morocho

ABRIL – AGOSTO 2007

Gestión de transacciones Bases de datos distribuidas: conceptos, ventajas y

desventajas Beneficios de la replicación de bases de datos Introducción a las bases de datos móviles Aplicaciones avanzadas de base de datos

Gestión de transacciones Bases de datos distribuidas: conceptos, ventajas y

desventajas Beneficios de la replicación de bases de datos Introducción a las bases de datos móviles Aplicaciones avanzadas de base de datos

Contenidos esenciales

Gestión de transaccionesGestión de transacciones

Una transacción es una secuencia de operaciones llevadas a cabo como una unidad lógica de trabajo

simple. (http://www.upseros.com/fotocopiadora/ficheros/Bases%20de%20Datos/bbddtema8.pdf

)Una acción o serie de acciones llevada a cabo por un único usuario o por un programa de aplicación y que lee

y actualiza el contenido de la base de datos. (CONNOLLY, Thomas M.; BEGG, Carolyn E., Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión, Pearson, 4ta. Edición, 2005, 1269 pág.)

Una transacción es una secuencia de operaciones llevadas a cabo como una unidad lógica de trabajo

simple. (http://www.upseros.com/fotocopiadora/ficheros/Bases%20de%20Datos/bbddtema8.pdf

)Una acción o serie de acciones llevada a cabo por un único usuario o por un programa de aplicación y que lee

y actualiza el contenido de la base de datos. (CONNOLLY, Thomas M.; BEGG, Carolyn E., Sistemas de bases de datos: Un enfoque práctico para diseño, implementación y gestión, Pearson, 4ta. Edición, 2005, 1269 pág.)

Atomicidad: una transacción debe ser una unidad atómica de trabajo: o todas sus operaciones se llevan a cabo o no se realiza ninguna de ellas.

Consistencia: una transacción debe llevar a la base de datos de un estado consistente a otro

Atomicidad: una transacción debe ser una unidad atómica de trabajo: o todas sus operaciones se llevan a cabo o no se realiza ninguna de ellas.

Consistencia: una transacción debe llevar a la base de datos de un estado consistente a otro

Propiedades de las transacciones

Aislamiento: las modificaciones realizadas por una transacción deben aislarse de las modificaciones llevadas a cabo por otras posibles transacciones concurrentes

Durabilidad: una vez la transacción ha terminado con éxito sus efectos deben hacerse permanentes en la base de datos

Aislamiento: las modificaciones realizadas por una transacción deben aislarse de las modificaciones llevadas a cabo por otras posibles transacciones concurrentes

Durabilidad: una vez la transacción ha terminado con éxito sus efectos deben hacerse permanentes en la base de datos

Propiedades de las transacciones (cont.)

Estados de una transacciónEstados de una transacción

Activa

Fallida

ConfirmadaParcialmente confirmada

Abortada

Begin Transaction

End Transaction

Abort

Abort

Commit

Intercalar operaciones de dos transacciones que operen sobre el mismo elemento de datos, pueden dejar a la base de datos en un estado inconsistente.

Lo evitaríamos si una transacción se ejecutase después que la otra de forma secuencial, sin ningún grado de paralelismo.

Intercalar operaciones de dos transacciones que operen sobre el mismo elemento de datos, pueden dejar a la base de datos en un estado inconsistente.

Lo evitaríamos si una transacción se ejecutase después que la otra de forma secuencial, sin ningún grado de paralelismo.

Serializabilidad

Una propiedad que indica que las operaciones de dos transacciones pueden intercalarse de forma que se comporten como si se estuviesen ejecutando en serie.

No todas las combinaciones tienen por qué ser serializables,

Serializabilidad (cont.)

Serializabilidad de un plan

Ejecutar las transacciones en serie, de forma que sólo haya una transacción activa en cada momento.

No importa qué transacción se ejecuta primero, y siempre que las transacciones se ejecuten de forma atómica la base de datos se mantendrá en un estado consistente.

Un plan de n transacciones se serializable si es equivalente a un plan en serie de las n transacciones, es decir produce los mismos resultados que alguna ejecución en serie.

Serializabilidad de un plan (cont.)

Serializabilidad de conflictosSerializabilidad de conflictos

La ordenación de las operaciones de lectura y escritura es importante:

Si dos transacciones únicamente leen en un determinado elemento de datos, no entran en conflicto entre sí y el orden no es importante.

Serializabilidad de conflictos (cont)

Si hay dos transacciones que leen o escriben elementos de datos completamente independientes, no entran en conflicto entre sí y el orden no es importante.

Si una de las transacciones escribe un elemento y otra lee o escribe el mismo elemento, el orden de ejecución sí que es importante.

Serializabilidad de vistasSerializabilidad de vistas

Para que una planificación sea serializable en cuanto a vistas debe cumplir:

Para cada elemento de datos x, si la transacción Ti lee el valor inicial de x en la planificación S1, entonces la transacción Ti también debe leer el valor inicial de x en la planificación S2

Serializabilidad de vistas (cont)

Para cada operación de lectura sobre el elemento de datos x por parte de la transacción Ti en la planificación S1, si el valor leído de x ha sido escrito por la transacción Tj, entonces la transacción Ti también debe leer el valor de x producido por la transacción Tj en la planificación S2

Serializabilidad de vistas (cont)Serializabilidad de vistas (cont)

Para cada elemento de datos x, si la última operación de escritura sobre x fue realizada por la transacción Ti en la planificación S1, la misma transacción debe realizar la escritura final del elemento de datos x en la planificación S2

Bases de datos distribuidas

Una base de datos construida sobre una red computacional.

La información que constituye la base de datos esta almacenada en diferentes sitios en la red, y las aplicaciones que se ejecutan accesan datos en distintos sitios.

Bases de datos distribuidas (cont)Bases de datos distribuidas (cont)

Una Base de Datos Distribuida entonces es una colección de datos que pertenecen lógicamente a un sólo sistema, pero se encuentra físicamente esparcido en varios "sitios" de la red.

Ventajas La naturaleza distribuida de algunas aplicaciones de Bases de DatosMayor fiabilidad y disponibilidadPosibilidad de compartir los datos al tiempo que se mantiene un cierto de grado de control localMejor rendimiento

Desventajas Desventajas

La principal desventaja se refiere al control y manejo de los datos

El rendimiento puede ser peor para el procesamiento distribuido que para el procesamiento centralizado

El procesamiento de base de datos distribuida puede resultar menos confiable que el procesamiento centralizado.

Desventajas (cont.)

Mayor complejidad, a menudo se traduce en altos gastos de construcción y mantenimiento.El procesamiento de bases de datos distribuido es difícil de controlar.

Replicación de bases de datos

Es el proceso de copiar y mantener objetos de las base de datos, como por ejemplo relaciones, en múltiples bases de datos que forman un sistema de bases de datos distribuido.

Beneficios de la replicación

DisponibilidadFiabilidadRendimientoReducción de la cargaProcesamiento desconectadoSoporta muchos usuariosSoporta aplicaciones avanzadas

Bases de datos móviles

Los usuarios que se encuentran en lugares remotos fuera de la organización suelen tener las mismas necesidades de información que si estuviesen en su oficina, por lo que surge la necesidad de utilizar bases de datos móviles que se adapten a las necesidades de los dispositivos donde se utilizan.

Bases de datos móviles (cont)

Una base de datos portable y físicamente independiente del servidor corporativo de base de datos, pero es capaz de comunicarse con ese servidor desde sitios remotos, permitiéndose el compartir los datos corporativos.

Aplicaciones avanzadas de base de datos

Diseño asistido por computadora (CAD)Fabricación asistida por computadora (CAM)Ingeniería del software asistida por computadora (CASE)Sistema de gestión de redSistemas de información de oficina (OIS) y sistemas multimediaAutoedición digitalSistemas de información geográfica (GIS)

26