Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad 5 Normalizacion de Datos
Unidad 5 Normalizacion de Datos
Normalización de Datos
Desnormalización .......................................................................................................................................17
Bibliografía......................................................................................................................................................17
INTRODUCCIÓN DE LA UNIDAD
La normalización de datos es un proceso que nos ayuda a poder estructurar de una forma
eficiente y eficaz el esquema de una base de datos, tomando en cuenta ciertas reglas a
seguir para poder lograr este objetivo. Cuando aplicamos estas reglas de normalización a
un esquema de datos, aseguramos que no tendremos inconveniente con los demás pasos
a seguir en el ciclo de vida de desarrollo de software. Cuando normalizamos una base de
datos evitamos incurrir en la repetición de datos y ayudamos a mantener la integridad
de los mismos.
Esta unidad tiene como objetivo general Aplicar técnicas de normalización de bases de
datos relacionales, para evitar inconsistencias y redundancias de datos.
Objetivos de la Normalización
Dependencia Funcional
Se dice que un conjunto de atributos (B) depende funcionalmente de otro conjunto de
atributos (A) si para cada valor de A hay un único valor posible para B. Simbólicamente
se denota por A→B. Y se lee B es funcionalmente dependiente de A
Ej.: En una tabla de Ventas, los atributos Producto, Cliente y Precio, sólo el
atributo Producto produce sobre el atributo Precio una Dependencia Funcional
Elemental.
Ej.: En una tabla de Textos, los atributos Autor y Libro, el atributo Autor forma
una Dependencia Funcional Trivial.
Formas Normales
El proceso de normalización está basado en un conjunto de pasos aplicados a las
entidades, con el objetivo de adquirir un nivel de eficiencia basado en unas “reglas”
particulares. Estas reglas se conocen como Formas.
Existen seis Formas Normales que son conocidas actualmente en las cuales cada una
establece un criterio de revisión para determinar que una tabla posee aceptación de
dicho Nivel. Una tabla puede encontrarse en la primera forma normal y no en la
segunda, pero no al contrario. Esto significa que para que se logre una forma de
numeración mayor, se debe de haber cumplido con las anteriores formas normales.
Historia de la Normalización
En 1970 Edgar Frank Codd presentó al mundo la tres primeras Formas Normal de
normalización, en su compendio titulado “A Relational Model of Data for Large Shared
Data Banks” (Un Modelo Relacional para Grande Datos Bancarios Compartido). Este texto
basa la primera forma normal en la organización de los datos, y para la segunda y la
Finalmente surgieron las Cuarta y Quinta Forma Normal, definidas por Fagin, basada en
dependencias multivaluadas y dependencia de unión en la data. Aunque muchos
diseñadores plantean que con llegar a la forma normal Boyce-Codd es suficiente, ya que
la cuarta y la quinta ha presentados polémicas sobre su aplicación.
• Todas las instancias contiene el mismo número de valores. Tabla cuyos registros
pueden tener atributos variables, o que no se frecuente todos ellos. Ejemplo una
tabla de Empleado que tenga Pago1, Pago2, Pago3.
• Todas las instancias de una entidad sean diferentes. Crear una clave primaria que
diferencie una registro de los demás. Ejemplo la tabla de empleado su clave
primaria puede ser el código de empleado.
Para llevarlo a 1NF, se define ese campo para que acepte sólo un dato.
Las características que puedan dar indicio de que una tabla no está en la 1NF serían:
- Dato de tipo cadena con carácter de separadores. (micuenta@hotmail.com;
otracuenta@gmail.com)
- Nombre de atributos con números al final. (Telefono1, Telefono2)
- Tablas con ningún o deficiente clave primaria.
Para llevarla a la 2NF se dividen en 2 entidades, donde cada atributo depende sólo de la
clave principal.
Las características que puedan dar indicio de que una tabla no está en la 2NF:
A diferencia de la 2FN, persigue que ningún atributo que no sea clave dependa
transitivamente de las claves de la tabla, es decir elimina que algún atributo no
principal, dependa funcionalmente de atributos que no son clave. Se dice que una tabla
se encuentra en la tercera forma normal si:
Para llevarla a la 3NF se extrae dicho atributo y se crea una entidad separada:
Características que puedan dar indicio de que una tabla no está en la 3NF serían:
- Lo indicado en la 2NF, sólo que aquí el atributo no es clave primaria.
- Atributos que agrupen datos (TotalVentas)
Esta forma normal es como un reemplazo tanto de la segunda como de la tercera forma
normal. Es una mejora unificada de ambas, la cual agrupa sus características en un
mecanismo general. Se dice que una tabla se encuentra en la forma normal Boyce-Codd
si:
Para llevarlo a la forma BCNF se crean 2 entidades con una clave diferente
comúnmente utilizadas, debido al esfuerzo extra que requiere, tanto en el tiempo que
toma implementarlas, como en el costo a nivel de rendimiento en la base de datos.
Para llevarlo a la 4NF se crean 2 entidades para separar el material por curso y los
profesores por cursos.
Características que puedan dar indicio de que una tabla no está en la 4NF serían:
- Claves ternarias (3 atributos componen la clave).
- Atributos que se sospechen posean multivalores.
- Dato Histórico.
Basada en dependencia de Unión (Join). Como no todas las claves ternarias se pueden
descomponer en 2 entidades relacionadas a una tercera, esta quinta forma normal
asegurar que esas claves se descompongan en varias entidades para eliminar el problema
con las anomalías al realizar actualizaciones. Es decir crear una tabla formada por unas
cuantas columnas de la tabla original. Se dice que se tiene una tabla con dependencia
de unión (o de tipo JOIN) si se puede obtener esa tabla como resultado de combinar
mediante la operación JOIN varias proyecciones de la misma.
Para llevarlo a la 5NF se crean 3 entidades para relacionar cada unión de los diferentes
atributos.
Esta forma es la más compleja y polémica de todas ya que no está clara en muchas
ocasiones su regla de aplicación. Está muy claro que el paso a 5FN mejore la base de
datos aunque es raro encontrarse este tipo de problemas cuando la normalización llega a
4FN.
Desnormalización
Este proceso es utilizado principalmente para agilizar los procesos, que se han
sobrecargados, debido a una sobre-normalización en el diseño de la base de datos.
También para reducir la complejidad de algunas entidades que dificultarían el proceso
de implementación.
Se estima que se puede denormalizar hasta llegar a la tercera forma, para evitar riesgo
de duplicación de los datos, ya que aunque se pierda un poco en el porcentaje de
control, se gana a nivel de eficacia (rapidez).
Mejores Prácticas
1. Seguir las reglas de normalización tan exacta como sea posible.
2. Todos los atributos deben describir la esencia del dato que se está modelando en
la entidad.
3. Al menos una clave debe ser identificada en cada entidad y simbolizar lo que la
entidad desea representar.
4. Seleccionar una clave primaria no es imprescindible identificarla en este proceso.
5. Normalizar tan rápido como sea posible durante la fase del diseño lógico.
Bibliografía