Escenario 3
Escenario 3
Escenario 3
Lectura fundamental
Normalización
Contenido
1 Introducción
2 Dependencias
3 Normalización
Redundancia: si un autor escribe más de un libro, la nacionalidad del autor se repetirá en todas las
ocasiones.
Anomalías de inserción: si deseamos insertar un libro de un autor que no tengamos no sería posible
pues el id del autor hace parte de la llave primaria.
Anomalía de borrado: si borramos un libro se borran a, la su vez, los datos del autor.
Atributo atómico: se entiende que un atributo es atómico si este no puede dividirse en otros
atributos.
Una manera de solucionar los problemas planteados sería, a partir de la relación ESCRIBE, definir las
siguientes relaciones:
ESCRIBE(IdAutor,ISBN)
A continuación, se describirán una serie de conceptos y técnicas para normalizar una base de datos.
POLITÉCNICO GRANCOLOMBIANO 2
2. Dependencias
Una dependencia es una característica propia del contenido semántico de los datos. Consiste en una
serie de restricciones de usuario en el modelo relacional, que afectan a los atributos en una relación que
se cumplen para cualquier extensión de un esquema de relación. Se representa de la siguiente forma:
R(A,DEP)
Donde R es la relación, A es el conjunto de atributos de la relación y DEP son las dependencias que
existen entre atributos. Entre las dependencias existentes encontramos las siguientes:
• Dependencias de combinación
• Dependencias jerárquicas
• Dependencias multivaluadas
• Dependencias funcionales
Para el desarrollo del curso, nos concentraremos en las dependencias funcionales, las cuales se
describen a continuación.
El concepto de dependencia funcional se puede considerar uno de los más relevantes en la teoría
del diseño del esquema relacional. Una dependencia funcional (DF) es un “vínculo muchos a uno
que va de un conjunto de atributos a otros dentro de una determinada tabla” (Date, 2001, p.330).
También podemos decir que una dependencia funcional es “una restricción que se establece entre dos
conjuntos de atributos de la base de datos” (Elmasri & Navathe, 2007, p.291). Una definición formal
de dependencia funcional, de acuerdo con Elmasri & Navathe, es la siguiente:
POLITÉCNICO GRANCOLOMBIANO 3
Una dependencia funcional, denotada X → Y, entre dos conjuntos de atributos X e Y que son
subconjuntos de R, especifica una restricción en las posibles tuplas que pueden formar un
estado en la relación r de R. La restricción dice que dos tuplas t1 y t2 en r que cumplen que
t1[X]=t2[X], deben cumplir también que t1[Y]=t2[Y] (2007, p.292).
Para entender mejor esta definición, decimos que los valores que toma Y en la tupla r están determinados
por los valores de X (Figura 1). Así podemos encontrar dependencias funcionales tales como:
»» ISBN → Titulo
»» IdUsuario → NombreUsuario
En el proceso de normalización se comprueba que en cada relación o tabla se cumplan las reglas
basadas en la clave primaria y las dependencias funcionales. De tal manera que una relación se
descompone en otras relaciones, hasta que cada una cumpla con dichas reglas.
POLITÉCNICO GRANCOLOMBIANO 4
2.1.1. Descriptores equivalentes
Cedula ↔ Codigo
Si se tiene una relación R(A, DF), donde X e Y son dos descriptores sobre A,
Existe un conjunto de reglas que permiten deducir todas las dependencias funcionales que se dan al
interior de un conjunto dado de atributos. Estas reglas se denominan los axiomas de Armstrong, los
cuales son:
• Axioma de reflexividad:
Teniendo un atributo o un conjunto de atributos, de este puede deducirse él mismo. Así, por
ejemplo, si el título de un libro está incluido en el ISBN, entonces, a partir del ISBN es posible
obtener el título del libro.
• Axioma de aumentatividad:
Esta regla indica que se adicionamos el mismo conjunto de atributos a ambos lados de la
dependencia, obtenemos también dependencias válidas. Así si tenemos la dependencia X → Y
sería válida la relación XZ → YZ.
• Axioma de transitividad:
POLITÉCNICO GRANCOLOMBIANO 5
A partir de los anteriores axiomas se desprenden los axiomas derivados de Armstrong, los cuales son:
Esta regla establece que podemos eliminar atributos del lado derecho de una dependencia, es
decir, se puede descomponer la dependencia funcional X → {A1, A2…, An} en las dependencias
{X → A1, X → A2, …, X → An}
• Axioma de pseudotransitividad:
3. Normalización
Una vez comprendidos los conceptos relacionados con las dependencias funcionales y sus
propiedades, podemos definir las dependencias funcionales para cada relación, de tal forma que cada
una tenga una clave principal en lo que denominan formas normales.
La normalización se entiende como el proceso en el que se aplican reglas a las relaciones obtenidas
del modelo entidad-relación al modelo relacional, con el fin de evitar redundancias, reducir problemas
de actualización de datos y proteger la integridad de los mismos. Es importante mencionar que la
normalización es un proceso posterior al esquema conceptual y ofrece las siguientes ventajas:
POLITÉCNICO GRANCOLOMBIANO 6
El proceso de normalización consta de varios pasos que, a su vez, corresponden a formas normales.
En la medida que se ha llegado a una forma normal con un índice más alto, se puede decir que las
relaciones tienen una forma más fuerte y son menos vulnerables a los problemas planteados. Se
recomienda llegar por lo menos a la tercera forma normal.
Se dice que una tabla está en una forma normal determinada si cumple las condiciones establecidas
para esa forma normal. Se dice que si una forma normal es de grado superior, cumple las
características de las formas normales de nivel inferior, como se observa en la Figura 2.
Boyce Codd NF
Cuarta forma normal 4FN
Quinta forma normal 5FN
Forma normal de dominio/dave DKNF
Por lo general, basta con obtener la tercera forma normal para satisfacer las necesidades que
se presentan en entornos cotidianos. A continuación, se presentan las características de cada
forma normal.
POLITÉCNICO GRANCOLOMBIANO 7
3.1.1. Primera forma normal (1FN)
Se considera que una tabla está en primera forma normal, si y solo si en cada campo de un registro
se tiene un único valor, es decir, es atómico. Esta se puede expresar de manera tabular sin grupos
repetitivos. Se entiende que un atributo es atómico si este no se puede dividir en otros atributos.
Las condiciones con las que debe cumplir la primera forma normal son:
• El orden de los datos o el cambio de los mismos no debe afectar el significado de estos.
Por ejemplo, el siguiente caso ilustra la primera forma normal. Se desea hacer un sistema que
almacene la facturación de una tienda; la orden contiene la siguiente información:
POLITÉCNICO GRANCOLOMBIANO 8
Tabla 1. Tabla no normalizada
Orden
Como se puede observar, hay atributos con el mismo significado: como No_producto y Desc_
producto (Figura 3).
POLITÉCNICO GRANCOLOMBIANO 9
Como se puede observar en la tabla, lo anterior conlleva a anomalías de actualización, pues al insertar
un dato se requiere tanto el número del cliente como el nombre del cliente. Al eliminar una tupla en
la que esta sea la única en la que aparezca un cliente, se perderá la información de este; y cuando se
modifique una tupla, puede generar una incoherencia con otra tupla. Para solucionar esta situación,
dividimos esta tabla en dos, de la siguiente manera:
Orden
Orden_producto
POLITÉCNICO GRANCOLOMBIANO 10
3.1.2. Segunda forma normal (2FN)
Se considera que una relación satisface la segunda forma normal (2FN) si, además de satisfacer
la primera forma normal, todos los atributos que no son clave dependen funcionalmente de forma
irreductible de la clave primaria (Tabla 3). Para llegar a la 2FN:
• Se eliminan los atributos que dependen de forma parcial de la clave primaria, para crear nuevas
relaciones.
Orden
Orden_producto
1 23 1 $10000
1 34 2 $60000
1 24 3 $3000
2 23 2 $20000
2 54 1 $1500
2 65 4 $24000
POLITÉCNICO GRANCOLOMBIANO 11
Producto
23 Martillo $10000
34 Taladro $30000
24 Destornillador $1000
54 Formol $1500
65 Alicate $800
Se considera que una relación satisface la tercera forma normal (3FN) si, además de satisfacer la
segunda Forma normal, todos los atributos que no corresponden a claves primarias dependen de
forma no transitiva de la clave primaria (Tabla 4). Para llegar a la 3FN:
1. Se eliminan los atributos que representan dependencias transitivas y se crean nuevas relaciones
con ellos.
2. Se añaden a la nueva relación los atributos que son determinantes que serán la clave primaria de
la nueva relación.
POLITÉCNICO GRANCOLOMBIANO 12
Tabla 4. Tablas en tercera forma normal
Orden
1 11/4/2017 12 $73000
2 10/4/2017 3 $45000
Cliente
Orden_producto
1 23 1 $10000
1 34 2 $60000
1 24 3 $3000
2 23 2 $20000
2 54 1 $1500
2 65 4 $24000
Producto
23 Martillo $10000
34 Taladro $30000
24 Destornillador $1000
54 Formol $1500
65 Alicate $800
Por regla general, se llega a tercera forma normal; sin embargo, se mencionarán las otras formas normales.
POLITÉCNICO GRANCOLOMBIANO 13
3.1.4. Forma normal Boyce Codd (Boyce Codd NF)
Se considera que una relación está en forma normal Boyce Codd si toda dependencia funcional
no trivial e irreductible a la izquierda tiene como clave una candidata determinante. Es una forma
más precisa de 3FN, en la que se descomponen las relaciones de tal forma que la clave primaria sea
siempre determinante.
Una relación está en cuarta forma normal (4NF) si y solo si cumple con la tercera forma normal
o en BCNF, y no posee dependencias multivaluadas no triviales. Una tabla con una dependencia
multivaluada es aquella en la que existen dos o más relaciones independientes muchos a muchos, que
causan redundancia, la cual se elimina por la cuarta forma normal. En la práctica, se ha comprobado
que no siempre es la más eficiente de las formas normales.
Una relación se dice que está en quinta forma normal 5NF si y solo si, además de estar en cuarta
forma normal, cada dependencia de unión en ella se implica por las claves candidatas.
La forma normal de dominio/clave (DKNF) corresponde a una forma normal que exige que la base de
datos contenga restricciones de dominios y claves.
POLITÉCNICO GRANCOLOMBIANO 14
Referencias
Codd, E. (1990). The Relational Model for Database Management. USA: Addison - Wesley Publishing
Company.
American Federation of Information Processing Societies. Press. (1979). The ANSI/X3/SPARC DBMS
framework: report of the Study Group on Database Management Systems. Computer Systems Research
Group.
Date, C. (2001). Introducción a los sistemas de bases de datos. Naucalpan de Juárez, México: Pearson
Education.
Elmasri, R. & Navathe, S. (2007). Fundamentos de Sistemas de Bases de Datos. Madrid: Pearson,
Addison Wesley.
POLITÉCNICO GRANCOLOMBIANO 15
INFORMACIÓN TÉCNICA
Escenario 3: Normalización
POLITÉCNICO GRANCOLOMBIANO 16