domingo, 4 de septiembre de 2011

Normalización desde la 1FN hasta la 4FN


La presente tabla presenta información de los Departamentos con sus respectivos hospitales más representativos, como su médico de cabecera.

En esta tabla, los datos no se repiten y además están atomizados, por lo que podríamos decir que la tabla ya esta en Primera Forma Normal.

Ahora, con la 2da Forma Normal veremos las dependencias, por lo que quedaran las siguientes tablas:


Ahora haciendo uso de la 3ra forma normal veremos la dependencia transitiva, si bien es cierto el hospital depende del departamento y el director médico dependen del hospital.


Ahora si observamos se encuentra una relacion de muchos a muchos entre departamento y hospitales que sera solucionada con la 4ta forma normal


Ahora, solo nos quedaría las siguientes tablas:



La cuarta forma normal (4FN)

Una tabla está en 4NF si y solo si esta en Tercera forma normal o en BCFN (Cualquiera de ambas) y no posee dependencias multivaluadas no triviales. La definición de la 4NF confía en la noción de una dependencia . Una tabla con una dependencia multivaluada es una donde la existencia de dos o más relaciones independientes muchos a muchos causa redundancia; y es esta redundancia la que es suprimida por la cuarta forma normal.
BCNF: La tabla se encuentra en FNBC si cada determinante, atributo que determina completamente a otro, es clave candidata.

Fallas de la cuarta forma normal:


Las fallas de la cuarta forma normal es que no reduce completamente la redundancia en la base de datos  relacionales que guardan hechos multivalores, además que cada dependencia de unión no implica necesariamente  las claves candidatas, es decir, no siguen los criterios de las claves.
Ejemplo de las fallas de la 4FN:
En este ejemplo, en la primera tabla (izquierda), se observa la redundancia de datos y la presencia de multivalores. Además, no todos los atributos son determinados por la clave principal.

EJEMPLOS:


Primer Ejemplo: en este ejemplo, la tabla de Especialidad, donde Especialidad tiene clave y curso está en DMV (dependencia multivalorada), por lo que para eliminar esta dependencia se construyen dos tablas como se observa en la figura.

Segundo Ejemplo: en este ejemplo, el bebe puede tener varias enfermeras como médicos, esto significa la presencia de DMV, por lo que se resuelve tal y como se observa en la figura.
Tercer Ejemplo: en este ejemplo, la tabla de permutaciones de envíos, tiene varios restaurantes como variedad de Pizzas y áreas de envíos, pero para resolver este DMV, se construyen dos tablas más.
Cuarto Ejemplo: en este ejemplo, se observa que hay presencia de DMV, un conductor puede tener diferentes tipos de vehículos y diferentes tipos de carga, por lo que hay redundancia, pero para resolver esta DMV, se construyen tablas como se muestra en la figura.



BIBLIOGRAFIA:
http://es.wikipedia.org/wiki/Normalizaci%C3%B3n_de_bases_de_datos#Primera_Forma_Normal_.281FN.29

La tercera forma normal (3FN)

Una relación R está en 3FN si y solo si esta en 2FN y todos sus atributos no primos dependen no transitivamente de la llave primaria.

Consiste en eliminar la dependencia transitiva que queda en una segunda forma normal, en pocas palabras una relación esta en tercera forma normal si está en segunda forma normal y no existen dependencias transitivas entre los atributos, nos referimos a dependencias transitivas cuando existe más de una forma de llegar a referencias a un atributo de una relación.

Fallas de la tercera forma normal:

La principal falla o defecto de la tercera forma normal es cuando se presenta la dependencia multivalor que es la existencia de dos o más relaciones independientes muchos a muchos causa redundancia en la información, y como también cuando se presenta que algún determinante no es clave candidata.

Ejemplos de las fallas de la 3FN:

Ejemplo 1:

Esta relación tiene dos claves sobrepuestas (Nivel, Cargo) y (Nivel, Nombre), pero como también el determinante de Cargo es Nombre pero este atributo Nombre no es una clave candidata.

Ejemplo 2:

Se presenta la dependencia multivalor donde hay de dos o más relaciones independientes muchos a muchos causa redundancia en la información.

EJEMPLOS DE LA 3FN:

Ejemplo 1: En la tabla Clase-Prof, se presenta una DF de profesor y oficina, por lo que se separo o se dividio en dos tablas, así se evito la dependencia transitiva.Ejemplo 2: La tabla Ganadores del torneo se dividió en dos, ya que se podia observar la dependencia transitiva entre dos atributos no claves, pero al dividirlo ya se disipo laDT.Ejemplo 3: La tabla principal que contiene información de una biblioteca, se dividió nuevamente, y esta ves en 3, para evitar la dependencia transitiva, por lo cual tenemos CodLibro-Título, CodAutor-Autor y CodEditorial-Editorial.Ejemplo 4: En la tabla de Boletas, se subdividió más aun, ya que presentaba dependencia transitiva, por lo que surgió una nueva tabla, la de Clientes. De la tabla Artículos salio la tabla Detalle.

La segunda forma normal (2FN)

Dependencia Funcional. Una relación está en 2FN si está en 1FN y si los atributos que no forman parte de ninguna clave dependen de forma completa de la clave principal o primaria. Es decir que no existen dependencias parciales. (Todos los atributos que no son clave principal deben depender únicamente de la clave principal).

Por ejemplo {DNI, ID_PROYECTO} --> HORAS_TRABAJO (con el DNI de un empleado y el ID de un proyecto sabemos cuántas horas de trabajo por semana trabaja un empleado en dicho proyecto) es completamente dependiente dado que ni DNI --> HORAS_TRABAJO ni ID_PROYECTO --> HORAS_TRABAJO mantienen la dependencia. Sin embargo {DNI, ID_PROYECTO} --> NOMBRE_EMPLEADO es parcialmente dependiente dado que DNI --> NOMBRE_EMPLEADO mantiene la dependencia.

Fallas de la segunda forma normal:

La principal falla o defecto de la 2FN es causado por la dependencia transitiva (DT) de atributos no-clave, es decir, una dependencia funcional entre dos o más atributos no-clave. Para evitar o resolver estos casos, primero debemos examinar cada atributo no-clave para verificar si está en DF con otro atributo diferente de la clave principal (PK). Crear una nueva relación para almacenar el no-clave transitivamente dependiente.

Ejemplos de las fallas de la 2FN:

En este ejemplo, la clave primaria es el Cod_Trabajador y los demás son atributos determinados por la PK, pero también se observa que el Bono Familiar depende la Profesión, es decir, tiene una dependencia transitiva.

En este otro ejemplo, la clave primaria es el Cod_Profesor y los demás son atributos determinados por la PK, pero se observa que el aumento de 20 soles depende a los años de servicio de cada profesor, por lo que se presenta una dependencia transitiva.

EJEMPLOS DE LA 2FN:

Ejemplo 1: En la tabla de Habilidades de los empleados, la clave primaria o principal es el Empleado, que determina la Habilidad como el Lugar actual de trabajo, es decir, hay dependencia funcional completa (DFC).

Ejemplo 2: la tabla Guía se dividió en dos, ya que había dos claves determinantes con sus atributos determinados correspondientes, se presenta DFC.
Ejemplo 3: la tabla con información de la biblioteca se dividió en 3 partes, ya que tiene 2 claves primarias como el CodLibro y CodLector, como se muestra en la figura. Recién con esta división presenta DFC.
Ejemplo 4: La tabla de boleta se dividió en dos como se observa en la figura, ya que cuenta con dos claves primarias como son Num_bol y cod_art, así presenta DFC.

Datos Normalizados en primera forma normal (1FN) y el universo de datos no normalizados

Antes del análisis y la comparación de los datos normalizados y los no normalizados, conozcamos que es la Normalización de datos:

¿Qué es normalización?

Normalización es un proceso que clasifica relaciones, objetos, formas de relación y demás elementos en grupos, en base a las características que cada uno posee. Si se identifican ciertas reglas, se aplica una categoría; si se definen otras reglas, se aplicará otra categoría.

Estamos interesados en particular en la clasificación de las relaciones BDR. La forma de efectuar esto es a través de los tipos de dependencias que podemos determinar dentro de la relación. Cuando las reglas de clasificación sean más y más restrictivas, diremos que la relación está en una forma normal más elevada. La relación que está en la forma normal más elevada posible es que mejor se adapta a nuestras necesidades debido a que optimiza las condiciones que son de importancia para nosotros:

• La cantidad de espacio requerido para almacenar los datos es la menor posible;

• La facilidad para actualizar la relación es la mayor posible;

• La explicación de la base de datos es la más sencilla posible

Se dice que una relación está en una determinada forma normal si satisface un cierto conjunto de restricciones. El proceso de normalización es reversible y no se pierde información.

Etapas de la Normalización

La diferencia que existe entre los datos Normalizados en primera forma normal (1FN) y el universo de datos no normalizado:

El universo de datos no normalizado se refiere al conjunto de datos que están reunidos bajo un criterio en común, estos datos son una gran cantidad de información desorganizada y, en algunos casos, compleja para su análisis u otros usos, ya que tiene un albedrio de información, y en ello encontraremos muchas inconsistencias o ¨defectos¨, como las siguientes:

Ø La REDUNDANCIA de datos

Ø ERRORES DE ACTUALIZACION de datos.

Ø FALTA DE INTEGRIDAD E INCONSISTENCIA en los datos.

En relación a tablas no normalizadas (cuando almacenamos información no normalizada):

Ø Repetición de nombres de cada tabla.

Ø Presencia de dos filas iguales.

Ø Los datos de una misma columna de un mismo tipo.

Ø De inserción: imposibilidad de adicionar datos en la BD por la ausencia de otros.

Ø De borrado: pérdida no intencionada de datos debido a la eliminación de otros.

En cambio, cuando tenemos los datos organizados bajo ciertos criterios, como la Primera Forma Normal (1FN), se debe cumplir con lo siguiente:

  • Una relación R se encuentra en 1FN si y solo sí por cada renglón columna contiene valores atómicos.
  • Las celdas de las tablas poseen valores simples y no se permiten grupos ni arreglos repetidos como valores, es decir, contienen un solo valor por cada celda.
  • Todos los ingresos en cualquier columna (atributo) deben ser del mismo tipo.
  • Cada columna debe tener un nombre único, el orden de las columnas en la tabla no es importante.
  • Dos filas o renglones de una misma tabla no deben ser idénticas, aunque el orden de las filas no es importante.

EJEMPLOS DE LA 1FN:

Ejemplo 1:
En esta Guía de Pedido, la PK es el Nro_GI (número de guía) quién determina a los demás atributos de la tabla.

Ejemplo 2:
En este caso de la biblioteca, la PK es el CodLibro, quién determina a los demás atributos de la tabla.



Ejemplo 3:
En esta Informe de Notas, la PK esta conformada por el ID-Estudiante y el ID-Clave, quienes determinan a los demás atributos de la tabla.

Ejemplo 4:
En esta Boleta de Ventas, la PK es el Num_bol (número de boleta) quién determina a los demás atributos de la tabla.




BIBLIOGRAFIA:

http://www.monografias.com/trabajos5/norbad/norbad.shtml#norma

http://es.wikipedia.org/wiki/Normalizaci%C3%B3n_de_bases_de_datos#Formas_Normales

http://istprpecenteno.blogspot.com/2008/06/formas-normales-1fn-2fn-3fn-4fn-5fn.html