Title: Diapositiva 1
1Bases de Datos Relacionales.
Base de Datos Relacional.
2Bases de Datos Relacionales.
- Modelo de BD modelo relacional.
- Cómo se almacenará la información en el
ordenador. - Cómo se accede a los datos.
- Modelo de datos modelo entidad-relación.
- Cómo se guarda la información.
- Normas de representación.
3Bases de Datos Relacionales.
- Una Base de Datos describe organizaciones del
mundo real, representa simbólicamente los objetos
del mundo real como tablas. - Importancia del diseño de la BD.
- Diseño lógico proceso iterativo.
- Partir grandes estructuras heterogéneas en otras
estructuras más pequeñas y homogéneas. - A este proceso se le llama normalización. (Fco.
Nava)
4Bases de Datos Relacionales.
Diseño de una base de datos. Características
? Etapa previa a la introducción (Grabación) de
datos. ? Proceso iterativo (normalización) se
buscan estructuras pequeñas y homogéneas. ?
Normalización determinación de las relaciones
naturales entre los datos. ? Mecanismos de
normalización división de tablas en otras con
menos atributos. ? Importante que no se pierdan
datos (recuperación de las tablas originales
mediante uniones naturales).
Se trabaja sobre el modelo de datos descripción
de la base de datos.
5Bases de Datos Relacionales.
Diseño de una base de datos. Normalización.
- Objetivo de la normalización determinar las
relaciones naturales entre los datos. - Se parte una tabla en dos o más con menos
columnas. - No hay pérdida de información.
- Información de la tabla original operación de
unión de las tablas.
6Bases de Datos Relacionales.
Normalización.
- Actualización y borrado de los datos más fácil.
- Cuando un dato se almacena en un lugar y se
accede a él por referencia, la posibilidad de
error debido a la existencia de duplicados se
reduce. - Cuando los datos se almacenan una sola vez la
posibilidad de inconsistencia en los datos se
reduce.
7Bases de Datos Relacionales.
Ejemplo de Normalización
Clínica I
Base de Datos sin Normalizar
Clínica I
Consultas ? Queremos saber la dirección y el
teléfono de todos los pacientes que hayan sido
tratados por el especialista P1. ? Nombre,
dirección de todos los pacientes que tienen
consulta el 25/12/2000. ?
8Bases de Datos Relacionales.
Ejemplo de Normalización
Base de Datos Normalizada
Profesionales
Clínica I
Consultas
Consultas Se pueden hacer las mismas consultas.
9Bases de Datos Relacionales.
Objetivos de Diseño
? Satisfacer los requisitos de los usuarios. ?
Asegurar la integridad y consistencia de los
datos (respecto a las restricciones). ?
Proporcionar una estructura de la información
natural (consultas fáciles de entender,
actualizaciones sencillas). ? Satisfacer los
requisitos de rendimiento.
10Bases de Datos Relacionales.
Proceso habitual de diseño.
? Determinación de requisitos de usuario
(entrevistas,...) ? Análisis de los objetos
reales a considerar (se modelan mediante
entidades y atributos). ? Conversión de entidades
y atributos en tablas y columnas del gestor de
bases de datos. ? Determinación de atributos que
identifican unívocamente a un objeto. ?
Desarrollo de las reglas de acceso, modificación,
introducción de datos. ? Establecimiento de
relaciones entre objetos. ? Planificación de la
seguridad.
11Bases de Datos Relacionales.
Análisis de requisitos
Diseño del entorno a modelar con el sistema
informático ? Lista de aplicaciones y uso de
datos por ellas. ? Datos sobre la frecuencia de
manipulación de los datos. ? Quién manipulará
los datos. ? Datos temporales (información
disponible de forma crítica en el tiempo,
restricciones temporales, etc.)
12Bases de Datos Relacionales.
Análisis y modelado de datos. Recogida de Datos.
Antes de diseñar los objetos de la base de datos
tablas y columnas es necesario organizar y
analizar los datos del mundo real a un nivel
conceptual. Hay cuatro objetivos primarios ?
Identificación de las mayores funciones y
actividades de la organización. Por ejemplo
Mantener un registro de las consultas en un
centro, etc. ? Identificación de los objetos de
estas funciones y actividades. Por ejemplo
Paciente, profesional, etc. ? Identificación de
las características de estos objetos. ?
Identificación de las relaciones entre los
objetos.
13Bases de Datos Relacionales.
Análisis y modelado de datos. Identificación de
Entidades y Atributos
? Entidades. Identificación de objetos relevantes
(ej. Usuario, empleado, tratamiento, centro de
salud, etc.) ? Atributos. Identificación de
características de los objetos (ej. Para
empleado identificador, apellidos, nombre,
puesto, cualificación antigüedad). ? Relaciones.
Identificación de relaciones entre objetos (ej.
Centro de salud tiene empleados, centro de salud
tiene usuarios, usuarios son atendidos por
empleados, usuarios tienen tratamientos).
14Bases de Datos Relacionales.
Ejemplo de entidades y atributos.
15Bases de Datos Relacionales.
Ejemplo pequeña mejora.
16Bases de Datos Relacionales.
Diseño de las tablas.
Tabla (en base de datos relacional)
representación de una entidad con sus
atributos ? Cada columna valores para un
atributo. ? Cada fila instancia de una
entidad. Ejemplo
Una instancia de una entidad define una fila en
una tabla de la base de datos.
17Bases de Datos Relacionales.
Atributos Únicos
? Es necesario identificar unívocamente cada
instancia de una entidad. ? Para ello se usan
claves primarias (valores únicos para una o
varias propiedades). ? Las claves primarias
pueden ser referenciadas por otras tablas.
(Claves externas) ? Por ejemplo El DNI del
paciente y el DNI del profesional.
18Bases de Datos Relacionales.
Reglas de Integridad.
? Especificación del tipo de dato (ej texto,
numérico, fecha,...). ? Valores por defecto,
requeridos, y estado nulo. ? Restricciones de
integridad (reglas para validar la entrada de
datos (columna a tabla y tabla a tabla)). ?
Reglas de validación (ejemplo la fecha de
nacimiento ha de estar en el pasado).
19Bases de Datos Relacionales.
Relaciones entre los objetos
Hay que definir las relaciones entre tablas (uno
a uno, uno a varios, varios a uno, varios a
varios). Integridad referencial (se usan claves
externas o ajenas para asegurar la integridad de
los datos). ? Si se actualiza una clave
primaria, se actualizan todas las
claves externas que se refieran a ella. ? Si se
elimina una fila, hay que eliminar todas las
filas que tengan como clave externa su clave
primaria. ? Si se añade una fila con clave
externa, tiene que existir una fila con la
correspondiente clave primaria. Cada tabla
tiene uno o varios índices (eficiencia).