Fundamentos del Diseño de Bases de Datos: Modelado, Normalización y Restricciones
Enviado por federzzz y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,76 KB
Modelo Conceptual de Datos
Colección de herramientas conceptuales para la descripción de:
- Datos
- Relaciones entre datos
- Semántica de los datos
- Restricciones de consistencia
Modelado Semántico
Consiste en estudiar los datos que se pretenden almacenar en la base de datos antes de elegir el modelo de datos concreto que se va a usar. Permite separar:
- El análisis (¿qué?)
- El diseño (¿cómo?)
Fases del Diseño de Bases de Datos
Las fases principales son:
- Fase Inicial: Especificación de Requisitos del usuario.
- Fase de Diseño Conceptual: Esquema Conceptual de los datos.
- Fase de Diseño Lógico: Modelo de datos de la implementación del sistema de base de datos que se usará.
- Fase de Diseño Físico: Se especifican las características físicas de la base de datos.
Restricciones en Bases de Datos
Una restricción implica determinar qué entidades pueden ser miembros de un conjunto de entidades de nivel más bajo.
Tipos de Restricciones (Generalización/Especialización)
Se clasifican según:
1. Según su Definición:
- Definido por condición: En los conjuntos de entidades de nivel más bajo, la relación miembro se evalúa en función de si una entidad satisface o no una condición explícita o predicado.
- Definido por el usuario: Las entidades se asignan a un conjunto de entidades dado por el usuario de la base de datos (DB).
2. Según su Pertenencia:
- Disjunto: Requiere que una entidad no pertenezca a más de un conjunto de entidades de nivel más bajo. Ejemplo: Una entidad cuenta puede satisfacer sólo una condición para el atributo TipoCta; una entidad puede ser una CajaAhorro o bien una CtaCte, pero no ambas cosas a la vez.
- Solapado: La misma entidad puede pertenecer a más de un conjunto de entidades de nivel más bajo. Ejemplo: Del grupo de trabajo del empleado, ciertos directores participan en más de un grupo de trabajo. Un empleado dado puede, por lo tanto, aparecer en más de uno de los conjuntos de entidades grupo que son conjuntos de entidades de nivel más bajo de empleado.
3. Según su Completitud:
- Generalización o especialización total: Cada entidad de nivel más alto debe pertenecer a un conjunto de entidades de nivel más bajo. Ejemplo: Es total si todas las entidades cuenta deben ser o bien caja de ahorro o bien cuentas corrientes.
- Generalización o especialización parcial: Algunas entidades de nivel más alto pueden no pertenecer a algún conjunto de entidades de nivel más bajo.
Normalización de Bases de Datos
El proceso de normalización de bases de datos consiste en designar y aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.
Objetivos de la Normalización:
- Aprovechamiento del espacio.
- Manejo de información en forma rápida.
Se pueden tener los siguientes problemas en las tablas:
- Redundancia
- Ambigüedades
- Pérdida de restricciones de integridad
- Anomalías en las operaciones de modificación de datos
A través de la normalización los evitamos, forzando la división de una tabla en dos o más, ya que cada tabla debe representar un solo tema.
Dependencia Funcional
Se dice que existe dependencia funcional entre dos atributos de una tabla si para cada valor del primer atributo existe un solo valor del segundo.
Formas Normales
Las formas normales son reglas que se aplican durante la normalización:
- Primera Forma Normal (FN1): Es de cumplimiento obligatorio en el modelo relacional. Partiendo del modelo E-R que permite atributos multivalorados y compuestos, cuando se crean las tablas se deben eliminar estas subestructuras. Para los atributos compuestos se deja que cada atributo componente sea un atributo de pleno derecho. Para los atributos multivalorados se crea una tupla por cada elemento del conjunto multivalorado.
- Segunda Forma Normal (FN2): Si una tabla está en FN1 y cada atributo que no sea clave depende de forma funcional completa respecto de cualquiera de las claves, se encuentra en FN2.
- Tercera Forma Normal (FN3): Si una tabla está en FN2 y ningún atributo que no sea clave depende transitivamente de la clave primaria, se encuentra en FN3.