SlideShare una empresa de Scribd logo
1 de 20
Definiciones Previas
Dependencia Funcional (DF): Dada una relación R se dice que el atributo
Y de R es funcionalmente dependiente del atributo X de R, si y sólo si,
cada valor X en R tiene asociado a él, precisamente, un valor de Y en R en
cualquier momento del tiempo.
Dependencia funcional parcial: Se dice que existe una dependencia
funcional parcial entre dos atributos A y B de la tabla si:
•B es funcionalmente dependiente de A, y
•A es sólo parte de la clave de la tabla
Dependencia funcional completa: El atributo Y es funcionalmente
dependiente y completamente del atributo X, si es funcionalmente
dependiente de X y no es funcionalmente dependiente de algún
subconjunto de X.
Se representa:
X--->Y
Llave: Si R es una relación con atributos A1, A2, ....An y X es un
subconjunto de A1, A2, ...An, X es una llave de R si: 1. X---> A1, A2, ...An o
sea, todos los atributos de la relación dependen funcionalmente de X. 2. ∃
Y ⊂ X| Y → A1, A2, ...An
Segunda Forma Normal
Una relación R se dice que está en 2FN si y sólo sí:
• Está en 1FN
• Los atributos no llaves (secundarios) de R, si los hubiese, son funcional
y completamente dependientes de la llave primaria de R, o sea no exista
dependencia parcial de los atributos secundarios respecto a la llave.
Esta regla significa que en una relación sólo se debe almacenar
información sobre un tipo de entidad, y se traduce en que los atributos
que no aporten información directa sobre la clave principal deben
almacenarse en una relación separada.
Segunda Forma Normal
Las tablas en la Primera Forma Normal suelen presentar
características que tienden a dificultar su uso. Estas
características son reconocibles, y suelen eliminarse
sometiendo a las tablas a una o más transformaciones.
Segunda Forma Normal
Considere la tabla siguiente, que contiene información que describe a un
grupo de estudiantes y sus clases, y que se encuentra en la Primera
Forma Normal:
NOMBRE
(Clave)
ID-ESTUDlANTE
PROMEDIO (Clave)
ID-CLASE
CALIFICACION
Huertas, J. 01234 5.4 FIS-1A A
Ferrero, A. 22346 5.1 FIS-1A B
Soriano, P. 11349 4.8 QUIM-2B A
Huertas, J. 01234 5.4 QUIM-2B A
Clemente,
C.
08349 5.9 MUS-5 B
Pérez, R. 03472 5.1 ARTE-3A -
Ferrero, A. 22346 5.1 QUIM-1A C
Huertas, J. 01234 5.4 MUS-5 B
Vázquez, H. 33461 4.9 ARTE-3A -
Pérez, R 03472 5.1 MUS1 -
Problemas que se visualizan en la
tabla:
Existe gran cantidad de información
que está siendo almacenada de
forma redundante.
NOMBRE
(Clave)
ID-ESTUDlANTE
PROMEDIO
Huertas, J. 01234 5.4
Ferrero, A. 22346 5.1
Soriano, P. 11349 4.8
Huertas, J. 01234 5.4
Clemente,
C.
08349 5.9
Pérez, R. 03472 5.1
Ferrero, A. 22346 5.1
Huertas, J. 01234 5.4
Vázquez, H. 33461 4.9
Pérez, R 03472 5.1
Siempre que sea posible, deberían evitarse las duplicaciones de datos,
por diversas razones:
Espacio de almacenamiento de datos. La información duplicada
requiere un espacio extra de almacenamiento, habitualmente en los
dispositivos de disco magnético.
Redundancia de
Datos
Costes de introducción de datos. Una gran parte de la información de la
base de datos debe ser introducida de forma manual, por personal
específico. La existencia de datos redundantes suele implicar un tiempo
de introducción de datos extra, que en el análisis final se traduce en
costes adicionales.
Inconsistencias de la base de datos. Si se introduce información
redundante, las posibilidades de inconsistencias aumentan de forma
proporcional. Por ejemplo, el PROMEDIO de "Huertas, J." se introduce
tres veces en la tabla ESTUDIANTES-CLASES, con lo cual se triplica la
probabilidad de introducción de un valor incorrecto para este dato.
La presencia de redundancia de datos viene casi siempre
acompañada de varias dificultades predecibles. Estos problemas,
conocidos colectivamente bajo el nombre de anomalías de
modificación, aparecen durante la actualización, borrado e inserción
de datos.
Anomalías de Modificación
•Anomalías de actualización. La alteración de un único hecho, en este caso
la modificación del valor de un PROMEDIO, requiere la modificación de
varias entradas de la tabla, proceso que consume gran cantidad de tiempo
y es propenso a los errores. Este tipo de situaciones es lo que se conoce
como anomalías de actualización, y su existencia sugiere que el diseño de
la tabla podría mejorarse.
NOMBRE
(Clave)
ID-ESTUDlANTE
PROMEDIO
Huertas, J. 01234 5.4
Ferrero, A. 22346 5.1
Soriano, P. 11349 4.8
Huertas, J. 01234 5.4
Clemente,
C.
08349 5.9
Pérez, R. 03472 5.1
Ferrero, A. 22346 5.1
Huertas, J. 01234 5.4
Vázquez, H. 33461 4.9
Pérez, R 03472 5.1
Anomalías de borrado. Supongamos que un estudiante que acaba de
matricularse deja de asistir a todas sus clases. pero sin abandonar la escuela.
Todas las filas de dicho estudiante habrán de ser borradas de la tabla
ESTUDIANTES-CLASES. Sin embargo, cuando se ha hecho esto, la información
básica relativa a dicho estudiante, como el nombre y el número de ID, se han
perdido de la tabla. En otras palabras, en lo que concierne a la base de datos, el
estudiante ha dejado de existir, incluso aunque de hecho todavía esté
matriculado en la escuela. La información de la base de datos no se
corresponde ya con los hechos del mundo real, y decimos que ha ocurrido una
anomalía de borrado.
NOMBRE
(Clave)
ID-ESTUDlANTE
PROMEDIO (Clave)
ID-CLASE
CALIFICACION
Ferrero, A. 22346 5.1 FIS-1A B
Soriano, P. 11349 4.8 QUIM-2B A
Clemente,
C.
08349 5.9 MUS-5 B
Pérez, R. 03472 5.1 ARTE-3A -
Ferrero, A. 22346 5.1 QUIM-1A C
Vázquez, H. 33461 4.9 ARTE-3A -
Pérez, R 03472 5.1 MUS1 -
Anomalías de inserción
Supongamos que un nuevo alumno se matricula en la escuela.
Por diversas razones, no se matricula de inmediato en ninguna
clase concreta.
La tabla ESTUDIANTES-CLASES, cada fila de estudiante ,
debería contener un valor para ID-CLASE.
La fila del nuevo estudiante puede ser introducida con un valor
especial para ID-CLASE.
El estudiante se matricule en algún curso concreto, esta fila
original pasará a ser un estorbo en la base de datos.
Tendrá que ser eliminada.
La fuente de las anomalías de
modificación
Los diversos tipos de anomalías de modificación descritos no son
problemas imposibles de abordar, pero pueden complicar de forma seria
el uso eficiente de una base de datos. Sería preferible si las anomalías
pudieran ser eliminadas, y de hecho, esto puede hacerse, mediante el
estudio de la fuente original de las dificultades.
El comportamiento anómalo está relacionado directamente con la
presencia de la redundancia de datos: ambos problemas surgen de la
forma en que está estructurada la tabla ESTUDIANTES-CLASES, y ambos
pueden ser eliminados mediante una transformación adecuada de la
tabla.
La fuente de las anomalías de
modificación
¿cuáles son los hechos básicos representados por la tabla
ESTUDIANTES-CLASES?
La respuesta es sencillamente que cada fila de la tabla representa a un
estudiante concreto matriculado en una clase específica. Existe, por
tanto, un segundo hecho independiente contenido en cada fila: la propia
existencia del estudiante. Es decir, cada fila contiene información que es
específica del estudiante, tal como el PROMEDIO, y estos datos son
independientes de las clases representadas en cada fila. Este es el
núcleo del problema: cuando hay varias filas que corresponden a un
estudiante determinado, los datos específicos del estudiante se repiten
en cada una de ellas.
Dependencia funcional parcial
La existencia de una dependencia funcional parcial dentro de una
tabla implica que dentro de la tabla también está representado un
conjunto de hechos, además de los representados por la clave
primaria.
De este modo, la búsqueda de dependencias parciales dentro de una
tabla equivale a la búsqueda de conjuntos de hechos secundarios.
Eliminación de las dependencias
parciales.
• La eliminación de las dependencias parciales de la tabla
ESTUDIANTES-CLASES eliminará a su vez los problemas de la
redundancia y las anomalías.
• Esto se consigue descomponiendo estas dependencias en una tabla
separada, creándose así las siguientes nuevas tablas:
• ESTUDIANTE [NOMBRE, ID-ESTUDIANTE, PROMEDIO]
• ESTUDIANTE-CLASE [ID-ESTUDIANTE, ID-CLASE, CALIFICACION]
Examinando las dos nuevas tablas
ESTUDIANTE y ESTUDIANTE-CLASE
Anomalías
• Anomalías de actualización: Si es necesario cambiar el valor del
PROMEDIO de un estudiante determinado, sólo es preciso alterar el
valor de una única fila de la tabla ESTUDIANTE. Recuerde que en la
tabla original había que modificar gran número de entradas para cada
estudiante.
• Anomalías de borrado: Si un estudiante abandona todas sus
asignaturas, pero sigue aún matriculado en la escuela, puede existir aún
una entrada en la tabla ESTUDIANTE, incluso aunque no existan
entradas para ese estudiante en ESTUDIANTE-CLASE.
• Anomalías de inserción: También han desaparecido las posibilidades
que existían de anomalías de inserción: es posible crear una entrada en
la tabla ESTUDIANTE para un estudiante nuevo que aún no se haya
matriculado en ninguna clase. A medida que el estudiante se vaya
matriculando en cursos nuevos, se pueden ir creando entradas nuevas
en la tabla ESTUDIANTE-CLASE.
Normalización Usando Dependencias Funcionales - Segunda Forma Normal

Más contenido relacionado

La actualidad más candente

Cena de Filósofos
Cena de FilósofosCena de Filósofos
Cena de Filósofos
Miguel Cruz
 
Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacencia
Frank Doria
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegue
joshell
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
Osiris Mirerus
 
Diferencia entre prceso, programa y procesador
Diferencia entre prceso, programa y procesadorDiferencia entre prceso, programa y procesador
Diferencia entre prceso, programa y procesador
Dulce Fernàndez-t
 

La actualidad más candente (20)

Fundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacionalFundamentos de BD - Unidad 4 diseño de bd relacional
Fundamentos de BD - Unidad 4 diseño de bd relacional
 
Procesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o HebrasProcesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o Hebras
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Programación 1: cadenas en C
Programación 1: cadenas en CProgramación 1: cadenas en C
Programación 1: cadenas en C
 
Diagrama de casos de usos
Diagrama de casos de usosDiagrama de casos de usos
Diagrama de casos de usos
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 
Normalización de Base de Datos
Normalización de Base de DatosNormalización de Base de Datos
Normalización de Base de Datos
 
Tópicos Avanzados de Programación - Unidad 1 GUI
Tópicos Avanzados de Programación - Unidad 1 GUITópicos Avanzados de Programación - Unidad 1 GUI
Tópicos Avanzados de Programación - Unidad 1 GUI
 
Cena de Filósofos
Cena de FilósofosCena de Filósofos
Cena de Filósofos
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Lista de adyacencia
Lista de adyacenciaLista de adyacencia
Lista de adyacencia
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegue
 
Estructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busquedaEstructura de Datos - Unidad 6 Metodos de busqueda
Estructura de Datos - Unidad 6 Metodos de busqueda
 
Analizar mediante-ejemplos-de-la-vida-real-el-concepto-de-procesos
Analizar mediante-ejemplos-de-la-vida-real-el-concepto-de-procesosAnalizar mediante-ejemplos-de-la-vida-real-el-concepto-de-procesos
Analizar mediante-ejemplos-de-la-vida-real-el-concepto-de-procesos
 
Presentacion de Modelo entidad -relación de Base de Datos
Presentacion de Modelo entidad -relación de Base de Datos Presentacion de Modelo entidad -relación de Base de Datos
Presentacion de Modelo entidad -relación de Base de Datos
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
DIAGRAMAS DE CLASE
DIAGRAMAS DE CLASEDIAGRAMAS DE CLASE
DIAGRAMAS DE CLASE
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Diferencia entre prceso, programa y procesador
Diferencia entre prceso, programa y procesadorDiferencia entre prceso, programa y procesador
Diferencia entre prceso, programa y procesador
 

Similar a Normalización Usando Dependencias Funcionales - Segunda Forma Normal (13)

Normalizacion
NormalizacionNormalizacion
Normalizacion
 
ITESO
ITESOITESO
ITESO
 
2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacion2 el modelo_relacional_y_la_normalizacion
2 el modelo_relacional_y_la_normalizacion
 
Unidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptxUnidad 2.2 - Normalizacion.pptx
Unidad 2.2 - Normalizacion.pptx
 
capV_normalizacion.pptx
capV_normalizacion.pptxcapV_normalizacion.pptx
capV_normalizacion.pptx
 
Normalizacion3
Normalizacion3Normalizacion3
Normalizacion3
 
Normalizacionnosecuanto
NormalizacionnosecuantoNormalizacionnosecuanto
Normalizacionnosecuanto
 
Normalizacion2
Normalizacion2Normalizacion2
Normalizacion2
 
Normalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docxNormalizacion de bases de datos relacionales.docx
Normalizacion de bases de datos relacionales.docx
 
Normalización 1 fn,2fn,3fn,4fn,
Normalización 1 fn,2fn,3fn,4fn,Normalización 1 fn,2fn,3fn,4fn,
Normalización 1 fn,2fn,3fn,4fn,
 
Normalizaciòn
NormalizaciònNormalizaciòn
Normalizaciòn
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Normalizacion Base de Datos
Normalizacion Base de DatosNormalizacion Base de Datos
Normalizacion Base de Datos
 

Más de Yessenia I. Martínez M.

Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
Guia de lectura - Una herramienta para el estudio de estructura de datos y al...Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
Yessenia I. Martínez M.
 
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
Yessenia I. Martínez M.
 
Guía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
Guía para el Desarrollo de un Plan de Seguridad - Políticas y ProcedimientosGuía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
Guía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
Yessenia I. Martínez M.
 
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra ÓpticaComparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
Yessenia I. Martínez M.
 
Proyecto final (Administración) - Improvising Moments Bar Café
Proyecto final (Administración) - Improvising Moments Bar CaféProyecto final (Administración) - Improvising Moments Bar Café
Proyecto final (Administración) - Improvising Moments Bar Café
Yessenia I. Martínez M.
 
Indicadores de abuso sexual en la infancia
Indicadores de abuso sexual en la infanciaIndicadores de abuso sexual en la infancia
Indicadores de abuso sexual en la infancia
Yessenia I. Martínez M.
 

Más de Yessenia I. Martínez M. (20)

Estructuras de datos fundamentales
Estructuras de datos  fundamentalesEstructuras de datos  fundamentales
Estructuras de datos fundamentales
 
Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
Guia de lectura - Una herramienta para el estudio de estructura de datos y al...Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
Guia de lectura - Una herramienta para el estudio de estructura de datos y al...
 
Guía de estudio -Módulo 1
Guía de estudio -Módulo 1Guía de estudio -Módulo 1
Guía de estudio -Módulo 1
 
Programación del curso - Estructura de Datos I
Programación del curso - Estructura de Datos IProgramación del curso - Estructura de Datos I
Programación del curso - Estructura de Datos I
 
Taller
TallerTaller
Taller
 
Psicosociología
PsicosociologíaPsicosociología
Psicosociología
 
Los Valores
Los ValoresLos Valores
Los Valores
 
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
Plan de Desarrollo de Software - Sistema Gestor de Oferta y Adjudicación de P...
 
Teamlab - Información Básica
Teamlab - Información BásicaTeamlab - Información Básica
Teamlab - Información Básica
 
Guía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
Guía para el Desarrollo de un Plan de Seguridad - Políticas y ProcedimientosGuía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
Guía para el Desarrollo de un Plan de Seguridad - Políticas y Procedimientos
 
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra ÓpticaComparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
Comparación Técnica de Protocolos de Capa Física: Cable 10BaseT VS. Fibra Óptica
 
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
Visualización de Redes: Herramientas y Técnicas para la Creación y Evaluación...
 
Proyecto de calidad de software
Proyecto de calidad de softwareProyecto de calidad de software
Proyecto de calidad de software
 
Proyecto final (Administración) - Improvising Moments Bar Café
Proyecto final (Administración) - Improvising Moments Bar CaféProyecto final (Administración) - Improvising Moments Bar Café
Proyecto final (Administración) - Improvising Moments Bar Café
 
El Folklore Infantil
El Folklore InfantilEl Folklore Infantil
El Folklore Infantil
 
Indicadores de abuso sexual en la infancia
Indicadores de abuso sexual en la infanciaIndicadores de abuso sexual en la infancia
Indicadores de abuso sexual en la infancia
 
Linux Open SuSE
Linux Open SuSELinux Open SuSE
Linux Open SuSE
 
Herramientas Gráficas para MySQL
Herramientas Gráficas para MySQLHerramientas Gráficas para MySQL
Herramientas Gráficas para MySQL
 
Sistema Operativo Solaris
Sistema Operativo SolarisSistema Operativo Solaris
Sistema Operativo Solaris
 
Modelos Lógicos Basados en Objetos
Modelos Lógicos Basados en ObjetosModelos Lógicos Basados en Objetos
Modelos Lógicos Basados en Objetos
 

Último

Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
Yanitza28
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
2024020140
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
EdwinGarca59
 

Último (20)

¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 
Editorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdfEditorial. Grupo de 12B de La Salle Margarita.pdf
Editorial. Grupo de 12B de La Salle Margarita.pdf
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024
 
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptxNIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
Función del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacionFunción del analizador léxico.pdf presentacion
Función del analizador léxico.pdf presentacion
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la información
 
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptxTipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - Estrada
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 

Normalización Usando Dependencias Funcionales - Segunda Forma Normal

  • 1.
  • 2. Definiciones Previas Dependencia Funcional (DF): Dada una relación R se dice que el atributo Y de R es funcionalmente dependiente del atributo X de R, si y sólo si, cada valor X en R tiene asociado a él, precisamente, un valor de Y en R en cualquier momento del tiempo. Dependencia funcional parcial: Se dice que existe una dependencia funcional parcial entre dos atributos A y B de la tabla si: •B es funcionalmente dependiente de A, y •A es sólo parte de la clave de la tabla
  • 3. Dependencia funcional completa: El atributo Y es funcionalmente dependiente y completamente del atributo X, si es funcionalmente dependiente de X y no es funcionalmente dependiente de algún subconjunto de X. Se representa: X--->Y Llave: Si R es una relación con atributos A1, A2, ....An y X es un subconjunto de A1, A2, ...An, X es una llave de R si: 1. X---> A1, A2, ...An o sea, todos los atributos de la relación dependen funcionalmente de X. 2. ∃ Y ⊂ X| Y → A1, A2, ...An
  • 4. Segunda Forma Normal Una relación R se dice que está en 2FN si y sólo sí: • Está en 1FN • Los atributos no llaves (secundarios) de R, si los hubiese, son funcional y completamente dependientes de la llave primaria de R, o sea no exista dependencia parcial de los atributos secundarios respecto a la llave. Esta regla significa que en una relación sólo se debe almacenar información sobre un tipo de entidad, y se traduce en que los atributos que no aporten información directa sobre la clave principal deben almacenarse en una relación separada.
  • 5. Segunda Forma Normal Las tablas en la Primera Forma Normal suelen presentar características que tienden a dificultar su uso. Estas características son reconocibles, y suelen eliminarse sometiendo a las tablas a una o más transformaciones.
  • 6. Segunda Forma Normal Considere la tabla siguiente, que contiene información que describe a un grupo de estudiantes y sus clases, y que se encuentra en la Primera Forma Normal: NOMBRE (Clave) ID-ESTUDlANTE PROMEDIO (Clave) ID-CLASE CALIFICACION Huertas, J. 01234 5.4 FIS-1A A Ferrero, A. 22346 5.1 FIS-1A B Soriano, P. 11349 4.8 QUIM-2B A Huertas, J. 01234 5.4 QUIM-2B A Clemente, C. 08349 5.9 MUS-5 B Pérez, R. 03472 5.1 ARTE-3A - Ferrero, A. 22346 5.1 QUIM-1A C Huertas, J. 01234 5.4 MUS-5 B Vázquez, H. 33461 4.9 ARTE-3A - Pérez, R 03472 5.1 MUS1 -
  • 7. Problemas que se visualizan en la tabla: Existe gran cantidad de información que está siendo almacenada de forma redundante. NOMBRE (Clave) ID-ESTUDlANTE PROMEDIO Huertas, J. 01234 5.4 Ferrero, A. 22346 5.1 Soriano, P. 11349 4.8 Huertas, J. 01234 5.4 Clemente, C. 08349 5.9 Pérez, R. 03472 5.1 Ferrero, A. 22346 5.1 Huertas, J. 01234 5.4 Vázquez, H. 33461 4.9 Pérez, R 03472 5.1 Siempre que sea posible, deberían evitarse las duplicaciones de datos, por diversas razones: Espacio de almacenamiento de datos. La información duplicada requiere un espacio extra de almacenamiento, habitualmente en los dispositivos de disco magnético. Redundancia de Datos
  • 8. Costes de introducción de datos. Una gran parte de la información de la base de datos debe ser introducida de forma manual, por personal específico. La existencia de datos redundantes suele implicar un tiempo de introducción de datos extra, que en el análisis final se traduce en costes adicionales. Inconsistencias de la base de datos. Si se introduce información redundante, las posibilidades de inconsistencias aumentan de forma proporcional. Por ejemplo, el PROMEDIO de "Huertas, J." se introduce tres veces en la tabla ESTUDIANTES-CLASES, con lo cual se triplica la probabilidad de introducción de un valor incorrecto para este dato.
  • 9. La presencia de redundancia de datos viene casi siempre acompañada de varias dificultades predecibles. Estos problemas, conocidos colectivamente bajo el nombre de anomalías de modificación, aparecen durante la actualización, borrado e inserción de datos. Anomalías de Modificación
  • 10. •Anomalías de actualización. La alteración de un único hecho, en este caso la modificación del valor de un PROMEDIO, requiere la modificación de varias entradas de la tabla, proceso que consume gran cantidad de tiempo y es propenso a los errores. Este tipo de situaciones es lo que se conoce como anomalías de actualización, y su existencia sugiere que el diseño de la tabla podría mejorarse. NOMBRE (Clave) ID-ESTUDlANTE PROMEDIO Huertas, J. 01234 5.4 Ferrero, A. 22346 5.1 Soriano, P. 11349 4.8 Huertas, J. 01234 5.4 Clemente, C. 08349 5.9 Pérez, R. 03472 5.1 Ferrero, A. 22346 5.1 Huertas, J. 01234 5.4 Vázquez, H. 33461 4.9 Pérez, R 03472 5.1
  • 11. Anomalías de borrado. Supongamos que un estudiante que acaba de matricularse deja de asistir a todas sus clases. pero sin abandonar la escuela. Todas las filas de dicho estudiante habrán de ser borradas de la tabla ESTUDIANTES-CLASES. Sin embargo, cuando se ha hecho esto, la información básica relativa a dicho estudiante, como el nombre y el número de ID, se han perdido de la tabla. En otras palabras, en lo que concierne a la base de datos, el estudiante ha dejado de existir, incluso aunque de hecho todavía esté matriculado en la escuela. La información de la base de datos no se corresponde ya con los hechos del mundo real, y decimos que ha ocurrido una anomalía de borrado. NOMBRE (Clave) ID-ESTUDlANTE PROMEDIO (Clave) ID-CLASE CALIFICACION Ferrero, A. 22346 5.1 FIS-1A B Soriano, P. 11349 4.8 QUIM-2B A Clemente, C. 08349 5.9 MUS-5 B Pérez, R. 03472 5.1 ARTE-3A - Ferrero, A. 22346 5.1 QUIM-1A C Vázquez, H. 33461 4.9 ARTE-3A - Pérez, R 03472 5.1 MUS1 -
  • 12. Anomalías de inserción Supongamos que un nuevo alumno se matricula en la escuela. Por diversas razones, no se matricula de inmediato en ninguna clase concreta. La tabla ESTUDIANTES-CLASES, cada fila de estudiante , debería contener un valor para ID-CLASE. La fila del nuevo estudiante puede ser introducida con un valor especial para ID-CLASE. El estudiante se matricule en algún curso concreto, esta fila original pasará a ser un estorbo en la base de datos. Tendrá que ser eliminada.
  • 13. La fuente de las anomalías de modificación Los diversos tipos de anomalías de modificación descritos no son problemas imposibles de abordar, pero pueden complicar de forma seria el uso eficiente de una base de datos. Sería preferible si las anomalías pudieran ser eliminadas, y de hecho, esto puede hacerse, mediante el estudio de la fuente original de las dificultades. El comportamiento anómalo está relacionado directamente con la presencia de la redundancia de datos: ambos problemas surgen de la forma en que está estructurada la tabla ESTUDIANTES-CLASES, y ambos pueden ser eliminados mediante una transformación adecuada de la tabla.
  • 14. La fuente de las anomalías de modificación ¿cuáles son los hechos básicos representados por la tabla ESTUDIANTES-CLASES? La respuesta es sencillamente que cada fila de la tabla representa a un estudiante concreto matriculado en una clase específica. Existe, por tanto, un segundo hecho independiente contenido en cada fila: la propia existencia del estudiante. Es decir, cada fila contiene información que es específica del estudiante, tal como el PROMEDIO, y estos datos son independientes de las clases representadas en cada fila. Este es el núcleo del problema: cuando hay varias filas que corresponden a un estudiante determinado, los datos específicos del estudiante se repiten en cada una de ellas.
  • 15. Dependencia funcional parcial La existencia de una dependencia funcional parcial dentro de una tabla implica que dentro de la tabla también está representado un conjunto de hechos, además de los representados por la clave primaria. De este modo, la búsqueda de dependencias parciales dentro de una tabla equivale a la búsqueda de conjuntos de hechos secundarios.
  • 16. Eliminación de las dependencias parciales. • La eliminación de las dependencias parciales de la tabla ESTUDIANTES-CLASES eliminará a su vez los problemas de la redundancia y las anomalías.
  • 17. • Esto se consigue descomponiendo estas dependencias en una tabla separada, creándose así las siguientes nuevas tablas: • ESTUDIANTE [NOMBRE, ID-ESTUDIANTE, PROMEDIO] • ESTUDIANTE-CLASE [ID-ESTUDIANTE, ID-CLASE, CALIFICACION]
  • 18. Examinando las dos nuevas tablas ESTUDIANTE y ESTUDIANTE-CLASE
  • 19. Anomalías • Anomalías de actualización: Si es necesario cambiar el valor del PROMEDIO de un estudiante determinado, sólo es preciso alterar el valor de una única fila de la tabla ESTUDIANTE. Recuerde que en la tabla original había que modificar gran número de entradas para cada estudiante. • Anomalías de borrado: Si un estudiante abandona todas sus asignaturas, pero sigue aún matriculado en la escuela, puede existir aún una entrada en la tabla ESTUDIANTE, incluso aunque no existan entradas para ese estudiante en ESTUDIANTE-CLASE. • Anomalías de inserción: También han desaparecido las posibilidades que existían de anomalías de inserción: es posible crear una entrada en la tabla ESTUDIANTE para un estudiante nuevo que aún no se haya matriculado en ninguna clase. A medida que el estudiante se vaya matriculando en cursos nuevos, se pueden ir creando entradas nuevas en la tabla ESTUDIANTE-CLASE.