20
UNIDAD 2 - ARQUITECTURA IMPLEMENTACIÓN INTERNA ARQUITECTURA DE UN SISTEMA DE ADMINISTRACION DE BASE DE DATOS ESTRUCTURA GENERAL DEL SISTEMA COMPONENTES FUNDAMENTALES EL ADMINISTRADOR DE ALMACENAMIENTO EL ADMINISTRADOR DE CONSULTAS EL ADMINISTRADOR DE TRANSACCIONES

Tecnologia Base Datos Implementacion Interna

Embed Size (px)

Citation preview

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

ARQUITECTURA DE UN SISTEMA DE ADMINISTRACION DE BASE DE DATOS

ESTRUCTURA GENERAL DEL SISTEMA COMPONENTES FUNDAMENTALES

EL ADMINISTRADOR DE ALMACENAMIENTO EL ADMINISTRADOR DE CONSULTAS EL ADMINISTRADOR DE TRANSACCIONES

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

ESTRUCTURA GENERAL DEL SISTEMA

Un sistema de base de datos se divide en módulos que se encargan de cada una de las tareas generales.

Aunque algunas de las tareas puede ser realizada por el Sistema Operativo, en la mayor parte de los casos, éste proporciona únicamente los servicios más elementales.

El diseño de la base de datos debe incluir una interfaz entre el sistema de B.D y el sistema operativo.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

ESTRUCTURA GENERAL DEL SISTEMA

Pueden existir 3 clases de entradas al sistema de administración de B.D.

(DBMS):

Consultas, son las preguntas concernientes a los datos. Se generan de dos maneras: Mediante una interfaz de consultas genéricas Mediante interfaces de programas de aplicación.

Modificaciones, estas operaciones modifican los datos. Pueden emitirse como las consultas.

Modificaciones del esquema, estos comandos son emitidos por personal autorizado, a quienes llamamos Administradores de Bases de Datos.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

ESTRUCTURA GENERAL DEL SISTEMA DE ADMINISTRACION DE BASE DE DATOS (Abreviada)

Modificaciones del esquema

Consultas Modificaciones

Procesador de Consultas

Administrador de Transacciones

Datos

Metadatos

Administrador de Almacenamiento

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL ALMACENAMIENTO O MANEJADOR DE ARCHIVOS

Encargado de asignar espacio en el disco y de las estructuras de datos o metadatos (que pueden contener, los nombres de las relaciones, los nombres de los atributos de éstas y los tipos de datos), que se van a emplear para representar la información almacenada en el disco.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL ALMACENAMIENTO O MANEJADOR DE ARCHIVOS

Su función es obtener del almacenamiento de datos la información solicitada y modificarla allí cuando se lo pidan los niveles de sistema de más arriba.

Maneja las estructura de datos como parte de la implementación del sistema físico incluyendo:

Archivos de Datos, que guardan la Base de Datos Diccionario de datos, que almacena la información relativa a la estructura de la B.D. Se usa

constantemente, por lo que debe tenerse mucho cuidado de desarrollar un diseño apropiado y una implementación eficiente.

Índices, es una estructura que permite el acceso rápido a elementos de información que contienen valores determinados, si se conoce una parte de su valor. Forma parte de los datos almacenados y una descripción de los atributos que cuenta con ellos es parte de los metadatos.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL ALMACENAMIENTO O MANEJADOR DE ARCHIVOS

En un sistema simple de B.D., el administrador de almacenamiento quizá no sea otra cosa que el sistema de archivos del sistema operativo subyacente. Sin

embargo, por razones de eficiencia los sistemas de administración de bases de

datos suelen controlar directamente el almacenamiento en el disco.

Consta de dos componentes:

El administrador de búffer El administrador de archivos

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL ALMACENAMIENTO O MANEJADOR DE ARCHIVOS

El administrador de archivos, lleva un control de la localización de los archivos en el disco y a solicitud del administrador de búfer, obtiene el bloque (obloques) que contiene uno de ellos. Recuérdese que los discos generalmente están divididos en bloques, regiones de almacenamiento contiguas que alojan gran cantidad de bytes, quizá 2 a la 12 o 2 a la 14 (cerca de 4000 a 16000 bytes).

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL ALMACENAMIENTO O MANEJADOR DE ARCHIVOS

El administrador de búffer, se encarga de la memoria principal.Obtiene bloques de datos del disco a través del administrador de archivos y selecciona una página de la memoria principal donde guardarlos. Durante algún tiempo puede conservar un bloque de disco en la memoria principal, pero lo devolverá al disco, si otro bloque necesita su página de la memoria principal. Las páginas también se regresan al disco cuando lo pide el administrador de transacciones.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL CONSULTAS O PROCESADOR DE CONSULTAS

Traduce las proposiciones en lenguaje de consulta a instrucciones de bajo nivel que puede entender el manejador de B.D.

Trata de convertir la solicitud del usuario a una forma equivalente pero más eficiente, encontrando una estrategia adecuada para ejecutar la consulta.

No solo maneja consultas, sino también las peticiones de modificaciones de datos o los metadatos. Su función consiste en encontrar la mejor manera de llevar a cabo una operación solicitada y emitir comandos al administrador de almacenamiento que los ejecutará.

El precompilador de DML, que convierte las proposiciones DML incrustadas en un programa de aplicaciones en llamadas normales a procedimientos en el lenguaje huesped . El precompilador debe interactuar con el procesador de consultas para generar el código apropiado.

El compilador DDL, que convierte las proposiciones en DDL en un conjunto de tablas que contienen metadatos. Tales tablas se almacenan después en el diccionario de datos.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DEL CONSULTAS O PROCESADOR DE CONSULTAS

Se encarga de convertir una consulta o manipulación de la B.D., que puede estar expresada en un nivel muy alto (por ejemplo, como consulta en SQL), en una serie de peticiones de datos almacenados, como determinadas tuplas de una relación o las partes de un índice en una relación. A menudo la parte más dificil del procesamiento de consultas es la optimización de la consulta, esto es, seleccionar un buen plan de consulta o sea una serie de peticiones al sistema de almacenamiento que las atenderá.

Un plan de consulta será mejor en la medida que realice menos pasos para contestar la consulta. Los pasos costosos son aquellos en que el administrador de almacenamiento copia un bloque del disco en una página del depósito del buffer o bien aquellos en que una página se rescribe en el disco. Por tanto, es razonable contar sólo estas operaciones con bloques de disco al evaluar el costo de un plan de consultas.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

Es un módulo de programa que constituye la interfaz entre los datos de bajo nivel almacenados en la base de datos y los programas de aplicaciones y las consultas que se hacen al sistema.

Se encarga de interactuar con el manejador de archivos o administrador de almacenamineto, de conservar la integridad, de garantizar la seguridad, del respaldo y recuperación y del control de concurrencia.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADOR DE B.D.

Es el componente encargado de conservar la integridad del sistema. Debe asegurarse de que las consultas que se ejecutan al mismo tiempo no interfieran entre ellas y de que el sistema no pierda información cuando sobrevenga alguna falla. Interactúa con el administrador de consultas, pues debe saber sobre qué datos están operando las consultas actuales (para impedir acciones conflictivas) y posiblemente necesite posponer ciertas consultas u operaciones para evitar esos conflictos. Interactúa con el administrador de almacenamiento porque los esquemas de protección de información suelen requerir guardar una bitácora de los cambios efectuados en ella.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

Un sistema ordinario de administración de B.D. Permite al usuario agrupar una omás consultas, modificaciones o ambas en una transacción.

Una transacción es un conjunto de operaciones que deben aparecer como sihubieran sido ejecutadas juntas secuencialmente, como una unidad. Con frecuencia un sistema de B.D. permite ejecutar varias transacciones demanera simultánea.El adminitrador de transacciones se encarga de que todas las operaciones se realicen en forma apropiada. La ejecución apropiada requiere las propiedadesACID, abreviatura de los cuatro requisitos principales de la ejecución detransacciones (Atomicidad, Consistencia, Aislamiento, Durabilidad).

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

Propiedades de las Transacciones:Atomicidad: deberá realizarse la transacción completa o nada de ella. Por ejemplo,el retiro de dinero en un cajero automático y el cargo correspondiente a la cuentadel cliente, deberán ser una transacción atómica individual.

Consitencia: una B.D generalmente tiene un concepto de un “estado coherente”, en el cual la información cumple las espectativas que podamos tener. Ejemplo, enuna linea aerea, un estado coherente es que el mismo asiento no sea destinado ados pasajeros. Aunque pueda violarse esta condición durante breves momentos alefectuar una transacción al moverse los pasajeros entre los asientos, eladministrador de transacciones deberá cerciorarse de que, una vez terminadaséstas, la base de datos satisfaga las condiciones de consistencia que se hayansupuesto.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

Propiedades de las Transacciones:

Aislamiento: cuando dos o más transacciones son ejecutadas al mismo tiempo, es preciso aislar sus efectos. En otras palabras, no deberemos ver los efectoscausados por dos operaciones realizadas al mismo tiempo que no habrían ocurridosi una fuera ejecutada antes que la otra. Ejemplo, cuando dos agentes de viajesvenden los boletos de un mismo vuelo y sólo queda disponible un asiento, unapetición habrá de ser concedida y la otra rechazada. Durabilidad: si la transacción ha cumplido su función, su efecto no debería perderse en caso de una falla del sistema, incluso si la falla sobreviene apenasconcluida la transacción.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

TECNICAS CON QUE SE OBTIENEN LAS PROPIEDADES ACID

Candados:

Las transacciones no están aisladas principalmente porque dos o más de ellas leen

(extraen) o escriben (introducen) el mismo elemento en la B.D.

Para que la información no quede inconsistente,el administrador de transacciones

casi siempre puede cerrar con candado los elementos a que accede la transacción.

Mientras una transacción tenga puesta el candado, las otras no tendrán acceso a

esos elementos.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

TECNICAS CON QUE SE OBTIENEN LAS PROPIEDADES ACID

Bitácoras:

El administrador de transacciones registra una “bitácora” de todas las transacciones iniciadas, de los cambios que causan en la base de datos y laconclusión de cada una. La bitácorase escribe siempre en un almacenamiento novolátil , es decir, un medio de almacenamineto como el disco donde una falla deenergía eléctrica no destruye la información.la bitácora siempre se grabaráinmediatamente en disco. El registro de todas las operaciones en bitácoras es unfactor importantísimo para garantizar la durabilidad.

UNIDAD 2 - ARQUITECTURAIMPLEMENTACIÓN INTERNA

EL ADMINISTRADOR DE TRANSACCIONES O MANEJADO R DE B.D.

TECNICAS CON QUE SE OBTIENEN LAS PROPIEDADES ACID

Compromiso de las transacciones:Por razones de durabilidad y atomicidad las transacciones suelen realizarse de modo “tentativo”, los cambios de la B.D. se calculan pero en realidad no se efectúan en ella. Cuando todo está listo para concluir la transacción, o comprometerla, los cambios se copian en una bitácora. Este registro primero se copia en el disco. Sólo entonces se introducen los cambios en la B.D.Aun si el sistema falla en el medio de ambos pasos, cuando el sistema vuelva a funcionar podemos leer la bitácora y ver qué cambios deben hacerse en la B.D. Si el sistema falla antes de introducir todos los cambios en la bitácora, podemos repetir la transacción,con la seguridad de que, por ejemplo, no estamos reservando accidentalmente dos veces el mismo asiento de avión ni repitiendoel cargo en una cuenta bancaria.