Professional Documents
Culture Documents
Curso 06-07
Qu es un SGBD?
Una BD es un conjunto de datos que describen las actividades de una o varias organizaciones relacionadas.
Entidades (p.e. estudiantes y cursos) Vnculos o relaciones (p.e. Mara est en el curso de BDII)
Un sistema de Gestin de Base de Datos es un software especfico que permite a los usuarios crear, mantener y manipular la BD (incorporando transparente e internamente los mecanismos necesarios para su funcionamiento correcto) . Un sistema de base de datos al conjunto formado por la BD ms el SGBD.
Curso 06-07
Curso 06-07
Modelos de datos
Un modelo de datos es una coleccin de conceptos para la descripcin de los datos. Un esquema es una descripcin particular de datos utilizando un modelo dado. El modelo relacional de datos es el ms utilizado en la actualidad:
Principal concepto: relacin que es bsicamente una tabla con filas y columnas (relacin en el sentido de enumeracin, no de correspondencia) . Cada relacin tiene un esquema que describe las columnas, o campos.
Curso 06-07 Bases de Datos II: Esther de Ves / Vicente Cervern - Tema 1 5
Vista 1
Vista 2
Vista 3
Niveles de abstraccin
Esquema externo aplicacin 1 (Vista 1):
CREATE VIEW pas (dni, nombre, sal_men) AS SELECT dni, nombre, salario/14 FROM emp WHERE tipo=pas;
Esquema conceptual:
emp(dni, nombre, direccin, salario, tipo)
Esquema interno:
Fichero ordenado empleado con ndice sobre el campo dni
Curso 06-07
Niveles de abstraccin
Aplicacin 1: accede a la informacin a travs del esquema externo 1
SELECT nombre, sal_men FROM PAS WHERE dni=algo;
SGBD: Control del acceso y resolucin de la operacin pedida SO: Manipulacin de los drivers de los dispositivos de memoria secundaria
Curso 06-07
Curso 06-07
Esquema conceptual
Independencia fsica
Esquema fsico
Curso 06-07
10
Consultas en un SGBD
Un SGBD proporciona un lenguaje especializado que permite obtener datos de la BD. El SGBD se preocupa de evaluar las consultas de la forma ms eficiente que sea posible. El SGBD permite a los usuarios (a los usuarios autorizados!) crear, modificar y consultar los datos almacenados mediante un lenguaje de manipulacin de datos.
Lenguajes DDL Y DML
Curso 06-07
11
Transaccin
Concepto clave en SGBD es la transaccin: es una secuencia atmica de acciones en una BD iniciada por un usuario. (atmica = no se puede dividir, o se ejecuta todo, o nada (se retrotrae todo) ) . Cada transaccin, ejecutada completamente, debe dejar la BD en un estado consistente (si la BD es consistente cuando la transaccin comenz). (sign. consistencia)
Los usuarios pueden especificar algunas restricciones de integridad sobre los datos y el SGBD controlar estas restricciones (y si no se cumplen, retrotraer la transaccin) . El significado de las restricciones es slo conocido por el usuario, por lo que el asegurar que una transaccin preserve la consistencia de la BD es responsabilidad de los usuarios.
Curso 06-07
12
Curso 06-07
Atomicidad
El SGBD asegura la atomicidad de las transacciones (propiedad de todo o nada)
incluso si el sistema se cae en mitad de una transaccin.
Idea: guardar una traza (log) de todas las acciones realizadas por el SGBD cuando se ejecuten transacciones sobre la BD.
Curso 06-07 Bases de Datos II: Esther de Ves / Vicente Cervern - Tema 1 15
Estructura de un SGBD
Curso 06-07
16
Curso 06-07
Curso 06-07
19
Nmero de usuarios:
Monousuario Multiusuario
Nmero de lugares:
Centralizados Distribuidos.
Curso 06-07
20
Bibliografa
R. Ramaskrishnan, J. Gehrke. Database Management Systems. McGraw Hill. Captulo 1. Elmasri y Navathe. Fundamentos de Sistemas de Bases de datos. Addison Wesley. Captulo 1. T. Connolly, C. Begg. Database Systems. Addison Wesley. Captulo 1.
Curso 06-07
21
2. 3.
4. 5.
6. 7.
8.
Por qu elegiras un sistema de BD en lugar de almacenar la informacin en ficheros del sistema operativo? Qu es la independencia lgica y por qu es importante? Explica la diferencia entre independencia lgica e independencia fsica. Explica la diferencias entre esquema externo, conceptual y fsico. Asumiendo que el administrador de la BD no va a ejecutar consultas, debe entender la optimizacin de consultas? Por qu? Qu es una transaccin? Por qu un SGBD mezcla acciones de varias transacciones en lugar de ejecutar una tras otra? Qu debe un usuario garantizar con respecto a una transaccin y la consistencia de la BD?
22
Curso 06-07