Normalización n de Bases de Datos Relacionales. Bases de Datos. Malos Diseños. Índice. Muchos Problemas. Definición

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Normalización n de Bases de Datos Relacionales. Bases de Datos. Malos Diseños. Índice. Muchos Problemas. Definición"

Transcripción

1 Normalización n de Relacionales Malos Diseños Qué puede salir mal cuando se hace un mal diseño de una base de datos relacional? Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) (Plaza Roja, Santiago, 50000, Santos, P-27, 4500) Introducción 2 Muchos Problemas Índice Repetición de la Información por ejemplo, repetir ciudad_sucursal y activo para cada préstamo de cada sucursal Desaprovecha espacio, complica actualización Imposibilidad de Representar Información por ejemplo, no se puede representar el activo de una sucursal sino tiene concedido al menos un préstamo Valores nulos, complica actualización (Plaza Roja, Santiago, 50000, Santos, P-27, 4500) nombre_sucursal activo numero_prestamo Introducción 3 Normalización Primera Forma Normal Dependencias Funcionales Segunda Forma Normal Tercera Forma Normal Forma Normal de Boyce-Codd Descomponer Relaciones Otras Formas Normales Diseño de Relacionales Introducción 4 Definición Normalización Normalización n de Relacionales La normalización es una técnica, desarrollada inicialmente por E.F. Codd en 1972, para diseñar la estructura lógica de una base de datos en el modelo relacional La normalización es un proceso en el cual se va comprobando el cumplimiento de una serie de reglas, o restricciones, por parte de un esquema de relación; cada regla que se cumple aumenta el grado de normalización del esquema de relación; si una regla no se cumple, el esquema de relación se debe descomponer en varios esquemas de relación que sí la cumplan por separado Normalización 6

2 Formas Normales Un esquema de relación está en una determinada forma normal si satisface un cierto conjunto de restricciones Universo de Relaciones 1FN 2FN Cood, FN FNBC 4FN 5FN Boyce y Cood, 1974 Fagin, 1977 Fagin, 1979 En realidad, son ideas sencillas Normalización 7 Cumplimiento Obligatorio El modelo relacional sólo requiere un conjunto de esquemas de relación en primera forma normal Las restantes formas normales son opcionales Para evitar anomalías de actualización, es recomendable llegar al menos hasta la tercera forma normal o, mejor aún, hasta la forma normal de Boyce-Codd Normalización 8 Primera Forma Normal Primera Forma Normal Normalización n de Relacionales Un esquema de relación está en primera forma normal (1FN) si, y sólo si, los dominios de todos los atributos de la relación son atómicos Universo de Relaciones 1FN 2FN 3FN FNBC 4FN 5FN Primera Forma Normal 10 Dominios Atómicos Un dominio es atómico si se considera que los elementos del dominio son unidades indivisibles Normalización n 1FN La primera formal normal se definió para prohibir los atributos multivalorados, los atributos compuestos y sus combinaciones En muchos dominios en los que las entidades tienen una estructura compleja, la imposición de la representación en primera forma normal representa una carga innecesaria para el programador de las aplicaciones, que tiene que escribir código para convertir los datos a su forma atómica Los sistemas modernos de bases de datos soportan muchos tipos de valores no atómicos Primera Forma Normal 11 Cuando un esquema de relación no está en primera forma normal, se divide en otros esquemas de relación, repartiendo sus atributos entre los resultantes Se elimina el (los) atributo(s) que viola(n) la 1FN del esquema original Se coloca el (los) atributo(s) que viola(n) la 1FN en un esquema aparte junto con la superclave del esquema de partida Primera Forma Normal 12

3 Pedidos Esquema_ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia, numero_item, descripcion_item, cantidad, precio) 1FN Esquema_ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Esquema_pedidos = (id_orden, numero_item, descripcion_item, cantidad, precio) Primera Forma Normal 13 Dependencias Funcionales Normalización n de Relacionales Definición Las dependencias funcionales son restricciones que se aplican sobre el conjunto de relaciones legales de un modelo relacional (una relación es legal si satisface las restricciones impuestas) Semántica La dependencia funcional es una noción semántica Se trata de una generalización del concepto de clave Desempeñan un papel fundamental en la diferenciación entre buenos y malos diseños de bases de datos Dependencias Funcionales 15 Dependencias Funcionales 16 Obtención n de Dep. Func. La existencia o no de dependencias funcionales entre los atributos de un esquema de relación no viene determinada por reglas abstractas sino por los modelos mentales del usuario y por las reglas de la organización para la cual se desarrolla la base de datos Superclave Sea R el esquema de una relación; El subconjunto K de R es una superclave de R si... en cualquier relación legal r(r), para todos los pares de tuplas t 1 y t 2 de r tales que t 1 t 2, t 1 [K] t 2 [K] Ningún par de tuplas puede tener los mismos valores para los atributos de la superclave Cada dependencia funcional es una regla de integridad Dependencias Funcionales 17 Una superclave es un conjunto de uno o más atributos que, tomados colectivamente, permiten identificar de forma única una entidad en un conjunto de entidades Dependencias Funcionales 18

4 Dependencia Funcional Considérese el esquema de una relación R y sean α R y β R La dependencia funcional α βse cumple, para el esquema R, si en cualquier relación legal r(r) para todos los pares de tuplas t 1 y t 2 de r tales que t 1 [α]=t 2 [α] se cumple que t 1 [β]=t 2 [β] β depende funcionalmente de α α determina funcionalmente a β K es una superclave de R si K R Notación: α conjunto de atributos y A atributo Dependencias Funcionales 19 Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) nombre_sucursal ciudad_sucursal nombre_sucursal activo numero_prestamo importe numero_prestamo nombre_sucursal nombre_cliente numero_prestamo nombre_sucursal nombre_cliente Dependencias Funcionales 20 Uso Dependencias Funcionales Probar las relaciones y ver si son legales según un conjunto de dependencias funcionales Si una relación r es legal según un conjunto F de dependencias funcionales se dice que r satisface F Especificar las restricciones de un conjunto de relaciones legales definidas según un esquema de relación Si se desea que las relaciones que responden a un esquema de relación R satisfagan un conjunto F de dependencias funcionales se dice que F se cumple en R A C C A AB D A A B B C C Dependencias triviales A a1 a1 a2 a2 a3 B b1 b2 b2 b3 b3 C c1 c1 c2 c2 c2 D d1 d2 d2 d3 d4 Es posible que una dependencia se satisfaga pero no se cumpla D D α βes trivial si β α Dependencias Funcionales 21 Dependencias Funcionales 22 Implicación n LógicaL Dado un conjunto F de dependencias funcionales, pueden existir otras dependencias funcionales (no definidas en el conjunto original) implicadas lógicamente por el conjunto F Dado un esquema relacional R, una dependencia funcional f de R está implicada lógicamente por un conjunto de dependencias funcionales F de R si cada ejemplar de la relación r(r) que satisfaga F satisface también f R = (A, B, C, G, H, I) A B A C CG H La dependencia funcional A H está implicada lógicamente: CG I t 1 [A]=t 2 [A] B H A B t 1 [B]=t 2 [B] B H t 1 [H]=t 2 [H] A H Dependencias Funcionales 23 Dependencias Funcionales 24

5 Cierre Sea F un conjunto de dependencias funcionales; El cierre de F, denotado por F +, es el conjunto de todas las dependencias funcionales implicadas lógicamente por F Axiomas de Armstrong Las reglas de inferencia definidas por Armstrong proporcionan una técnica sencilla para calcular el cierre, F +, de un conjunto de dependencias funcionales F (mediante su aplicación repetida) Dado F se puede calcular directamente F + a partir de la definición de dependencia funcional Si F es de gran tamaño, este proceso podría ser prolongado y difícil Regla de la Reflexividad: Si β α α β Regla de la Aumentatividad: Si α β γα γβ Regla de la Transitividad: Si α βy β γ α γ para α, β, y γ conjuntos de atributos Dependencias Funcionales 25 Dependencias Funcionales 26 Axiomas de Armstrong Los axiomas de Armstrong son correctos porque no generan dependencias funcionales incorrectas Los axiomas de Armstrong son completos porque permiten generar todo el cierre de un conjunto de dependencias funcionales Los axiomas de Armstrong son difíciles de utilizar directamente para el cálculo del cierre de un conjunto de dependencias funcionales Reglas Adicionales Para simplificar el uso de los axiomas de Armstrong se les añaden una serie de reglas adicionales (demostrables mediante los propios axiomas de Armstrong) Regla de la Unión: Si α βy α γ α βγ Regla de la Descomposición: Si α βγ α βy α γ Regla de la Pseudotransitividad: Si α βy βγ δ αγ δ para α, β, γ y δ conjuntos de atributos Dependencias Funcionales 27 Dependencias Funcionales 28 R = (A, B, C, G, H, I) F = {A B, A C, CG H, CG I, B H} Algunos miembros de F + A H: A B, B H y la regla de la transitividad CG HI: CG H, CG I y la regla de la unión AG I: A C, CG I y la regla de la pseudotransitividad Algoritmo de Cálculo C de F + F + = F Repetir Para cada f F + Aplicar Reflexividad y Aumentatividad a f Añadir resultado a F + Para cada f 1, f 2 F + Si f 1 y f 2 se puede combinar por Transitividad Añadir resultado a F + Hasta que F + no cambie Dependencias Funcionales 29 Dependencias Funcionales 30

6 Superclave Para comprobar si un conjunto de atributos es una superclave hay que diseñar un algoritmo para el cálculo del conjunto de atributos determinados funcionalmente por dicho conjunto de atributos Hacerlo calculando el cierre y tomando todas las dependencias funcionales con el conjunto de atributos como término de la izquierda puede ser costoso si el cierre es de gran tamaño Cierre de Atributos Sea α un conjunto de atributos; El conjunto de atributos determinados funcionalmente por α bajo un conjunto de dependencias funcionales F se denomina cierre de α bajo F y se denota α + α β F β α + El conjunto de atributos determinados funcionalmente por un atributo no sólo resulta útil para comprobar si un atributo es una superclave Dependencias Funcionales 31 Dependencias Funcionales 32 Algoritmo de Cálculo C de α + Res = α Repetir Para cada dependencia funcional β γ F Si β Res Entonces Res = Res U γ Hasta que Res no cambie R = (A, B, C, G, H, I) F = {A B, A C, CG H, CG I, B H} (AG) + AG ABG (A B) ABCG (A C) ABCGH (CG H) ABCGHI (CG I) Dependencias Funcionales 33 Dependencias Funcionales 34 Usos del Cierre de Atributos Posibles usos del cálculo del cierre de atributos: Comprobar superclaves: Para comprobar si α es una superclave, se calcula α + y se comprueba si α + contiene todos los atributos de R Comprobar dependencias funcionales: Para comprobar si se cumple la dependencia funcional α β, se comprueba si β α + Calcular el cierre de F: Para cada γ R se halla el cierre γ + y, para cada S γ +, se genera una dependencia funcional γ S Dependencias Funcionales 35 Actualizaciones Supóngase que se tiene un conjunto de dependencias funcionales F de un esquema de relación R Siempre que un usuario lleve a cabo una actualización de una relación legal r, definida mediante ese esquema de relación R, el sistema de bases de datos debe asegurarse de que la actualización no viole ninguna dependencia funcional (el sistema debe retroceder la actualización si viola alguna dependencia funcional del conjunto F) Se puede reducir el esfuerzo empleado en la verificación de las violaciones comprobando un conjunto simplificado de dependencias funcionales que tenga el mismo cierre que F Dependencias Funcionales 36

7 Atributos Raros Un atributo, de una dependencia funcional, es raro si se puede eliminar sin modificar el cierre del conjunto de dependencias funcionales Considérese un conjunto F de dependencias funcionales y la dependencia funcional α βde F El atributo A es raro en α si A αy F implica lógicamente a (F - {α β}) U {(α-a) β} El atributo A es raro en β si A βy (F - {α β}) U {α (β-a)} implica lógicamente a F AB C A C AB CD A C B es raro en AB C porque F = {AB C, A C} implica lógicamente a (F - {α β}) U {(α-b) β}={a C} U {A C} C es raro en AB CD porque (F - {α β}) U {α (β-c)}={a C} U {AB D} implica lógicamente a F = {AB CD, A C} Dependencias Funcionales 37 Dependencias Funcionales 38 Algoritmo Comp. Atrib.. Raro Recubrimiento Canónico nico Sea R el esquema de la relación y F el conjunto de dependencias funcionales que se cumplen en R Considérese el atributo A de la dependencia α β F Si A α; sea γ = α - {A}; hay que comprobar si se puede inferir γ βa partir de F Se calcula γ + bajo F y si γ + incluye todos los atributos de β, entonces A es raro en α Si A β; sea F = (F {α β}) U {α (β -A)}; hay que comprobar si se puede inferir α A a partir de F Se calcula α + bajo F y si α + incluye a A, entonces A es raro en β Dependencias Funcionales 39 El recubrimiento canónico F c de F es un conjunto de dependencias funcionales tales que: F implica lógicamente a todas las dependencias de F c F c implica lógicamente a todas las dependencias de F Además, F c debe tener las siguientes propiedades: Ninguna dependencia funcional de F c contiene atributos raros El lado izquierdo de cada dependencia funcional de F c es único F c tiene el mismo cierre que F Dependencias Funcionales 40 Algoritmo de Cálculo C del RC F c = F Repetir Utilizar la regla de la unión para reemplazar las dependencias funcionales de F c de la forma α 1 β 1 y α 1 β 2 con α 1 β 1 β 2 Encontrar una dependencia funcional α βde F c con un atributo raro en α o en β Eliminar el atributo raro de α β R = (A, B, C) F = {A BC, B C, A B, AB C} F c = {A BC, B C, A B, AB C} A BC y A B entonces F c = {A BC, B C, AB C} A es raro en AB C entonces F c = {A BC, B C} C es raro en A BC entonces F c = {A B, B C} Hasta que F c no cambie Es posible que el recubrimiento canónico no sea único Dependencias Funcionales 41 Dependencias Funcionales 42

8 Segunda Forma Normal Segunda Forma Normal Normalización n de Relacionales Un esquema de relación está en segunda forma normal (2FN) si, y sólo si, está en primera forma normal (1FN) y, además cada atributo del esquema de relación que no está en la clave primaria depende funcionalmente de la clave primaria completa y no sólo de una parte de esta Universo de Relaciones Segunda Forma Normal 44 1FN 2FN 3FN FNBC 4FN 5FN Definición n Formal 2FN Un esquema de relación R está en segunda forma normal (2FN) si cada atributo A de R cumple al menos una de las siguientes condiciones: A aparece en una clave candidata A no es parcialmente dependiente de una clave candidata Clave Primaria Simple La segunda forma normal (2FN) sólo se aplica a los esquemas de relación que tienen claves primarias compuestas por dos o más atributos Si un esquema de relación está en primera forma normal (1FN) y su clave primaria es simple (un solo atributo) entonces está en segunda forma normal (2FN) Una dependencia funcional α βse denomina dependencia parcial si hay un subconjunto γ de α tal que γ β Segunda Forma Normal 45 Segunda Forma Normal 46 Normalización n 2FN Cuando un esquema de relación no está en segunda forma normal, se la puede normalizar repartiéndola entre varias relaciones en 2FN en las que los atributos que dependen de una parte de la clave formarán una nueva relación que tendrá esa parte de la clave como clave primaria Dado que se puede demostrar que cada dependencia parcial es una dependencia transitiva y la normalización 3FN elimina las dependencias transitivas, la normalización 2FN está en desuso Segunda Forma Normal 47 Pedidos Esquema_ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Esquema_pedidos = (id_orden, numero_item, descripcion_item, cantidad, precio) 2FN Esquema_ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Esquema_pedidos = (id_orden, numero_item, cantidad) Esquema_articulos = (numero_item, descripcion_item, precio) Segunda Forma Normal 48

9 Tercera Forma Normal Tercera Forma Normal Normalización n de Relacionales Un esquema de relación está en tercera forma normal (3FN) si, y sólo si, está en segunda forma normal (2FN) y, además cada atributo del esquema de relación que no está en la clave primaria sólo depende funcionalmente de la clave primaria, y no de ningún otro atributo Universo de Relaciones Tercera Forma Normal 50 1FN 2FN 3FN FNBC 4FN 5FN Definición n Formal 3FN Un esquema de relación R está en tercera forma normal (3FN) respecto a un conjunto de dependencias funcionales F si para todas las dependencias funcionales de F + de la forma α β, donde α R y β R, se cumple al menos una de las siguientes condiciones: α βes una dependencia funcional trivial (β α) α es una superclave de R Cada atributo de β - α está contenido en alguna clave candidata de R Pedidos Esquema_ordenes = (id_orden, fecha, id_cliente, nombre_cliente, provincia) Esquema_pedidos = (id_orden, numero_item, cantidad) Esquema_articulos = (numero_item, descripcion_item, precio) 3FN Esquema_ordenes = (id_orden, fecha, id_cliente) Esquema_clientes = (id_cliente, nombre_cliente, provincia) Esquema_pedidos = (id_orden, numero_item, cantidad) Esquema_articulos = (numero_item, descripcion_item, precio) Tercera Forma Normal 51 Tercera Forma Normal 52 Forma Normal de Boyce-Codd Forma Normal de Boyce-Codd Normalización n de Relacionales Un esquema de relación está en forma normal de Boyce-Codd (FNBC) si, y sólo si, está en tercera forma normal (3FN) y, además cada atributo del esquema de relación que determine otros atributos está en una superclave Universo de Relaciones 1FN 2FN 3FN FNBC Forma Normal de Boyce-Codd 54 4FN 5FN

10 Definición n Formal FNBC Un esquema de relación R está en forma normal de Boyce-Codd (FNBC) respecto a un conjunto de dependencias funcionales F si para todas las dependencias funcionales de F + de la forma α β, donde α R y β R, se cumple al menos una de las siguientes condiciones: α βes una dependencia funcional trivial (β α) α es una superclave de R Referencia La forma normal de Boyce-Codd, versión algo más restrictiva de la tercera forma normal, es una de las formas normales más deseables para un buen diseño de bases de datos No siempre se puede conseguir Forma Normal de Boyce-Codd 55 Forma Normal de Boyce-Codd 56 Comprobación n FNBC Comprobación de FNBC en una relación: Para comprobar si la dependencia no trivial α β provoca una violación de FNBC hay que calcular α + (el cierre de los atributos de α) y comprobar si incluye a todos los atributos de R; es decir, si es una superclave de R Para comprobar si un esquema de relación R está en FNBC basta con comprobar únicamente las dependencias del conjunto de dependencias funcionales F (no es necesario verificar F + ) Esquema_cliente = (nombre_cliente, calle_cliente, ciudad_cliente) nombre_cliente calle_cliente ciudad_cliente Esquema_sucursal = (nombre_sucursal, ciudad_sucursal, activo) nombre_sucursal ciudad_sucursal activo Esquema_info_prestamo = (nombre_sucursal, nombre_cliente, numero_prestamo, importe) numero_prestamo nombre_sucursal importe SI Forma Normal de Boyce-Codd 57 No es una superclave Forma Normal de Boyce-Codd 58 Descomponer Esquemas Descomponer Relaciones Cuando un esquema de relación no cumple una determinada forma normal se debe descomponer en varios esquemas de relación que sí cumplan la forma normal Una descomposición poco cuidadosa puede llevar a un mal diseño Normalización n de Relacionales Propiedades deseables de la descomposición: Reunión sin pérdidas Conservación de las dependencias Descomponer Relaciones 60

11 Descomposición Un conjunto de esquemas de relación {R 1, R 2,, R n } es una descomposición de un esquema de relación R si Reunión n de la Descomposición Sea r una relación del esquema R y sea r i = Π Ri (r) para i = 1, 2,, n R = R 1 U R 2 U U R n {R 1, R 2,, R n } es una descomposición de R si para i = 1, 2,, n; cada R i es un subconjunto de R Se cumple que: {r 1, r 2,, r n } es la base de datos que resulta de descomponer R en {R 1, R 2,, R n } cada atributo de R aparece en al menos un R i r r 1 r 2 r n Descomponer Relaciones 61 Descomponer Relaciones 62 Descomposición n sin PérdidasP Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) Sea C un conjunto de restricciones (las dependencias funcionales F son una parte) de la base de datos y R un esquema de relación Esquema_sucursal_cliente= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente) Esquema_cliente_prestamo= (nombre_cliente, numero_prestamo, importe) Esquema_sucursal= (nombre_sucursal, ciudad_sucursal, activo) Esquema_info_prestamo= (nombre_sucursal, nombre_cliente, numero_prestamo, importe) Una descomposición {R 1, R 2,, R n } de R es una descomposición de reunión sin pérdida si, para todas las relaciones r del esquema R que son legales bajo C r = r 1 r 2 r n r i = Π Ri (r) para i = 1, 2,, n Descomponer Relaciones 63 Descomponer Relaciones 64 Criterio Des. Reu.. Sin Per. Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) Esquema_sucursal_cliente= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente) Esquema_cliente_prestamo= (nombre_cliente, numero_prestamo, importe) Con Pérdidas Esquema_sucursal= Sin (nombre_sucursal, ciudad_sucursal, activo) Esquema_info_prestamo=, (nombre_sucursal, nombre_cliente, numero_prestamo, importe) Descomponer Relaciones 65 Sea R un esquema de relación, sea F un conjunto de dependencias funcionales de R y sea {R 1, R 2 } una descomposición de R La descomposición {R 1, R 2 } es una descomposición de reunión sin pérdidas de R si al menos una de las siguientes dependencias funcionales está en F + : R 1 R 2 R 1 R 1 R 2 R 2 U Los atributos de la intersección de la descomposición forman una superclave de alguna de las relaciones resultantes de la descomposición U Descomponer Relaciones 66

12 Conservación n de Dependencias Cuando se lleva a cabo una actualización en la base de datos el sistema debe poder comprobar que la actualización no crea ninguna relación ilegal Restricción Sea F un conjunto de dependencias funcionales del esquema R y sea {R 1, R 2,, R n } una descomposición de R Para comprobar de manera eficiente las actualizaciones, se deben diseñar esquemas de bases de datos relacionales que permitan la validación de las actualizaciones sin que haga falta calcular las reuniones Descomponer Relaciones 67 La restricción de F a R i es el conjunto F i de las dependencias funcionales de F + que sólo incluyen atributos de R i El conjunto de restricciones F 1, F 2,, F n es el conjunto de dependencias que pueden calcularse de forme eficiente (sin calcular reuniones) Descomponer Relaciones 68 Desc. Conserva Dependencias Sea F = F 1 U F 2 U U F n (F es un conjunto de dependencias funcionales del esquema R pero, en general, F F) Se llaman descomposiciones que conservan las dependencias a aquellas descomposiciones en las cuales F + = F + Cada dependencia de F está lógicamente implicada por F Descomponer Relaciones 69 DSP y CD Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) nombre_sucursal ciudad_sucursal activo numero_prestamo nombre_sucursal importe Esquema_sucursal= (nombre_sucursal, ciudad_sucursal, activo) Esquema_info_prestamo= (numero_prestamo, nombre_sucursal, nombre_cliente, importe) Esquema_prestamo=, (numero_prestamo, nombre_sucursal, importe) Esquema_prestatario= (nombre_cliente, numero_prestamo) Descomponer Relaciones 70 Descomposición n FNBC Aunque para comprobar si un esquema de relación está en FNBC es suficiente analizar el conjunto de dependencias funcionales F, cuando se analiza una descomposición este procedimiento no funciona se necesita analizar alguna dependencia que esté en F + Para comprobar si una relación R i de una descomposición de R está en FNBC hay que comprobar que α +, en cada subconjunto de atributos α de R i, no incluye ningún atributo de R i -α o incluye a todos los atributos de R i Descomponer Relaciones 71 Algoritmo Descomp.. FNBC res = {R} hecho = falso Calcular F + Mientras (NOT hecho) Hacer Si hay un Esquema R i en res que no esté en FNBC Entonces Sea α βuna dependencia funcional no trivial que se cumple en R i tal que α R no esté en F + y α β= res = (res R i ) U (R i -β) U (α,β) Si no hecho = cierto Descomponer Relaciones 72

13 FNBC Caract.. Algoritmo FNBC Esquema_prestamo= (nombre_sucursal, ciudad_sucursal, activo, nombre_cliente, numero_prestamo, importe) nombre_sucursal ciudad_sucursal activo numero_prestamo nombre_sucursal importe Clave candidata: (numero_prestamo, nombre_cliente) FNBC Esquema_sucursal= (nombre_sucursal, ciudad_sucursal, activo) Esquema_info_prestamo= (numero_prestamo, nombre_sucursal, nombre_cliente, importe) Esquema_prestamo=, (numero_prestamo, nombre_sucursal, importe) Esquema_prestatario= (nombre_cliente, numero_prestamo) Descomponer Relaciones 73 El algoritmo utiliza dependencias testigo que demuestran la violación de FNBC La descomposición que genera este algoritmo es una descomposición de reunión sin pérdidas No todas las descomposiciones FNBC conservan las dependencias Descomponer Relaciones 74 Objetivos de Diseño Los tres objetivos de diseño habituales son: Reunión sin Pérdidas Esencial para evitar pérdidas de información FNBC Conservación de las Dependencias La Tercera Forma Normal, relajación leve de la FNBC, garantiza que siempre existe una descomposición que conserva las dependencias Algoritmo Descomp.. 3FN Sea F c un recubrimiento canónico de F i=0 Para cada dependencia funcional α β de F c Hacer Si ninguno de los esquemas R j (j=1,2,,i) contiene αβ Entonces i=i+1 R i =αβ Si ninguno de los esquemas R j (j=1,2,,i) contiene una clave candidata de R Entonces i=i+1 R i =cualquier clave candidata de R Descomponer Relaciones 75 Descomponer Relaciones 76 3FN Caract.. Algoritmo 3FN Esquema_info_asesor= (nombre_sucursal, nombre_cliente, nombre_asesor, numero_sucursal) nombre_asesor nombre_sucursal numero_sucursal nombre_cliente nombre_sucursal nombre_asesor 3FN Es un algoritmo de síntesis ya que va añadiendo esquemas, en lugar de realizar una verdadera descomposición El resultado no es único puesto que el recubrimiento canónico no es único y además depende del orden en el que se considere las dependencias Esquema_asesor_sucursal= (nombre_asesor, nombre_sucursal, numero_sucursal) Esquema_asesor= (nombre_cliente, nombre_sucursal, nombre_asesor) Descomponer Relaciones 77 Descomponer Relaciones 78

14 FNBC vs. 3FN Siempre resulta posible obtener un diseño en 3FN sin sacrificar la reunión sin pérdidas o la conservación de dependencias Dado que 3FN no elimina todas las dependencias transitivas pueden aparecer problemas de necesidad de datos nulos y/o repetición de información Otras Formas Normales Descomponer Relaciones 79 Normalización n de Relacionales Cuarta Forma Normal Dependencias Multivaloradas Esquema_prestamo= (numero_prestamo, nombre_cliente, calle_cliente,ciudad_cliente) nombre_cliente calle_cliente ciudad_cliente y nombre_cliente no es una superclave No FNBC clientes ricos buenos clientes! tienen varios domicilios nombre_cliente calle_cliente ciudad_cliente Esquema_prestamo= (numero_prestamo, nombre_cliente, calle_cliente,ciudad_cliente) Sea R un esquema de relación y sean α R y β R; La dependencia multivalorada α β se cumple en R si, en toda relación legal r(r), para todo par de tuplas t 1 y t 2 de r tales que t 1 [α]=t 2 [α], existen unas tuplas t 3 y t 4 de r tales que t 1 [α]=t 2 [α]=t 3 [α]=t 4 [α] t 3 [β]=t 1 [β] t 3 [R-β]=t 2 [R-β] t 4 [β]=t 2 [β] t 4 [R-β]=t 1 [R-β] Si FNBC pero aparece el problema de la repetición de información Otras Formas Normales 81 Otras Formas Normales 82 Funcionales vs. Multivaloradas Las dependencias funcionales se suelen denominar dependencias de generación de igualdad y las dependencias multivaloradas se suelen denominar dependencias de generación de tuplas tuplas A A α β B B tuplas α β A B X A C Z A B Z A C X Otras Formas Normales 83 Definición n Formal 4FN Un esquema de relación R está en cuarta forma normal (4FN) respecto a un conjunto F de dependencias funcionales y multivaloradas si para todas las dependencias multivaloradas de F + de la forma α β, donde α R y β R, se cumple al menos una de las siguientes condiciones: α β es una dependencia multivalorada trivial (β αó β U α = R) α es una superclave de R Si α β, entonces α β Otras Formas Normales 84

15 Otras Formas Normales Hay otro tipo de restricciones denominadas dependencias de reunión que generalizan las dependencias multivaloradas y llevan a la forma normal de reunión por proyección (FNRP) Hay otro tipo de restricciones más generales que llevan a la forma normal de dominios y claves (FNDC) Diseño o de Relacionales Otras Formas Normales 85 Normalización n de Relacionales Normalización n y Diseño o BDR Modos de obtener un esquema R: R puede haber sido generado al convertir un diagrama E-R en un conjunto de tablas R puede haber sido una sola relación que contuviera todos los atributos que resulten de interés R puede haber sido el resultado de algún diseño ad hoc de relaciones Nor. vs. E-RE Cuando se define con cuidado un diagrama E-R, identificando correctamente todas las entidades, las tablas generadas a partir del diagrama E-R no necesitan más normalización La mayor parte de las dependencias que violan formas normales surgen de un mal diseño del diagrama E-R las dependencias funcionales pueden ayudar a detectar un mal diseño E-R si las relaciones generadas no se hallan en la forma normal deseada, el problema se puede solucionar en el diagrama E-R Diseño o de Relaciones 87 Diseño o de Relaciones 88 Nor. vs. Relación n Universal La única manera de escribir una relación universal para algunos casos es incluir valores nulos en la relación universal implica varias dificultades Los nombres de los atributos deben ser únicos en la relación universal Desnormalización A veces, los diseñadores de bases de datos escogen un esquema que tiene información redundante; es decir, que no está normalizada Se utiliza la redundancia para mejorar el rendimiento de aplicaciones concretas (especialmente críticas en tiempo); la penalización es el trabajo extra dedicado a mantener consistentes los datos redundantes Diseño o de Relaciones 89 Vistas materializadas: vistas cuyo resultado se almacena en la base de datos que se actualiza cuando se actualizan las relaciones implicadas Diseño o de Relaciones 90

16 Tablas Cruzadas Esquema_beneficios= (id_empresa, año, importe) id_empresa año importe Esquema_beneficios_2004 = (id_empresa, importe) Esquema_beneficios_2003 = (id_empresa, importe) Esquema_beneficios_2002 = (id_empresa, importe) Esquema_beneficios_2001 = (id_empresa, importe) id_empresa importe FNBC Esquema_empresa_año = (id_empresa, beneficios_2004, beneficios_2003, beneficios_2002, beneficios_2001) id_empresa beneficios_2004, beneficios_2003, beneficios_2002, beneficios_2001 Vicio derivado de las Hojas de Cálculo Diseño o de Relaciones 91

TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES

TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES TEMA 8.- DISEÑO TEORICO DE BASES DE DATOS RELACIONALES. Teoría de las Dependencias Funcionales. Teoría de la Normalización. Formas Normales. Conclusiones. 1. TEORÍA DE LAS DEPENDENCIAS FUNCIONALES Las

Más detalles

Dependencias Funcionales. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz

Dependencias Funcionales. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Dependencias Funcionales Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Conceptos básicos Las DF son un tipo particular de restricción. Permiten expresar hechos acerca de la realidad que

Más detalles

DISEÑO DE BASES DE DATOS RELACIONALES

DISEÑO DE BASES DE DATOS RELACIONALES DISEÑO DE BASES DE DATOS RELACIONALES Bases de Datos I MIS. Lizbeth Alejandra Hernández González Introducción El objetivo del diseño de las bases de datos relacionales es la generación de un conjunto de

Más detalles

DISEÑO DE BASES DE DATOS RELACIONALES Normalización Parte 2 FNBC, 3FN

DISEÑO DE BASES DE DATOS RELACIONALES Normalización Parte 2 FNBC, 3FN DISEÑO DE BASES DE DATOS RELACIONALES Normalización Parte 2 FNBC, 3FN Bases de Datos I MIS. Lizbeth Alejandra Hernández González FNBC (Forma Normal de Boyce-Codd) Un esquema de relación R está en FNBC

Más detalles

Normalización. Carlos A. Olarte Bases de Datos I

Normalización. Carlos A. Olarte Bases de Datos I Carlos A. Olarte Bases de Datos I Outline 1 Introducción 2 Dependencias Funcionales 3 Diseño de Bases de Datos 4 Forma Normal Boyce-Codd (FNBC) 5 3FN 6 Dependneicas Funcionales Multivaluadas 7 4FN Introducción

Más detalles

Principios de Bases de Datos Relacionales, Normalización. Unidad 4

Principios de Bases de Datos Relacionales, Normalización. Unidad 4 Principios de Bases de Datos Relacionales, Normalización Unidad 4 Introducción Dependencia Funcional La dependencia funcional es una restricción entre dos conjuntos de atributos en una relación de una

Más detalles

Aseveraciones. Disparadores. Ejemplo de aseveración. Ejemplo de disparador. Ejemplo de disparador en SQL:1999

Aseveraciones. Disparadores. Ejemplo de aseveración. Ejemplo de disparador. Ejemplo de disparador en SQL:1999 Tema 4: Otros conceptos de diseño de bases de datos relacionales Aseveraciones Disparadores (triggers) Seguridad Autorización NORMALIZACIÓN Primera forma normal Problemas en el diseño lógico relacional

Más detalles

4.Diseño de Bases de Datos (I)

4.Diseño de Bases de Datos (I) 4.Diseño de Bases de Datos (I) 4.1 Anomalías. Se denominan así en teoría de Bases de Datos a ciertos problemas que aparecen con frecuencia en el manejo de las mismas cuando el diseño no ha sido realizado

Más detalles

NORMALIZACIÓN DE BASES DE DATOS RELACIONALES

NORMALIZACIÓN DE BASES DE DATOS RELACIONALES NORMALIZACIÓN DE BASES DE DATOS RELACIONALES El proceso de normalización fue introducido por Codd en el año 1974. Busca encontrar errores en el diseño de un esquema relacional debido a la presencia de

Más detalles

NORMALIZACION. Definición.

NORMALIZACION. Definición. NORMALIZACION Definición. La normalización es una técnica que se utiliza para crear relaciones lógicas apropiadas entre tablas de una base de datos. La normalización se adoptó porque el viejo estilo de

Más detalles

Normalización. Universidad Nacional de Colombia Facultad de Ingeniería

Normalización. Universidad Nacional de Colombia Facultad de Ingeniería Normalización Preparó: Ismael Castañeda Fuentes Fuente principal: Database Systems A Practical Approach to Design, Implementation, and Management. Thomas Connolly, Carolyn Begg Universidad Nacional de

Más detalles

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos.

Este es un ejemplo muy sencillo, un esquema de empleados que trabajan en proyectos, en una relación muchos a muchos. 28/04/2012 La teoría de la normalización va perdiendo peso con el paso de los años como herramienta de diseño de bases de datos relacionales en favor de modelos de datos más ricos en su representación,

Más detalles

Que es normalización? Normalización de una base de datos Grados de normalización: Primera Forma Grados de normalización: Segunda Forma Grados de

Que es normalización? Normalización de una base de datos Grados de normalización: Primera Forma Grados de normalización: Segunda Forma Grados de Sergio Sánchez Que es normalización? Normalización de una base de datos Grados de normalización: Primera Forma Grados de normalización: Segunda Forma Grados de normalización: Tercera Forma Otras formas

Más detalles

RESTRICCIONES DE INTEGRIDAD Y DEPENDENCIAS FUNCIONALES Bases de Datos Universidad de Talca, II Semestre 2006. Jorge Pérez R.

RESTRICCIONES DE INTEGRIDAD Y DEPENDENCIAS FUNCIONALES Bases de Datos Universidad de Talca, II Semestre 2006. Jorge Pérez R. RESTRICCIONES DE INTEGRIDAD Y DEPENDENCIAS FUNCIONALES Bases de Datos Universidad de Talca, II Semestre 2006 Jorge Pérez R. 1 Restricciones de Dominio Son la forma más elemental de restricciones de integridad.

Más detalles

NORMALIZACIÓN DE BASES DE DATOS

NORMALIZACIÓN DE BASES DE DATOS NORMALIZACIÓN DE BASES DE DATOS El proceso de normalización de bases de datos, consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad relación al modelo relacional.

Más detalles

Normalización. El diseño que hemos recibido está compuesto de estas dos relaciones:

Normalización. El diseño que hemos recibido está compuesto de estas dos relaciones: Normalización 1. Introducción Nuestro departamento de informática ha recibido el encargo de diseñar una base de datos para llevar el control de las piezas, proveedores y proyectos que realiza nuestra empresa.

Más detalles

Teoría formal de la normalización de esquemas relacionales. Definición formal de las tres primeras Formas Normales

Teoría formal de la normalización de esquemas relacionales. Definición formal de las tres primeras Formas Normales Teoría formal de la normalización de esquemas relacionales. Definición formal de las tres primeras Formas Normales Normalización de esquemas relacionales Motivación Sea la BD de proveedores y partes, con

Más detalles

Normalización. Tema 16

Normalización. Tema 16 Normalización Tema 16 Contenido Introducción Normalización de Relaciones Bibliogra;a 2 Introducción Al diseñar una BD relacional, podemos obtener diferentes esquemas La teoría de la normalización consigue

Más detalles

Tema 6: Teoría de la Normalización

Tema 6: Teoría de la Normalización Tema 6: Teoría de la Normalización 1. Introducción Si definimos una base de datos como; una colección de información estructurada, referente a objetos y hechos de la realidad, y almacenados en un ordenador

Más detalles

Normalización de bases de datos

Normalización de bases de datos Normalización de bases de datos Se explican los conceptos de la normalización de bases de datos, mismos que son necesarios para un buen diseño de una base de datos. Fecha de creación: 29 May del 2003-12:31

Más detalles

CERTAMEN 2 90 minutos 20 puntos

CERTAMEN 2 90 minutos 20 puntos CERTAMEN 2 Para la realización del presente certamen se dispondrá de 90 minutos. Debe incluir cualquier supuesto no explicito, siempre cuando no cambie el sentido de la pregunta. No se pueden utilizar

Más detalles

Dep. Multivaluadas y Cuarta F.N.

Dep. Multivaluadas y Cuarta F.N. Dep. Multivaluadas y Cuarta F.N. Dependencia Multivaluada (dmv)» Idea intuitiva» Definición formal de dmv Dmv Trivial Reglas de inferencia para dfs y dmv Cuarta Forma Normal Descomposición con JSP (Propiedad)

Más detalles

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1

Cómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1 . ESPACIOS VECTORIALES Consideremos el siguiente subconjunto de R 4 : S = {(x, x 2, x 3, x 4 )/x x 4 = 0 x 2 x 4 = x 3 a. Comprobar que S es subespacio vectorial de R 4. Para demostrar que S es un subespacio

Más detalles

Ficheros y Bases de Datos Curso 2009-10 Ingeniería Técnica de Informática Primer Parcial. 1-Junio-2010. Nombre:

Ficheros y Bases de Datos Curso 2009-10 Ingeniería Técnica de Informática Primer Parcial. 1-Junio-2010. Nombre: Ficheros y Bases de Datos Curso 2009-10 Ingeniería Técnica de Informática Primer Parcial. 1-Junio-2010 Nombre: Se debe entregar esta hoja 2 horas 1 (3,5 puntos A partir de la información sobre la BD que

Más detalles

Normalización. Bases de Datos

Normalización. Bases de Datos Normalización Bases de Datos Primera Forma Normal El dominio de todo atributo de cualquier relación debe incluir sólo valores atómicos. El valor de cualquier tupla debe ser un elemento simple del dominio.

Más detalles

Diseño de bases de datos Diapositiva 1

Diseño de bases de datos Diapositiva 1 Diseño o de bases de datos Objetivos del Diseño Principios del Diseño de BD Proceso de Diseño Normalización Diseño de Tablas: Claves Relaciones Integridad referencial Convenciones de nomenclatura Diseño

Más detalles

Antes de entrar a definir la forma normal de Boyce-Codd, necesitamos conocer qué se entiende por determinante.

Antes de entrar a definir la forma normal de Boyce-Codd, necesitamos conocer qué se entiende por determinante. 28/04/2012 1 2 Antes de entrar a definir la forma normal de Boyce-Codd, necesitamos conocer qué se entiende por determinante. Empecemos extrayendo las claves candidatas presentes en este gráfico de dependencias

Más detalles

BASES DE DATOS TEMA 5. DISEÑO DE BASES DE DATOS RELACIONALES MEDIANTE NORMALIZACION Contenidos generales

BASES DE DATOS TEMA 5. DISEÑO DE BASES DE DATOS RELACIONALES MEDIANTE NORMALIZACION Contenidos generales BASES DE DATOS TEMA 5. DISEÑO DE BASES DE DATOS RELACIONALES MEDIANTE NORMALIZACION Contenidos generales * Redundancia y Anomalías en la actualización * Dependencias funcionales * Formas normales. Proceso

Más detalles

MATERIAL INSTRUCCIONAL DE APOYO

MATERIAL INSTRUCCIONAL DE APOYO UNIVERSIDAD NACIONAL ABIERTA VICERRECTORADO ACADÉMICO AREA: INGENIERÍA / CARRERA: INGENIERÍA DE SISTEMAS MATERIAL INSTRUCCIONAL DE APOYO NOMBRE: BASE DE DATOS Código: 311 U.C. : 04 CARRERA: SEMESTRE: AUTOR:

Más detalles

Un ejemplo simple de normalización de bases de datos relacionales (hasta 3FN)

Un ejemplo simple de normalización de bases de datos relacionales (hasta 3FN) OpenStax-CNX module: m18350 1 Un ejemplo simple de normalización de bases de datos relacionales (hasta 3FN) Miguel-Angel Sicilia This work is produced by OpenStax-CNX and licensed under the Creative Commons

Más detalles

Conceptos generales sobre bases de datos relacionales y MS-Access

Conceptos generales sobre bases de datos relacionales y MS-Access Taller de iniciación a la aplicación de ZOORBAR Conceptos generales sobre bases de datos relacionales y MS-Access Francisco Pando, GBIF-ES MADRID, 1-13 de diciembre 2009 Qué es una base de datos conjunto

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales Licenciatura en Ciencia de la Computación Bases de Datos No Convencionales Normalización de Bases de Datos Relacionales Profesor Fredi Palominos Villavicencio Teoría de Normalización : Es un procedimiento

Más detalles

Modelo Relacional. Normalización

Modelo Relacional. Normalización Modelo Relacional Normalización Concepto El proceso de normalización consiste en aplicar a un modelo relacional un conjunto de normas que eviten la duplicidad y la perdida de integridad de los datos. Las

Más detalles

DISEÑO DE BASES DE DATOS RELACIONALES: NORMALIZACION

DISEÑO DE BASES DE DATOS RELACIONALES: NORMALIZACION DISEÑO DE BASES DE DATOS RELACIONALES: NORMALIZACION 1. INTRODUCCION 2. DESCOMPOSICION DE ESQUEMAS 3. DEPENDENCIAS FUNCIONALES 4. DEFINICIONES Dependencia funcional Determinante Dependencia funcional completa

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

Tema 5: Teoría de diseño de Bases de Datos Relacionales.

Tema 5: Teoría de diseño de Bases de Datos Relacionales. Tema 5: Teoría de diseño de Bases de Datos Relacionales. I. Introducción. Fases de diseño de una base de datos. 1. Mod. Conceptual (MERE) -> Mod. Lógico (Relacional). 2. Mod. Lógico (Relacional). En el

Más detalles

Unidad 3. NORMALIZACIÓN.

Unidad 3. NORMALIZACIÓN. Unidad 3. NORMALIZACIÓN. PRACTICA " Definición y Concepto de Normalización " 1. El alumno deberá conseguir información de 3 fuentes bibliográficas distintas, el concepto de Definición. 2. No olvidar hacer

Más detalles

rg.o cm a Diseñ e o o l óg ó ico c l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s s r e r la l c a i c o i nal a e l s

rg.o cm a Diseñ e o o l óg ó ico c l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s s r e r la l c a i c o i nal a e l s Diseño lógico Diseño de bases de datos relacionales Diseño lógico de bases de datos relacionales El modelo relacional: El concepto de relación: tuplas, atributos y dominios. Restricciones de integridad

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 9. Reglas de Integridad 1.- Introducción. 2.- Claves Primarias. 3.- Regla de Integridad de Entidades. 4.- Claves Ajenas. 5.- Regla de Integridad

Más detalles

Tema 2: Modelo Entidad-Asociación (E-A)

Tema 2: Modelo Entidad-Asociación (E-A) Tema 2: Modelo Entidad-Asociación (E-A) Conjuntos entidad Conjuntos asociación Cuestiones de diseño Restricciones de asociaciones Claves Diagrama E-A Características del modelo E-A ampliado Diseño de un

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007

OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL. Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 OPERACIONES FUNDAMENTALES DEL ÁLGEBRA RELACIONAL Bases de Datos Ingeniería de Sistemas y Computación Universidad Nacional de Colombia 2007 Álgebra Relacional Álgebra Relacional El álgebra relacional es

Más detalles

Tema 3. Espacios vectoriales

Tema 3. Espacios vectoriales Tema 3. Espacios vectoriales Estructura del tema. Definición y propiedades. Ejemplos. Dependencia e independencia lineal. Conceptos de base y dimensión. Coordenadas Subespacios vectoriales. 0.1. Definición

Más detalles

Normalización 1NF 2NF 3NF BCNF 4NF

Normalización 1NF 2NF 3NF BCNF 4NF Normalización La Normalización es un proceso mediante el cual un esquema de Base de Datos se lleva a un nuevo esquema equivalente de mejor calidad en cuanto al diseño. La calidad del diseño la medimos

Más detalles

7 Diseño de Bases de Datos Relacionales: Normalización

7 Diseño de Bases de Datos Relacionales: Normalización 7 Diseño de Bases de Datos Relacionales: Normalización introducción al problema de diseño de una B.D. Relacional 7.1 Problemas derivados del diseño de una Base de Datos Relacional 7.2 Dependencias funcionales.

Más detalles

El modelo relacional

El modelo relacional El modelo relacional El modelo relacional constituye una alternativa para la organización y representación de la información que se pretende almacenar en una base de datos. Se trata de un modelo teórico

Más detalles

Operaciones en el Modelo Relacional. Relacional. Relacional. Índice. Lenguajes de Consulta

Operaciones en el Modelo Relacional. Relacional. Relacional. Índice. Lenguajes de Consulta Operaciones en el Modelo Relacional Bases de Datos Ingeniería a Técnica T en Informática de Sistemas El interés de los usuarios de las bases de datos se suele centrar en realizar consultas (contestar a

Más detalles

Ing. YIM ISAIAS APESTEGUI FLORENTINO Tema: Normalización

Ing. YIM ISAIAS APESTEGUI FLORENTINO Tema: Normalización Normalización de Base de Datos ING. YIM ISAIAS APESTEGUI FLORENTINO NORMALIZACION DE BASE DE DATOS La normalización de bases de datos relacionales toma un esquema relacional y le aplica un conjunto de

Más detalles

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES El modelo relacional se basa en dos ramas de las matemáticas: la teoría de conjuntos y la lógica de predicados de primer orden. El hecho de que

Más detalles

Tema 6: Diseño de bases de datos relacionales.

Tema 6: Diseño de bases de datos relacionales. 6.1 Introducción. Tema 6:. Las dificultades inherentes al diseño de una base de datos han de afrontarse con procedimientos ordenados y metódicos. En el proceso de diseño de una base de datos hemos de distinguir

Más detalles

Proceso de normalización Normalización 1/5 El proceso de normalización es un estándar que consiste, básicamente, en un proceso de conversión de las relaciones entre las entidades, evitando: La redundancia

Más detalles

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional

Sistemas de Bases de Datos I. Modelo Lógico Modelo Relacional Sistemas de Bases de Datos I Modelo Lógico Modelo Relacional Modelo Lógico Modelo Relacional Esquema Relacional (E- R) Es la representación de un DER mediante tablas. Algebra Relacional Modelo Relacional

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos

Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos Apuntes de Matemática Discreta 1. Conjuntos y Subconjuntos Francisco José González Gutiérrez Cádiz, Octubre de 2004 Universidad de Cádiz Departamento de Matemáticas ii Lección 1 Conjuntos y Subconjuntos

Más detalles

GENERACIÓN DE ANTICIPOS DE CRÉDITO

GENERACIÓN DE ANTICIPOS DE CRÉDITO GENERACIÓN DE ANTICIPOS DE CRÉDITO 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de anticipos de crédito permite generar fácilmente órdenes para que la Caja anticipe el cobro de créditos

Más detalles

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL 5.6 MODIFICACIÓN DE LA BASE DE DATOS SQL posee comandos destinados también para modificar la base de datos, entre estos se tienen operaciones de borrado,

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

Base de Datos. Profesores: Franklin Johnson P. José Miguel Rubio L.

Base de Datos. Profesores: Franklin Johnson P. José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE INFORMÁTICA Base de Datos Usuario A Programa de Aplicación Bodega Usuario B Usuario N Insumo Proveedor Profesores: Franklin Johnson

Más detalles

4 Integridad de datos relacional: llaves candidatas y temas relacionados.

4 Integridad de datos relacional: llaves candidatas y temas relacionados. 4 Integridad de datos relacional: llaves candidatas y temas relacionados. 4.1 Introducción. 4.2 Llaves candidatas. 4.3 Llaves primarias y llaves alternas. 4.4 Llaves foráneas. 4.5 Reglas de llaves foráneas.

Más detalles

Proyecto de Normalización Automática de Base de Datos

Proyecto de Normalización Automática de Base de Datos Proyecto de Normalización Automática de Base de Datos Lic. Beatriz Steimberg * Resumen En el primer cuatrimestre del año 2003 se encaró el proyecto de Normalización Automática de Base de Datos. El objetivo

Más detalles

UNIVERSIDAD SAN PEDRO FILIAL - CAJAMARCA

UNIVERSIDAD SAN PEDRO FILIAL - CAJAMARCA UNIVERSIDAD SAN PEDRO FILIAL - CAJAMARCA Ing. Melvin Ayrac Paredes Página 1 Normalización es un conjunto de reglas que sirven para ayudar a los diseñadores a desarrollar un esquema que minimice los problemas

Más detalles

Divisibilidad y números primos

Divisibilidad y números primos Divisibilidad y números primos Divisibilidad En muchos problemas es necesario saber si el reparto de varios elementos en diferentes grupos se puede hacer equitativamente, es decir, si el número de elementos

Más detalles

proceso que consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.

proceso que consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional. Que es una normalización de una base de datos proceso que consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional. Para que sirve

Más detalles

Tema 3. El modelo Relacional

Tema 3. El modelo Relacional Tema 3. El modelo Relacional Juan Ignacio Rodríguez de León Resumen Presenta el modelo entidad-relación. Visión de alto nivel de las cuestiones referentes a diseño de bases de datos y los problemas encontrados

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

Capítulo VI. Diagramas de Entidad Relación

Capítulo VI. Diagramas de Entidad Relación Diagramas de Entidad Relación Diagramas de entidad relación Tabla de contenido 1.- Concepto de entidad... 91 1.1.- Entidad del negocio... 91 1.2.- Atributos y datos... 91 2.- Asociación de entidades...

Más detalles

Eduardo Mora y Marta Zorrilla Pág. - 1 -

Eduardo Mora y Marta Zorrilla Pág. - 1 - Formas Normales Para construir un sistema de información que responda a un problema real concreto, lo primero que hay que hacer es decidir cuál es el esquema relacional más adecuado. Encontrar la mejor

Más detalles

Mantenimiento Limpieza

Mantenimiento Limpieza Mantenimiento Limpieza El programa nos permite decidir qué tipo de limpieza queremos hacer. Si queremos una limpieza diaria, tipo Hotel, en el que se realizan todos los servicios en la habitación cada

Más detalles

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases. BASES Y DIMENSIÓN Definición: Base. Se llama base de un espacio (o subespacio) vectorial a un sistema generador de dicho espacio o subespacio, que sea a la vez linealmente independiente. β Propiedades

Más detalles

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS Una situación que se nos plantea algunas veces es la de resolver un problema hacia atrás, esto es, encontrar

Más detalles

Tema 5: Diseño de Bases de Datos

Tema 5: Diseño de Bases de Datos Tema 5: Diseño de Bases de Datos Fernando Cano Espinosa Juan David González Cobas Universidad de Oviedo. Departamento de Informática ÒÓÙÒ ÓÚ º Ó ÙÒ ÓÚ º ÙÖ Ó ¾¼¼ ¹¾¼½¼ Produced with L A T E X seminar style

Más detalles

Ecuaciones de primer grado con dos incógnitas

Ecuaciones de primer grado con dos incógnitas Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad

Más detalles

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto

Más detalles

Curso Excel Básico - Intermedio

Curso Excel Básico - Intermedio Curso Excel Básico - Intermedio Clase 4 Relator: Miguel Rivera Adonis Introducción Base de Datos: Definición de Base de Datos Ordenar datos Formulario Filtros Trabajar con Sub-Totales Validación de Datos

Más detalles

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño

Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño Unidad II: Diseño de Bases de Datos y el modelo E-R. 2.1 El Proceso de Diseño El proceso de diseño para una base de datos consta básicamente de 7 pasos, los cuáles se describen en la siguiente imagen.

Más detalles

E 1 E 2 E 2 E 3 E 4 E 5 2E 4

E 1 E 2 E 2 E 3 E 4 E 5 2E 4 Problemas resueltos de Espacios Vectoriales: 1- Para cada uno de los conjuntos de vectores que se dan a continuación estudia si son linealmente independientes, sistema generador o base: a) (2, 1, 1, 1),

Más detalles

circuitos digitales Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007

circuitos digitales Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Oliverio J. Santana Jaria Sistemas Digitales 8. Análisis lógico l de los circuitos digitales Ingeniería Técnica en Informática de Sistemas Los Curso 26 27 El conjunto circuitos de puertas digitales lógicas

Más detalles

1. DML. Las subconsultas

1. DML. Las subconsultas 1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se

Más detalles

Subespacios vectoriales en R n

Subespacios vectoriales en R n Subespacios vectoriales en R n Víctor Domínguez Octubre 2011 1. Introducción Con estas notas resumimos los conceptos fundamentales del tema 3 que, en pocas palabras, se puede resumir en técnicas de manejo

Más detalles

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE

Técnicas de prueba 1. FUNDAMENTOS DE LA PRUEBA DEL SOFTWARE Técnicas de prueba El desarrollo de Sistemas de software implica la realización de una serie de actividades predispuestas a incorporar errores (en la etapa de definición de requerimientos, de diseño, de

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

Aproximación local. Plano tangente. Derivadas parciales.

Aproximación local. Plano tangente. Derivadas parciales. Univ. de Alcalá de Henares Ingeniería de Telecomunicación Cálculo. Segundo parcial. Curso 004-005 Aproximación local. Plano tangente. Derivadas parciales. 1. Plano tangente 1.1. El problema de la aproximación

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

TEMA 5.- ESTRUCTURA DE DATOS RELACIONAL.

TEMA 5.- ESTRUCTURA DE DATOS RELACIONAL. TEMA 5.- ESTRUCTURA DE DATOS RELACIONAL. Introducción. La Estructura de Datos: La Relación. Restricciones del Modelo. El Modelo Relacional y la Arquitectura ANSI/SPARC. 1. Introducción. - Fue introducido

Más detalles

5.1. Organizar los roles

5.1. Organizar los roles Marco de intervención con personas en grave situación de exclusión social 5 Organización de la acción 5.1. Organizar los roles Parece que el modelo que vamos perfilando hace emerger un rol central de acompañamiento

Más detalles

Tema 2: Modelo Entidad-Relación(ER)

Tema 2: Modelo Entidad-Relación(ER) ÒÓ Ô ºÙÒ ÓÚ º Tema 2: Modelo Entidad-Relación(ER) Fernando Cano Espinosa Universidad de Oviedo. Departamento de Informática 1 Contenido 1. Introducción al modelo de datos ER 2. Conjuntos de entidades y

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice 1 Polinomios Dedicaremos este apartado al repaso de los polinomios. Se define R[x] ={a 0 + a 1 x + a 2 x 2 +... +

Más detalles

Cómo registrarse y crear su cuenta de usuario? < IMAGEN 2.1.1: HAZ CLIC SOBRE EL BOTÓN RESALTADO

Cómo registrarse y crear su cuenta de usuario? < IMAGEN 2.1.1: HAZ CLIC SOBRE EL BOTÓN RESALTADO Cómo registrarse y crear su cuenta de usuario? Si es la primera vez que visita la página, y nunca ha creado un usuario para poder acceder a todos los servicios que el sistema ofrece, deberá registrarse

Más detalles

Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo

Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo Semánticas del cálculo de predicados proporcionan las bases formales para determinar el valor

Más detalles

GENERACIÓN DE TRANSFERENCIAS

GENERACIÓN DE TRANSFERENCIAS GENERACIÓN DE TRANSFERENCIAS 1 INFORMACIÓN BÁSICA La aplicación de generación de ficheros de transferencias permite generar fácilmente órdenes para que la Caja efectúe transferencias, creando una base

Más detalles

Tema 2. Espacios Vectoriales. 2.1. Introducción

Tema 2. Espacios Vectoriales. 2.1. Introducción Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por

Más detalles

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007

Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007 Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el

Más detalles

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA Perfil Entidad Proveedora El objetivo del módulo de Gestión de Solicitudes vía Internet es facilitar el trabajo

Más detalles

Modelo Relacional. Guido Urdaneta (Revisado por E. DeBourg, H. Corzo y A. Romero) 26 de abril de 2004

Modelo Relacional. Guido Urdaneta (Revisado por E. DeBourg, H. Corzo y A. Romero) 26 de abril de 2004 Modelo Relacional Guido Urdaneta (Revisado por E. DeBourg, H. Corzo y A. Romero) 26 de abril de 2004 El modelo relacional establece una forma de representar los datos mediante tablas y de manipularlos.

Más detalles

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

En cualquier caso, tampoco es demasiado importante el significado de la B, si es que lo tiene, lo interesante realmente es el algoritmo. Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa

Más detalles

Activos Intangibles Costos de Sitios Web

Activos Intangibles Costos de Sitios Web SIC-32 Documentos publicados para acompañar a la Interpretación SIC-32 Activos Intangibles Costos de Sitios Web Esta versión incluye las modificaciones resultantes de las NIIF emitidas hasta el 31 de diciembre

Más detalles