Professional Documents
Culture Documents
1. Introduccin
Normalizacin es un proceso formal para
determinar que campos pertenecen a que
tablas en una base de datos relacional. Sigue
un conjunto de normas que logran eliminar
el
almacenamiento
de
informacin
redundante, hace un modelo de datos mas
cercano a la realidad, mediante entidades y
sus relaciones, estructura la informacin de
manera que el modelo sea flexible. [1]
1.1. Las formas normales
Codd a quien se le considera el padre del
modelo relacional, defini 3 formas
normales, que son 1NF, 2FN y 3FN. Como
la forma 3FN tena ciertos problemas Codd
y Boyce definieron otra nueva forma
llamada Boyce-Codd (abreviada BCNF).
Despus tratando de perfeccionar un poco
ms el modelo Ronald Fagin defini las
formas 4 y 5.
2. Proceso de normalizacin
Uno de los aspectos mas desafiantes de las
bases de datos es el proceso de
normalizacin, para explicar el proceso nos
vamos a basar en 3 conceptos
fundamentales:
a) El razonamiento detrs de
normalizacin
b) Modificacin anmala
c) Dependencias en la informacin
la
Ejemplo # 1
Emp_id
101
102
Emp_Nomb
Juan
Pedro
Dep_id
401
302
Dep_nom
Recursos
Libros
de
la
Ejemplo # 2
Emp_id
101
102
Emp_Nomb
Juan
Pedro
Cl_id
401
401
Cl_nom
Cliente
Cliente
2.2. 2FN
Una relacin esta en 2FN si y solo si esta en
1FN y cada atributo que no es llave es
irreduciblemente dependiente de la llave
primaria [3].
Una vez que la relacin ya est en 1FN
podemos seguir con 2FN. La segunda forma
normal nos asegura que cada atributo que
no es llave en la tabla es funcionalmente
dependiente sobre la llave primaria, y que la
tabla no contiene campos calculados. [5]
Relacin en 1FN:
ESTUDIANTES (carnet, nombre, apellido,
direccin, telfono, cdigo_curso,
2.3. 3FN
Una relacin es en 3FN si y solo si est en
2FN y cada atributo que no es llave no es
transitivamente dependiente de la llave
primaria [3].
2.4. 4FN
Una relacin R es en 4FN si y solo si,
cuando existan subconjuntos A y B de los
atributos de R tales que el MVD AB es
satisfecho, entonces todos los atributos de R
son tambin funcionalmente dependientes
de A [3].
El propsito de la cuarta forma normal es
asegurar que una tabla no contenga ninguna
dependencia multi-valuada y que describe
uno y solo un tipo de informacin, es decir,
no mesclar informacin del curso con el del
estudiante. Una tabla que contiene
dependencias multi-valuadas describe uno o
ms tipos de datos, dependiendo del nmero
de dependencias multi-valuadas que
contiene.
Las dependencias multi-valuadas son una
consecuencia de la primera formal normal,
que prohbe que un atributo de una tupla
contenga un conjunto de valores, si tenesmo
dos o ms atributos multi-valuados
independientes en el mismo esquema de
relacin, podramos tener el problema de
tener que repetir valores de uno de los
atributos con cada valor de otro atributo
para que las tuplas de la relacin sigan
siendo consistentes.
ESTUDIANTE (carnet, nombre, apellido,
direccin, telfono)
2.5. 5FN
Una relacin R esta en 5FN (a la que
tambin se le llama forma normal
Proyeccin/Unin) si y solo si cada
dependencia de unin no-trivial que se
mantiene en R est implcita en las llaves
candidatas de R.
Una dependencia de unin existe para una
tabla dada si la tabla y todo su contenido
original pueden ser reconstruidos por un
Join de SQL que rene todas las tablas
creadas por su descomposicin.
Teniendo nuestras tablas en 4FN, deberan
estar libres de dependencias multi-valuadas
y transitivas, en la mayora de los casos, no
debera haber necesidad de descomponer
mas tablas, sin embargo, si se cree que se
puede o debe descomponer alguna tabla, se
debe verificar si hay un Join de dependencia
en la tabla
Hay 3 preguntas claves que se deben
contestar antes de descomponer ms una
tabla:
1. Puedo crear ms tablas usando la
llave primaria o candidata como
parte de la estructura de la nueva
tabla?
2. Puedo recrear la tabla original
usando un Join en SQL que rena
todas las tablas creadas por la
descomposicin?
4. Ventajas Normalizacin:
Como hemos visto durante el artculo el
normalizar nos representa muchas ventajas
que listaremos a continuacin:
5. Inconvenientes:
De la misma manera como tenemos ciertas
ventajas
normalizando
tambin
expondremos algunas desventajas:
3. Terminologa
Para ayudar a la comprensin de las
definiciones tcnicas expuestas en este
artculo se presenta una seria de
terminologa, donde se explica algunas de
las palabras ms usadas:
6.
Muchas ms tablas
Velocidad de ejecucin cdigo
(muchos mas join)
Tiempo diseo de la BBDD
Tiempo para programar
Aprendizaje de la normalizacin.
Conclusiones
Lo principal en la primer forma
normal la atomicidad y eliminar los
grupos repetitivos.
7.
Recomendaciones
Se recomienda seguir paso a paso el
proceso de normalizacin, y leer la
introduccin para entender el
proceso.
8. Bibliografa
[1] David Adams, Normalization is a nice
theory.: Foresight Technology, 1997.
[2] Ileana Stefan, Data base design Normalization, 49th ed., 2008.
[3] Michael Hernandez, Understanding
normalization., 2003.
[4] Marin Fotache, Why normalization
failed to become the ultimate guide for
database designers. Romania:
Alexandru Ioan Cuza University of Iasi,
2006.
[5] Eduardo Mora, Formas normales.
Universidad de Cantabria, 1999.
[6] Dennis Santoro, Data normalization.,
2002.
[7] Miguel Carrasco, To normalize or not to
normalize., 2007.
[8] Nabil Arman, Normalizer. Palentine
Polytechnic University, 2006.