Anda di halaman 1dari 13

Introduccin

Arquitectura de los DBMS


Lenguajes de los DBMS
Diccionario de datos
Seguridad e integridad de los datos
Administrador del DBMS
Arquitectura Cliente-Servidor

Definimos un Sistema Gestor de Bases de


Datos o SGBD, tambin llamado DBMS
(Data Base Management System) como
una coleccin de datos relacionados entre
s, estructurados y organizados, y un
conjunto de programas que acceden y
gestionan esos datos.
La coleccin de esos datos se denomina
Base de Datos o BD, (DB Data Base).

Los objetivos de un DBMS son:


Independencia de datos:
x Los programas de aplicacin deben verse
afectados lo menos posible por cambios
efectuados en datos que no usan.
Integridad de los datos:
x la informacin almacenada en la BD debe cumplir
ciertos requisitos de calidad; para ello hace falta,
en el momento de introducirse los valores de los
datos, que stos se almacenen debidamente, y
que posteriormente no se deterioren
Seguridad de los datos:
x a la informacin almacenada en la BD slo
pueden acceder las personas autorizadas y de la
forma autorizada.

Debe proporcionar los siguientes


servicios:
Creacin y definicin de la base de datos.
Manipulacin de los datos.
Acceso a los datos.
Mantener integridad y consistencia de los
datos.
Mecanismos de copias de respaldo y
recuperacin.

Antes de aparecer los SGBD (dcada de los


setenta), la informacin se trataba y se gestionaba
utilizando los tpicos sistemas de gestin de
archivos que iban soportados sobre un sistema
operativo.

La gestin de archivos presentaba inconvenientes:


Redundancia e inconsistencia de los datos.
Dificultad para tener acceso a los datos.
Separacin y aislamiento de los datos.
Problemas en la seguridad de los datos.
Dependencia de estructura del fichero con el
lenguaje de programacin.

En 1975, el comit ANSI-SPARC (American


National Standard Institute - Standards
Planning and Requirements Committee)
propuso una arquitectura de tres niveles
para los DBMS cuyo objeto objetivo
principal era separar la BD fsica de los
programas de aplicacin.
Nivel interno o fsico.
Nivel externo o de visin.
Nivel conceptual.

Es el ms cercano al almacenamiento
fsico, es decir, tal y como estn
almacenados en el ordenador. Describe la
estructura fsica de la BD mediante un
esquema interno. Este esquema se
especifica con un modelo fsico y describe
los detalles de cmo se almacenan
fsicamente los datos: los archivos que
contienen la informacin, su organizacin,
los mtodos de acceso a los registros, los
tipos de registros, la longitud, los campos
que los componen.

Es el ms cercano a los usuarios, es


decir, es donde se describen varios
esquemas externos o vistas de usuarios.
Cada esquema describe la parte de la
BD que interesa a un grupo de usuarios
en este nivel se representa la visin
individual de un usuario o de un grupo
de usuarios.

Describe la estructura de toda la BD para


un grupo de usuarios mediante un
esquema conceptual. Este esquema
describe las entidades, atributos,
relaciones, operaciones de los usuarios y
restricciones, ocultando los detalles de las
estructuras fsicas de almacenamiento.
Representa la informacin contenida en la
BD. En la Figura siguiente se representan los
niveles de abstraccin de la arquitectura
de un DBMS.

El DBSM debe de transformar cualquier


peticin de usuario (esquema externo) a
una peticin expresada en trminos de
esquema conceptual, para finalmente
ser una peticin expresada en el
esquema interno que se procesar
sobre la BD almacenada.

El proceso de transformar peticiones y


resultados de un nivel a otro se denomina
correspondencia o transformacin, el SGBD es
capaz de interpretar una solicitud de datos y
realiza los siguientes pasos:
El usuario solicita unos datos y crea una consulta.
El DBMS verifica y acepta el esquema externo para
ese usuario.
Transforma la solicitud al esquema conceptual.
Verifica y acepta el esquema conceptual.
Transforma la solicitud al esquema fsico o interno.
Selecciona la o las tablas implicadas en la consulta y
ejecuta la consulta.
Transforma del esquema interno al conceptual, y del
conceptual al externo.
Finalmente, el usuario ve los datos solicitados.

Con la arquitectura a tres niveles se


introduce el concepto de
independencia de datos, se definen dos
tipos de independencia:
Independencia lgica: la capacidad de
modificar el esquema conceptual sin tener
que alterar los esquemas externos ni los
programas de aplicacin.
Independencia fsica: la capacidad de
modificar el esquema interno sin tener que
alterar ni el esquema conceptual, ni los
externos.

Todos los DBMS ofrecen lenguajes e interfaces


apropiadas para cada tipo de usuario:
administradores, diseadores, programadores
de aplicaciones y usuarios finales.
Los lenguajes van a permitir al administrador
de la BD especificar los datos que componen
la BD, su estructura, las relaciones que existen
entre ellos, las reglas de integridad, los
controles de acceso, las caractersticas de tipo
fsico y las vistas externas de los usuarios.

Los lenguajes se clasifican en:


Lenguaje de definicin de datos (LDD o
DDL)
x Se utiliza para especificar el esquema de la
BD, las vistas de los usuarios y las estructuras de
almacenamiento. Es el que define el esquema
conceptual y el esquema interno. Lo utilizan
los diseadores y los administradores de la BD.
Lenguaje de manipulacin de datos (LMD o
DML)
x Se utilizan para leer y actualizar los datos de la
BD. Es el utilizado por los usuarios para realizar
consultas, inserciones, eliminaciones y
modificaciones.

Es el lugar donde se deposita informacin


de todos los datos que forman la BD.
El diccionario contiene las caractersticas
lgicas de los sitios donde se almacenan
los datos del sistema.

El diccionario de datos proporciona


informacin acerca de:
La estructura lgica y fsica de la BD.
Las definiciones de todos los objetos de la BD: tablas,
vistas, ndices, disparadores,
procedimientos, funciones, etctera.
El espacio asignado y utilizado por los objetos.
Los valores por defecto de las columnas de las
tablas.
Informacin acerca de las restricciones de
integridad.
Los privilegios y roles otorgados a los usuarios.

Debe cumplir las siguientes caractersticas:


Debe soportar las descripciones de los modelos
conceptual, lgico, interno y externo de la BD.
Debe estar integrado dentro del DBMS.
Debe apoyar la transferencia eficiente de
informacin al DBMS.
Debe reflejar los cambios en la descripcin de
la BD.
Debe estar almacenado en un medio de
almacenamiento con acceso directo para la
fcil recuperacin de informacin.

El DBMS debe vigilar las peticiones del


usuario y rechazar todo intento de violar
las restricciones de seguridad y de
integridad definidas por el DBA
(Administrador). Estas tareas pueden
realizarse durante el tiempo de
compilacin, de ejecucin o entre
ambos.

Para garantizar la seguridad e integridad


de los datos un DBMS debe:
Garantizar la proteccin de los datos contra
accesos no autorizados, tanto intencionados
como accidentales. Debe controlar que slo los
usuarios autorizados accedan a la BD.
Ser capaz de recuperar la BD llevndola a un
estado consistente en caso de ocurrir algn
suceso que la dae.
Ofrecer mecanismos para conservar la
consistencia de los datos en el caso de que
varios usuarios actualicen la BD de forma
concurrente.

El DBA (administrador de la base de datos) es el


responsable del control general del sistema a nivel
tcnico. Posee el mximo nivel de privilegios. Entre
sus tareas estn:
Definir el esquema conceptual.
Definir el esquema interno.
Establecer un enlace con los usuarios.
Definir las restricciones de seguridad y de integridad.
Definir las polticas de vaciado y recarga.
Supervisar el rendimiento.

Hasta ahora hemos explicado los


sistemas de bases de datos desde el
punto de vista de la llamada
arquitectura ANSI/SPARC. Ahora lo
veremos desde una perspectiva
ligeramente diferente.

Un sistema de bases de datos puede ser


visto como un sistema con una
estructura muy sencilla de dos partes. Un
servidor y un conjunto de clientes.
El servidor es el propio DBMS. Soporta todas
las funciones bsicas de un DBMS. En
particular, proporciona todo el soporte de
los niveles externo, conceptual e interno.
Los clientes son las diversas aplicaciones que
se ejecutan sobre el DBMS, tanto
aplicaciones escritas por el usuario como
aplicaciones integradas.

Usuarios finales

Aplicaciones

Clientes

DBMS

Servidor

Base de datos

(No os vamos a decir ni los enunciados


ni las respuestas de las 10 preguntas de
test, ahorraros esa pregunta)