Normalizacion (original) (raw)

Proceso de normalización en Bases de Datos El proceso de normalización es una serie de pasos a seguir para garantizar la inexistencia de redundancia en las bases de datos, así como coherencia en la representación de datos mediante un el esquema relacional de las entidades y relaciones del modelo conceptual. Este proceso de normalización lo que hace es descomponer datos complejos o muy grandes, en estructuras más simples y pequeñas, las cuales son más sencillo de entender y más fácil de manipular; facilitando con estos el trabajo tanto del DBA para el mantenimiento de la base de datos, como el de los desarrolladores en cuanto al mantenimiento o desarrollo de sistemas o aplicaciones. El modelo más usado en la actualidad fue creado por Edgar Frank Codd, el cual consiste en el mejoramiento de los datos mediante el modelo relacional. Según Codd el desafío principal a la hora de crear el modelo relacional, fueron las dependencias e inconsistencias de los datos, ya que en ese momento los modelos existentes no permitían una fácil modificación de la representación de los datos, lo cual ocasionaba que los sistemas vieran interrumpido su funcionamiento. Para venir a solucionar esta problemática E. Codd basó su modelo en la relación, esto quiere decir, que existe una tabla con atributos y tuplas, las cuales se diferencian entre sí mediante llaves primarias y también mediante llaves foráneas. Por otra parte, Codd propuso el Álgebra relacional, creando en un inicio un total de 8 operandos, de los cuales solamente 5 son realmente relevantes: la restricción, proyección, producto cartesiano, unión y diferencia. Y los no fundamentales: el join, la intersección y la división. Además, fue Codd quien estableció los fundamentos para la separación de los sistemas de manejadores de bases de datos, lo cual conocemos hoy día como modelos conceptual, lógico y físico. Gracias a esto en la actualidad los desarrolladores o programadores no lidian con problemas del modelo físico, ya que esta tarea es meramente realizada por el DBA y este a su vez puede realizar cambios en dicho modelo sin afectar el correcto funcionamiento del modelo lógico. Según (Capel, 2014), Codd publica un artículo en Computerworld en el año 1985, que contiene 12 reglas que debe cumplir un sistema de bases de datos relacional para considerarse auténtico. Las 12 reglas son las siguientes: "1. Información: todos los datos deben estar representados en tablas. Toda la información o datos deben estar incluidos en una tabla. 2. Regla de acceso garantizado: todo valor es accesible conociendo la combinación de nombre de tabla, valor de clave primaria y nombre de columna. Se debe poder acceder a cualquier valor sabiendo su ubicación. 3. Tratamiento sistemático de valores nulos: debe permitir el tratamiento adecuado de los valores nulos. Requiriendo, por lo tanto, soporte para la falta de datos mediante el uso de NULL. Los valores nulos deben ser tratados correctamente. 4. Catálogo en línea dinámico basado en el modelo relacional: los metadatos deben