Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla

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

Download "Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla"

Transcripción

1 Departamento de Lenguajes y Sistemas Informáticos E.T.S. Ingeniería Informática. Universidad de Sevilla Avda Reina Mercedes s/n Sevilla Tlf/Fax lsi@lsi.us.es Web E.T.S. Ingeniería Informática Bases de Datos Tema 9 Diseño de bases de datos relacionales Sevilla, abril 2005 V

2 Indice 1 INTRODUCCIÓN DISEÑO DE BD RELACIONALES ANOMALÍAS DE MANIPULACIÓN DEPENDENCIAS FUNCIONALES CONCEPTO DE DEPENDENCIA FUNCIONAL Descriptores equivalentes: Dependencia funcional plena o completa Dependencia funcional elemental Dependencia funcional trivial (Reflexividad de Ärmstrong) Dependencia funcional transitiva GRAFO DE DEPENDENCIAS FUNCIONALES (GDF) AXIOMAS DE ÄRMSTRONG Reflexividad Aumentatividad Transitividad Proyectividad o descomposición Unión o aditividad Pseudotransitividad CIERRE DE UN DESCRIPTOR CIERRE DE UN CONJUNTO DE DEPENDENCIAS COBERTURA MÍNIMA FORMAS NORMALES DE CODD DESCOMPOSICIONES SIN PÉRDIDAS Preservación de atributos Preservación de dependencias Preservación del contenido de las tuplas o descomposición sin pérdida de join PRIMERA FORMA NORMAL (1FN) SEGUNDA FORMA NORMAL (2FN) Justificación intuitiva Regla de descomposición de relaciones que no están en 2FN TERCERA FORMA NORMAL (3FN) Justificación intuitiva Descomposición de relaciones que no están en 3FN FORMA NORMAL DE BOYCE-CODD (FNBC) Justificación intuitiva Descomposición FNBC: Grafos cíclicos y acíclicos COMPARACIÓN 3FN Y FNBC DISEÑO DE BASES DE DATOS RELACIONALES ENFOQUE DE DESCOMPOSICIÓN: NORMALIZACIÓN ENFOQUE DE SÍNTESIS: SÍNTESIS BÁSICA DE BERNSTEIN Pág. 2 de 22

3 1 Introducción 1.1 Diseño de BD relacionales Al diseñar intuitivamente 1 una base de datos relacional se obtiene un esquema; diferentes observadores generarán, sin duda, esquemas alternativos; el problema que se presenta es evaluar la calidad o bondad de dicho esquema. La calidad de un esquema estará determinada por el comportamiento o reacción a determinadas operaciones de manipulación, de modo que un buen esquema presentará buen comportamiento mientras que otros ofrecerán ciertos inconvenientes o anomalías de manipulación (actualización, inserción y borrado) al escribir transacciones contra dicho esquema. 1.2 Anomalías de manipulación El objetivo de las técnicas de diseño de bases de datos relacionales es obtener esquemas exentos de anomalías de manipulación. Ejemplo: Sean los esquemas relacionales ρ 1 y ρ 2 : Suminitradores( S # : Dcodigo, Noms : Dnombre, Ciudad : Dciudad) PK( S #) Piezas ( P # : Dcodigo, Peso : Dpeso, C olor : Dcolor) PK( P #) ρ1 Suministros ( S# : Dcodigo, P # : Dcodigo, Cant : Dcant) PK( S #, P #) FK1( S #) / Suminitradores, FK2( P #) / Piezas Suministradores S# Noms Ciudad S1 Jones Paris S2 Clark Londres S3 Adams Sevilla Suministros S# P# Cant S1 P1 50 S1 P2 10 S2 P1 5 S3 P1 15 Piezas P# Peso Color P1 200 Gris P2 400 Azul Suminitradores( S # : Dcodigo, Noms : Dnombre, Ciudad : Dciudad) PK( S #) ρ2 Suministra_Piezas ( S # : Dcodigo, P # : Dcodigo, Cant : Dcant, Peso : Dpeso, Color : Dcolor) PK ( S #, P #) FK1( S #) / Suminitradores Suministradores S# Noms Ciudad S1 Jones Paris S2 Clark Londres S3 Adams Sevilla Suministra_Piezas S# P# Cant Peso Color S1 P Gris S1 P Azul S2 P Gris S3 P Gris 1 Sin un método formal. Pág. 3 de 22

4 En primer lugar, en el esquema ρ 2 algunos datos son redundantes: los datos de piezas (Color y Peso) aparecen tantas veces como dicha pieza es suministrada. Esta redundancia conlleva unos riesgos de incoherencia. Al cambiar el Peso de una pieza de 200 a 220 hay que actualizar en todas las tuplas en las que aparece. Se producen por tanto anomalías de actualización (debe actualizarse sólo en una tupla y evitar que haya más de una tupla con diferente peso de la misma pieza). No se pueden guardar datos de piezas (P#, Peso y Color) hasta que no sean suministradas (S# es parte de la clave primaria y por tanto no puede tener valor null); presenta anomalías de inserción. Por último, surgen las anomalías de eliminación o borrado. Cuando se elimina una tupla de Suministra_Pieza y la pieza sólo aparece en dicha tupla (ej. P#=P2) se pierde la información de la pieza. El esquema ρ 2 presenta estos problemas inconvenientes debido a que no sigue un principio intuitivo básico: conceptos o hechos independientes deben recogerse en (relaciones) distintas o específicas. El esquema relacional ρ 1 no presenta las anomalías anteriores. Puede afirmarse que este esquema es mejor que el anterior. La teoría de dependencias se ha desarrollado para medir formalmente la calidad de un diseño y proponer medidas que resuelvan las anomalías de manipulación (formas normales). Incluye el concepto de dependencia funcional y sus propiedades, que es la principal herramienta para medir la idoneidad de un esquema relacional. 2 Dependencias funcionales 2.1 Concepto de dependencia funcional Las dependencias funcionales son reglas independientes del tiempo que verifican los atributos de un contexto determinado. ( Ai Di ) Sea R { : } t,s R tuplas de R X, Y subconjuntos de atributos X R ({ Ai : Di} ) Y R ({ Ai : Di} ) Se define una dependencia funcional (DF) X Y (X determina funcionalmente a Y o Y depende funcionalmente de X) como una restricción sobre las tuplas de R que garantiza que dado un valor único de X, el valor de los atributos que componen Y ha de ser también único. X Y = t.x = s.x t.y = s.y ( ) Ej.: Dada la DF: S# Ciudad induce que no pueden existir dos tuplas con el mismo código de proveedor y distinta Ciudad. Pág. 4 de 22

5 Un esquema de relación se ve enriquecido por la semántica asociada a las dependencias funcionales inherentes al contexto de los atributos: R(A, DF) contiene las dependencias funcionales DF como restricciones semánticas Descriptores equivalentes: Se dice que X e Y son equivalentes cuando: X Y Y X Se representa: X Y Ej.: Dada la DF: S# Dni Dependencia funcional plena o completa ( i ) Sea R { A : Di} y X R;A R X A es completa sii: ( A X ) ( X X / X A) / Una dependencia funcional es plena o completa cuando A depende de X pero no de ningún subconjunto propio de X. X es un descriptor determinante. Atributos extraños son los atributos del descriptor de una DF que sobran en la dependencia. Ej.: S# Ciudad Es una DF plena o completa. (S#,Noms) Ciudad No es una DF plena o completa ya que código de proveedor determina Ciudad. Noms es un atributo extraño Dependencia funcional elemental Si una dependencia funcional plena tiene como descriptor determinado un atributo simple, la dependencia es elemental. Ej.: S# Ciudad es una DF elemental ya que Ciudad es un atributo simple Dependencia funcional trivial (Reflexividad de Ärmstrong) Una DF X Y es trivial si Y es un subconjunto de X: Y X Ej.: S# S# DF trivial. (S#,Ciudad) Ciudad DF trivial Dependencia funcional transitiva ( X Dx Y Dy Z Dz) Sea R :, :, : X Y Y Z Y X Se dice que Z tiene una DF transitiva de X a través de Y : X Z Ej.: S# Ciudad País Existe la DF transitiva S# País Pág. 5 de 22

6 2.2 Grafo de dependencias funcionales (GDF) Es un grafo que representa el contexto semántico observado en un determinado universo, donde los nodos son atributos y los arcos representan dependencias entre nodos o agrupaciones (burbujas) de nodos. Normalmente se representan dependencias que van de un nodo o burbuja a un solo atributo. Sean los atributos:{ s#, Noms, Estado, Ciudad, p#, Nomp, Color, Peso, Cant} y las dependencias funcionales: F= { S# Noms, S# Estado, S# Ciudad, P# Nomp, P# Color, P# Peso, P# Ciudad, (S#,P#) Cant } GDF: Cant Noms s# Estado Ciudad p# Nomp Color Peso 2.3 Axiomas de Ärmstrong De un esquema de relación R (A,F) es posible deducir (o inferir) nuevas dependencias funcionales. Las nuevas dependencias f que se cumplen para cualquier extensión de r de R son consecuencia lógica de F. Se representan como: F = f. De modo que F f representan un contexto alternativo del mismo universo (existen grafos de dependencias alternativos del mismo contexto con más o menos dependencias funcionales). Estas reglas de derivación se conocen como Axiomas de Ärmstrong y forman un conjunto completo y correcto de axiomas. Los axiomas básicos son reflexividad, aumentatividad y transitividad. De ellos se pueden inferir los derivados de descomposición, unión y pseudotransitividad. Axiomas Básicos Reflexividad Si Y X = X Y (X Y es una DF trivial) (S#, Ciudad) Ciudad Aumentatividad Si { X Y Z W } = XW YZ {P# Color y Ciudad (S#,Ciudad)} (P#, S#, Ciudad ) (Color, Ciudad) Pág. 6 de 22

7 2.3.3 Transitividad Si { X Y Y Z } = X Z {S# Ciudad y Ciudad País} S# País Axiomas Derivados Proyectividad o descomposición Si { X Y Z Y } = X Z {P# (Color, Peso) y Peso (Color, Peso) } P# Peso Unión o aditividad { Z} Si X Y X = X YZ {P# Color y P# Peso } P# (Color, Peso) Pseudotransitividad Si { X Y YW Z } = XW Z {S# Noms y (Noms, Fecha) Sueldo } (S#, Fecha) Sueldo 2.4 Cierre de un descriptor Es el conjunto de atributos determinados por dicho descriptor teniendo en cuenta las dependencias funcionales y los axiomas de Ärmstrong. Se representa el cierre de X respecto al conjunto de dependencias F: X + F Ej.: Dadas las dependencias F = {S# Noms,P# (Nomp,Color),(S#,P#) Cant } {S#} + F={S#,Noms} {P#} + F ={P#, Nomp, Color, } { S#,P#} + F ={S#, P#, Noms, Nomp, Color, Cant } 2.5 Cierre de un conjunto de dependencias Dado R(A,F) Para calcular el cierre de un conjunto de dependencias funcionales se aplican los Axiomas de Ärmstrong. El cierre de F se denomina F + ;es la unión de dependencias funcionales exisentes en F y el conjunto de todas las dependencias que pueden inferirse de DF mediante la aplicación de los axiomas de Ärmstrong: F + = F { X Y AxiomasÄrmstrong = X Y } Pág. 7 de 22

8 F será siempre un subconjunto del cierre (F F + ). Por lo tanto R(A, F) y R(A, F + ) representan contextos equivalentes de la misma relación. Para afirmar que una dependencia funcional X Y pertenece al cierre de un conjunto de dependencias F + es necesario calcular el cierre del descriptor en ese conjunto de dependencias: X + F. + + ( X X F) y si ( Y X F) ( X Y) = aplicando el axioma de reflexividad. La utilidad del concepto de cierre es asegurar la equivalencia de grafos que representan contextos alternativos de un mismo universo de discurso: Los conjuntos de dependencias F 1 y F 2 son equivalentes si tienen el mismo cierre: + F 1+ = F Cada dependencia de F 1 está en F 2 y cada dependencia de F 2 está en F 1 ( ) ( Z ) X Y F = Y X + 2 F1 + 1 F2 W F = W Z Todas las dependencias funcionales de F1 se pueden inferir de F2 y las de F2 se pueden inferir de F1. Ej. F 1 {cod_libro título, F 2 {cod_libro título, título cod_libro, título cod_libro, cod_libro editorial, título editorial, cod_libro idioma } título idioma } cod_libro título cod_libro título editorial idioma idioma editorial {cod_libro} + F2 = cod_libro, título, editorial, idioma {titulo} + F1 = cod_libro, título, editorial, idioma Los grafos de F1 y F2 son equivalentes. 2.6 Cobertura mínima Un conjunto de dependencias funcionales es una cobertura mínima (también denominado recubrimiento minimal o recubrimiento mínimo) F * de F si no tiene dependencias redundantes y es equivalente al conjunto de partida F: a) F * = F b) f F*; f / ( F* f ) = ( F) Pág. 8 de 22

9 3 Formas normales de Codd En el proceso de normalización en cada forma normal se establecen restricciones encaminadas a salvar ciertas anomalías asociadas a las relaciones que no están en esa forma normal. El proceso se aplica progresivamente y está basado en la teoría de dependencias. Relaciones no normalizadas 1FN 2FN 3FN FNBC 4FN 5FN Codd propuso tres formas normales, a las que denominó primera (1FN), segunda (2FN)y tercera forma normal (3FN). Posteriormente, Boyce y Codd propusieron un definición más estricta de la 3FN que se conoce como forma normal de Boyce-Codd (FNBC). Estas formas normales están basadas en las dependencias funcionales que existen entre los atributos de una relación. Otros autores han propuesto formas normales más avanzadas: cuarta forma normal (4FN) basada en el concepto de dependencia multivaluada y quinta forma normal (5FN) basada en las dependencias de combinación o de join, así como las dependencias generalizadas. Las dependencias funcionales son las restricciones semánticas que condicionan los esquemas de una base de datos relacional, razón por lo que son las más estudiadas. Pág. 9 de 22

10 3.1 Descomposiciones sin pérdidas El proceso de normalización va a consistir en transformar un esquema de relación R(A, F), por medio de sucesivas proyecciones, en un conjunto de nuevas relaciones equivalentes. Ha de prestarse atención a la equivalencia de estas relaciones, exigiéndose las siguientes propiedades para conseguir una descomposición sin pérdidas Preservación de atributos. Los atributos o propiedades de dos esquemas preservan atributos si no se pierde ninguna propiedad: Dados los esquemas 1{ RTL i( i, i) } 2{ Ri'( T' i, L' i) } ' sii Ti = T. i i i ρ ρ, ρ 2 preserva atributos respecto a ρ Preservación de dependencias. El conjunto de DF de partida debe ser equivalente al conjunto de DF de los esquemas resultantes. Dados los esquemas 1{ RTL i( i, i) } 2{ Ri'( T' i, L' i) } ρ ρ, ρ 2 preserva dependencias respecto a ρ 1. sii L = L i ' + + i i i Es decir: los cierres de los conjuntos de dependencias de los dos contextos son equivalentes. Pág. 10 de 22

11 3.1.3 Preservación del contenido de las tuplas o descomposición sin pérdida de join. En general, no puede asegurarse que el join natural de una descomposición (al aplicar la proyección algebráica) de relaciones genere el mismo estado o extensión que la relación de partida; existen casos donde pueden aparecer tuplas que no figuraban en la extensión inicial; a estas tuplas se les denomina tuplas espúreas. Ej. de descomposición con pérdida de dependencias funcionales y con pérdida de join (aparecen tuplas espúreas). PIEZAS P# Nomp Tipo Color 1 Rueda C Gris 2 Eje C Negro 3 Vagón T Rojo 4 Máquina T Rojo P_1 P# Nomp Tipo 1 Rueda C s(t) = 2 2 Eje C s(t) = 2 3 Vagón T s(t) = 1 4 Máquina T s(t) = 1 P_2 Tipo Color C Gris C Negro T Rojo P_1 6 P_2 P# Nomp Tipo Color 1 Rueda C Gris 1 Rueda C Negro 2 Eje C Gris 2 Eje C Negro 3 Vagón T Rojo 4 Máquina T Rojo Aparición de tuplas espúreas ( ) al hacer el join P# Nomp Color DF perdidas Tipo DF conservadas En este caso ( P_1 P_2) 6 Piezas y el excedente del join natural son las tuplas espúreas. Pág. 11 de 22

12 Dados los esquemas 1{ RTL i( i, i) }; 2{ Ri'( T' i, L' i) } ρ ρ, se pueden representar las relaciones resultado de hacer el join natural de cada esquema: R = R 6 R R 6 R = R 1 2 n 1 n i i= m 16 m m 6i = 1 i R ' = R' R'... R' R = R n 6 La descomposición ρ2 preserva el join respecto a ρ 1 sii Ri = R ' La condición suficiente para preservar join es: a) Preservación de propiedades: n m Ti = i= 1 i= 1 T' i n m 6 6 i= 1 i= 1 b) La descomposición contiene una clave del esquema original. K es una clave de R = 6 Ri y de R ' = 6 R ' c) La descomposición es una descomposición en relaciones independientes. Una descomposción en relaciones independientes tiene como intersección la clave ajena de una respecto a la otra. Factor de selectividad del join (s). Se define para cada tupla de una relación como el número de tuplas de la otra relación que hacen join con ella. En el ejemplo anterior, el factor de selectividad de la tupla rueda en P_1 es s( rueda )=2 porque hay dos tuplas en P_2 que hacen join, mientras que el factor de selectividad s( vagón )=1 por la misma razón. Apoyándose en el concepto de factor de selectividad, de cardinalidad de una relación como el número de tuplas de la misma, y de la posibilidad de aparición de tuplas espúreas, puede afirmarse en general para dos relaciones R1= RR ; 2= R R1 R2 R R 6 R y Card( R) Card( R6 R ) que Si se tienen en cuenta las hipótesis de condición suficiente: Card( R) Nºvalores distintos de la clave K de R. i i 6, pudiendo afirmarse, en general, 0 s( t) Card( R2) puesto que el Card R R s t ( 1 2) = () t R1 límite de tuplas para hacer join son el número de tuplas de R 2, pero teniendo en cuenta que R 1 y R 2 son proyecciones independientes, la intersección de sus esquemas es la clave ajena de R 1 respecto a R 2, luego para todas las tuplas de R 1, el join se hará por la clave prima de R 2 ; es decir, para cada valor de la clave ajena en R 1 sólo habrá una tupla en R 2. Esto permite afirmar que el factor de selectividad s(t) es constante y s(t)=1 para todas las tuplas de R 1. Luego: s() t = 1 = N º Tuplas( R1) = N º Valores clave( R º 1) = N Valores K t R1 t R1 Al tener R 1 y R la clave en común (K ), luego Card( R) = Card( R16 R2) c.q.d. Pág. 12 de 22

13 3.2 Primera forma normal (1FN) La primera forma normal (1FN) es una restricción inherente al modelo relacional. Establece que los dominios de los atributos deben de ser valores atómicos (no puede haber más de un valor de un atributo en una tupla). 3.3 Segunda forma normal (2FN) Justificación intuitiva La segunda forma normal evitará redundancias por mezcla de propiedades de dos entidades en la misma relación cuando existen dependencias incompletas. Está basada en las interrelaciones existentes entre los atributos primos (los que forman parte de alguna clave candidata) y no primos (los que no se encuentran en ninguna clave). Una relación está en 2FN si: Está en 1FN. Todo atributo no primo es completamente dependiente de las claves candidatas. Siempre es posible transformar un esquema de relación que no esté en 2FN en esquemas de relación en 2FN, sin que se produzca pérdida de información o de dependencias. Ej. R1(S#, Ciudad, Estado, P#, Cant) S# P# Ciudad Cant Estado Pág. 13 de 22

14 La clave candidata de R1 es (S#,P#), ya que: (S#,P#) + = (S#,P#,Ciudad,Cant,Estado) por: (S#,P#) (S#,P#) por reflexividad de Ärmstrong (S#,P#) Ciudad ya que es cierta S# Ciudad y Aumentatividad de Ärmstrong (S#,P#) Estado porque S# Estado por transititividad y también puede emplearse aumentatividad de Ärmstrong Utilizando el axioma de unión: (S#,P#) + (S#,P#,Ciudad,Cant,Estado), luego sólo puede haber una tupla definida la pareja (S#,P#). De hecho, puede redefinirse una clave candidata K para R con las condiciones: Unicidad: K R Minimalidad: / K ' K; K' / K' R La relación R1 no está en 2FN ya que el atributo no primo Ciudad depende de una parte de la clave candidata (el atributo S#). La descomposición en 2FN sería: R2(S#, Ciudad, Estado) y R3(S#, P#, Cant) R1 S# Ciudad Estado P# Cant S1 Londres 20 P1 300 S1 Londres 20 P2 200 S1 Londres 20 P3 400 S1 Londres 20 P4 200 S2 París 10 P1 300 S2 París 10 P2 400 S3 París 10 P2 200 R2 S# Ciudad Estado S1 Londres 20 S2 París 10 S3 París 10 R3 S# P# Cant S1 P1 300 S1 P2 200 S1 P3 400 S1 P4 200 S2 P1 300 S2 P2 400 S3 P2 200 Pág. 14 de 22

15 3.3.2 Regla de descomposición de relaciones que no están en 2FN. R(K1, K2, X, Y) se descompone en R1(K1, X) y R2(K1, K2, Y) K1 K2 X Y K1 X K1 K2 Y La descomposición {R1,R2} de R es una descomposición sin pérdidas, luego se garantiza preservación de propiedades, dependencias y join, evitando además las anomalías por redundancias asociadas a la 2FN. 3.4 Tercera forma normal (3FN) Justificación intuitiva La tercera forma normal evitará redundancias por mezcla de propiedades de dos entidades en la misma relación cuando existen dependencias transitivas. La 3FN está basada en el concepto de dependencia transitiva. Una relación está en 3FN sii: ( i ) ( ) Sea R { A : Di}, L X A L;A R; X R;A / X Se cumple I) X es una superclave de R ó II) A es primo Siempre es posible una descomposición en 3FN que preserve dependencias funcionales. Ej. R2(S#, Ciudad, Estado) S# Ciudad Estado La clave del esquema es S#. R2 no está en 3FN ya que Estado depende de Ciudad que no es clave candidata. Sin embargo: R21(S#, Ciudad) y R22(Ciudad, Estado) R2 S# Ciudad Estado S1 Londres 20 S2 París 10 S3 París 10 R21 S# Ciudad S1 Londres S2 París S3 París R22 Ciudad Estado Londres 20 París 10 Pág. 15 de 22

16 Este enunciado permite garantizar la ausencia de dependencias transitivas además de asegurar que la relación está en 2FN. En efecto: ( i ) ( ) Si R { A : Di}, L X A L;A R; y X superclave de R No puede existir R con un grafo característico: K1 K2 X Y ya que la clave de la relación R(K1,K2,X,Y) sería (K1,K2), existiendo la dependencia K1 Y y K1 no es superclave de la relación, lo que es contradictorio con que todos los determinantes sean superclaves. En enunciados antiguos de la tercera forma normal se exigía como hipótesis que la relación estuviese en 2FN; con este enunciado se asegura el estado en 2FN (si los atributos son atómicos) y 3FN(eliminando dependencias transitivas) Descomposición de relaciones que no están en 3FN. R(X, Y, Z) se descompone en R1(X, Y) y R2(Y, Z) X Y Z X Y Y Z La descomposición {R1,R2} de R es una descomposición sin pérdidas, luego se garantiza preservación de propiedades, dependencias y join, evitando además las anomalías por redundancias asociadas a la 3FN. 3.5 Forma normal de Boyce-Codd (FNBC) Justificación intuitiva La forma normal de Boyce-Codd aborda el tratamiento de redundancias en casos de claves alternativas, acotando el umbral de la descomposición de relaciones sin pérdidas de dependencias. Una relación está en FNBC si las claves candidatas son los únicos descriptores sobre los que se facilita información por cualquier otro atributo. ( i ) ( ) Sea R { A : Di}, L X A L;A R; X R;A / X Se cumple I) X es una superclave de R EJ. R4(S#, Noms, P#, Cntd) S# Noms P# Cantidad Las claves son (S#,P#) y (Noms#,P#) Pág. 16 de 22

17 La relación R4 no está en FNBC ya que el atributo S# depende de Noms que no es clave candidata y Noms depende S# que tampoco es clave candidata. La descomposición en FNBC sería: R41(S#, Noms) y R42(S#, P#, Cant) R4 S# Noms P# Cant S1 Martin P1 300 S1 Martin P2 200 S1 Martin P3 400 S2 Rubén P1 300 S2 Rubén P2 400 R41 S# Noms S1 Martin S2 Rubén R42 S# P# Cant S1 P1 300 S1 P2 200 S1 P3 400 S2 P1 300 S2 P Descomposición FNBC: Grafos cíclicos y acíclicos Para grafos acíclicos. Existe una descomposición en FNBC que preserve join y dependencias. Atributos = {X, Y, Z, A} ϕ = {X Y, XZ A, YZ A } R(X, Y, Z, A) se descompone en R1(X, Y) y R2(X, Z, A) X Y Z A Pág. 17 de 22

18 Para grafos cíclicos. No es posible encontrar una descomposición en FNBC que preserve dependencias. Atributos = {X, Y, Z} ϕ = {XY Z, Z Y } R(X, Y, Z) Las claves del esquema son XY y XZ, ya que (XY) + =(XZ) + =XYZ X Y Z Se perdería la dependencia XY Z al buscar FNBC 3.6 Comparación 3FN y FNBC FNBC es un enunciado reforzado de la 3FN. La condición de que A sea primo es una relajación de la 3FN respecto de la FNBC Siempre es posible encontrar una descomposición en 3FN que preserve propiedades. Siempre es posible encontrar, al menos una descomposición en FNBC que preserve join pero no siempre que preserve dependencias. Ej. VINOS Tipo Región País GDF Julieras California USA Julieras Beaujolais Francia Tipo Morgon Beaujolais Francia País Región Chablis Borgoña Francia Chablis California USA Jerez Rioja España Jerez Michigan USA VINO_1 Tipo País Julieras USA Julieras Francia Morgon Francia Chablis Francia Chablis USA Jerez España VINO_2 Región País California USA Beaujolais Francia Borgoña Francia Rioja España Michigan USA Jerez USA En este caso, no es posible encontrar una descomposición en FNBC que preserve dependencias funcionales. En cualquiera de las tres posibles descomposiciones se pierde la dependencia (Tipo,País) Región Pág. 18 de 22

19 En la descomposición Vino_1(Tipo, País) y Vino_2(Región, País) hay además pérdida de join. VINO_1 6 VINO_2 Tipo Región País Julieras California USA Julieras Michigan USA Julieras Beaujolais Francia Julieras Borgoña Francia Morgon Beaujolais Francia Morgon Borgoña Francia Chablis Beaujolais Francia Chablis Borgoña Francia Chablis California USA Chablis Michigan USA Jerez Rioja España Jerez California USA Jerez Michigan USA Siempre es posible encontrar una descomposición, en este caso Vino_3(Tipo, Región) y Vino_2(Región, País), que conserva join. No conserva dependencias funcionales. VINO_3 Tipo Región Julieras California Pulieras Beaujolais Morgon Beaujolais Chablis Borgoña Chablis California Jerez Rioja Jerez Michigan VINO_2 Región País California USA Beaujolais Francia Borgoña Francia Rioja España Michigan USA VINO_3 6 VINO_2 Tipo Región País Julieras California USA Julieras Beaujolais Francia Morgon Beaujolais Francia Chablis Borgoña Francia Chablis California USA Jerez Rioja España Jerez Michigan USA Pág. 19 de 22

20 4 Diseño de bases de datos relacionales 4.1 Enfoque de descomposición: Normalización El enfoque de descomposición de relaciones parte de asumir la existencia de la instancia universal. Dados un conjunto de atributos A{A 1, A 2, A n }y el grafo de dependencias representado por F sobre atributos de A, la relación U(A 1,A 2, A n ) se denomina la relación universal y su extensión la instancia universal, de modo que un esquema relacional que represente el mismo contexto: { R1, R2,.. Rp} ρ tendrá relaciones tales que cualquier tupla de una relación podrá obtenerse mediante una proyección de la instancia universal. Se asume la existencia (aunque artificial) de la relación e instancia universal. El enfoque de descomposición parte de la relación universal y aplica las reglas de descomposición vistas en cada forma normal. El mayor inconveniente de este método es el cálculo de claves, que en casos simples puede ser intuitivo pero cuando se parte de relaciones complejas o de la misma relación universal sí plantea problemas algorítmicos. Es decir: Paso 0: Asumiendo la existencia de U(A 1,A 2, A n ), calcular las claves {Ku }de U Paso 1. Descomponer relaciones que no estén en primera forma normal. Paso 2. Descomponer relaciones que tengan dependencias incompletas (2FN), recalculando claves de las nuevas relaciones. Paso 3. Descomponer relaciones con dependencias transitivias (3FN). 4.2 Enfoque de síntesis: síntesis básica de Bernstein El enfoque de síntesis no presupone la existencia de la relación universal, partiendo del conjunto de atributos A{A 1,A 2, A n }y del grafo de dependencias representado por F. Este enfoque se debe a Bernstein y se presenta el algoritmo básico (existe otro para manejar determinantes equivalentes que generan claves alternativas de relaciones: Síntesis modificada de Bernstein). Paso 1. Calcular un recubrimiento mínimo F* de F. Paso 2. Agrupar dependencias de F* en particiones que tengan el mismo determinante. Paso 3. Para cada partición se genera un esquema de relación R i la cual tendrá como clave primaria el determinante y como atributos el resto de los que aparezcan en las dependencias funcionales de la partición. Paso 4. Si existen atributos que no son implicantes ni implicados en DF*, se forma un esquema de relación con ellos y sin dependencias funcionales. Se pueden generar las claves ajenas por intersección entre esquemas de las relaciones y las claves primarias de las demás. Nada dice Bernstein al respecto y hay que tener en cuenta que si no se maneja el contexto pueden aparecer ciclos indeseables en las claves ajenas puesto que no se está partiendo de un enfoque de entidades sino de atributos. Página 20 de 22

21 Ejemplo: Dados los atributos: A{Dni, Nombre, Apellidos, Dirección, Población, Cod_postal, Provincia, País, Afición, Tipo_afición, Grado} y las dependencias funcionales: ϕ = { (Dirección, Población) Cod_postal Cod_postal Población Población (Provincia, País) Provincia País Dni Nombre, Apellidos, Dirección Dni Población, Cod_postal, Provincia, País (Nombre, Apellidos) Dni, Cod_postal (Dni, Afición) Tipo_afición, Grado Afición Tipo_afición } Tipo_afición Grado Afición Dni Dirección Cod_Postal Población Nombre Apellidos Provincia País Página 21 de 22

22 Paso 1. Se busca un recubrimiento mínimo ϕ *. Se eliminan los arcos redundantes por transitividad: Población País Dni Provincia, Población,País (Nombre,Apellidos) Cod_Postal y los arcos correspondientes a dependencias que no son completas (atributos extraños): (Afición,Dni) Tipo_afición Tipo_afición Grado Afición Dni Dirección Cod_Postal Población Nombre Apellidos Provincia País Paso 2. Generar P{Pi}: Pi {dfi: d i X i } P 1 { Provincia País } P 2 {Población Provincia } P 3 { ((Dirección, Población) Cod_Postal) (Cod_postal Población) } P 4 { Dni (Nombre, Apellidos), Dni Cod_Postal, Dni Dirección } P 5 {Afición Tipo_Afición } P 6 {(Dni, Afición) Grado } Paso 3. Generación de relaciones {R i } Relación Pk Ak Fk R 1 (Provincia, País) Provincia R 2 (Población, Provincia) Población Provincia/R 1 R 3 (Dirección, Población, Cod_Postal) (Cod_Postal, (Población, Dirección) Población/R 2 Dirección) R 4 (Dni, Nombre, Apellidos, Cod_Postal, Dirección) Dni (Nombre, Apellidos) (Cod_Postal, Dirección)/R 3 R 5 (Afición, Tipo_Afición) Afición R 6 (Dni, Afición, Grado) (Dni, Afición) Afición/R 5 Dni/R 4 Página 22 de 22

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

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

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

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

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

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

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

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

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

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

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

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

Tema 5: Normalización en Bases da Datos

Tema 5: Normalización en Bases da Datos Tema 5: Normalización en Bases da Datos Andrés Cordón Franco Departamento de Ciencias de la Computación e Inteligencia Artificial UNIVERSIDAD DE SEVILLA Bases de Datos Curso 2005 06 1 Contenido: 5.1 Introducción

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

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

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

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

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

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

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

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

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 8. Elementos Básicos 1.- Ejemplo Introductorio. 2.- Dominios. 3.- Relaciones. 4.- Bases de Datos Relacionales. (Capítulo 11 del Date) EJEMPLO

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

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

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

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

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

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

Base de Datos. Profesor: José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING.

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

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

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

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

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

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

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

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

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

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

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

Normalización n de Bases de Datos Relacionales. Bases de Datos. Malos Diseños. Índice. Muchos Problemas. Definición 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,

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

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

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

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

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

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Registro (record): es la unidad básica de acceso y manipulación de la base de datos. UNIDAD II 1. Modelos de Bases de Datos. Modelo de Red. Representan las entidades en forma de nodos de un grafo y las asociaciones o interrelaciones entre estas, mediante los arcos que unen a dichos nodos.

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

Repaso de Conceptos Básicos de Bases de Datos

Repaso de Conceptos Básicos de Bases de Datos escuela técnica superior de ingeniería informática Repaso de Conceptos Básicos de Bases de Datos Departamento de Lenguajes Grupo de Ingeniería del Software Septiembre 2004 Definición Una base de datos

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

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

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

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

El modelo relacional y el álgebra relacional

El modelo relacional y el álgebra relacional El modelo relacional y el álgebra relacional Introducción Esta unidad didáctica está dedicada al estudio del modelo de datos relacional y del álgebra relacional. El concepto de modelo de datos se ha presentado

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

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

1. Producto escalar, métrica y norma asociada

1. Producto escalar, métrica y norma asociada 1. asociada Consideramos el espacio vectorial R n sobre el cuerpo R; escribimos los vectores o puntos de R n, indistintamente, como x = (x 1,..., x n ) = n x i e i i=1 donde e i son los vectores de la

Más detalles

UNIDAD 3. MODELO RELACIONAL

UNIDAD 3. MODELO RELACIONAL UNIDAD 3. MODELO RELACIONAL 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 el modelo relacional esté basado

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

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

Modelo Relacional: Conceptos

Modelo Relacional: Conceptos Relacional: Conceptos M. -Tastets Universidad de Concepción,Chile www.inf.udec.cl\ andrea andrea@udec.cl II Semestre - 2007 de la Unidad Introducir los conceptos básicos asociados con los elementos estructurales

Más detalles

BASES DE DATOS. TEMA 6. El Álgebra Relacional

BASES DE DATOS. TEMA 6. El Álgebra Relacional BASES DE DATOS. TEMA 6. El Álgebra Relacional 6.1. Introducción. El proceso de consulta una base de datos relacional: Toda consulta a una Base de datos relacional genera como resultado una relación. Existen

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

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

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d Relaciones binarias En esta sección estudiaremos formalmente las parejas de objetos que comparten algunas características o propiedades en común. La estructura matemática para agrupar estas parejas en

Más detalles

Temario Curso Bases de Datos

Temario Curso Bases de Datos Temario Curso Bases de Datos TEMA 1. INTRODUCCION A LAS BASES DE DATOS 1. Cualidades De La Información 2. Sistemas de Información 2.1. Componentes de un Sistema de Información 3. Niveles de Gestión de

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

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

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

Introducción al álgebra relacional. Con ejemplos en SQL

Introducción al álgebra relacional. Con ejemplos en SQL OpenStax-CNX module: m18351 1 Introducción al álgebra relacional. Con ejemplos en SQL Miguel-Angel Sicilia This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License

Más detalles

3. Modelo relacional: Estructura e integridad.

3. Modelo relacional: Estructura e integridad. Modelo relacional: Estructura e integridad 47 3. Modelo relacional: Estructura e integridad. 3.1. Introducción. El modelo de datos relacional es posterior a los modelos jerárquicos y de red. Nació como

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

Técnicas de valor presente para calcular el valor en uso

Técnicas de valor presente para calcular el valor en uso Normas Internacionales de Información Financiera NIC - NIIF Guía NIC - NIIF NIC 36 Fundación NIC-NIIF Técnicas de valor presente para calcular el valor en uso Este documento proporciona una guía para utilizar

Más detalles

CONSULTA Y MANIPULACIÓN DE LOS DATOS

CONSULTA Y MANIPULACIÓN DE LOS DATOS CONSULTA Y MANIPULACIÓN DE LOS DATOS 5.1.- Álgebra Relacional El modelo relacional es la forma de representar los datos y manipular dicha representación considerando la integridad de los datos. Estos,

Más detalles

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional Tema 7: Modelo Relacional 1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional Dominios, Atributos, Relaciones Representación del esquema relacional Características de

Más detalles

TEMA 4. Diseño Lógico de bases de datos relacionales.

TEMA 4. Diseño Lógico de bases de datos relacionales. TEMA 4. Diseño Lógico de bases de datos relacionales. 1. El modelo relacional La teoría formal que constituye los cimientos de los sistemas relacionales se conoce como modelo de datos relacional. Cuando

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

Módulo 9 Sistema matemático y operaciones binarias

Módulo 9 Sistema matemático y operaciones binarias Módulo 9 Sistema matemático y operaciones binarias OBJETIVO: Identificar los conjuntos de números naturales, enteros, racionales e irracionales; resolver una operación binaria, representar un número racional

Más detalles

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar

Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica Base de Datos I Maestra: Martha E. Evangelista Salazar Introducción a los conceptos de Bases de Datos a).- Definiciones básicas sobre bases

Más detalles

Álgebra Relacional. Unidad 5

Álgebra Relacional. Unidad 5 Álgebra Relacional Unidad 5 Definición Álgebra es un sistema matemático que está formado por: Operandos. Valores o variables con los cuáles se pueden construir nuevos valores o variables Operadores. Símbolos

Más detalles

CAPÍTULO IV CONTABILIZACIÓN DE FUTUROS A TRAVÉS DE LAS CUENTAS DE ORDEN. Los principios y reglamentos presentados en el capítulo anterior reconocen la

CAPÍTULO IV CONTABILIZACIÓN DE FUTUROS A TRAVÉS DE LAS CUENTAS DE ORDEN. Los principios y reglamentos presentados en el capítulo anterior reconocen la CAPÍTULO IV CONTABILIZACIÓN DE FUTUROS A TRAVÉS DE LAS CUENTAS DE ORDEN Los principios y reglamentos presentados en el capítulo anterior reconocen la importancia de reflejar en los estados financieros

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 11. Cálculo Relacional FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 11. Cálculo Relacional 1.- Introducción. 2.- Cálculo Relacional Orientado a Tuplas. 3.- Cálculo Relacional vs Álgebra Relacional: Algoritmo

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

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

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

Sistemas de Gestión de Calidad. Control documental

Sistemas de Gestión de Calidad. Control documental 4 Sistemas de Gestión de Calidad. Control documental ÍNDICE: 4.1 Requisitos Generales 4.2 Requisitos de la documentación 4.2.1 Generalidades 4.2.2 Manual de la Calidad 4.2.3 Control de los documentos 4.2.4

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

Introducción. Componentes de un SI. Sistema de Información:

Introducción. Componentes de un SI. Sistema de Información: Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para

Más detalles

Base de datos relacional

Base de datos relacional Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar

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

Ingeniería en Informática

Ingeniería en Informática Departamento de Informática Universidad Carlos III de Madrid Ingeniería en Informática Aprendizaje Automático Junio 2007 Normas generales del examen El tiempo para realizar el examen es de 3 horas No se

Más detalles

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo.

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo. 16/05/2012 1 Todo modelo de datos debe definir un lenguaje de definición de datos para crear las estructuras donde se almacenará la información y un lenguaje de manipulación de datos con el que acceder

Más detalles

Cuando el pedido se entrega al cliente, se genera la factura correspondiente.

Cuando el pedido se entrega al cliente, se genera la factura correspondiente. (-(5&,&,26&$3Ë78/2 Una empresa compra a una serie de es diferentes piezas que posteriormente venderá a sus clientes, debiendo llevar a cabo el control de almacén (nº de piezas existentes de cada una de

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

Modelos y Bases de Datos

Modelos y Bases de Datos Modelos y Bases de Datos MODELOS Y BASES DE DATOS 1 Sesión No. 10 Nombre: Álgebra Relacional Contextualización En qué consiste el álgebra relacional? Se ha planteado hasta el momento cada uno de los procesos

Más detalles

Por qué interesa suscribir un plan de pensiones?

Por qué interesa suscribir un plan de pensiones? 1 Por qué interesa suscribir un plan de pensiones? 1.1. Cómo se impulsó su creación? 1.2. Será suficiente la pensión de la Seguridad Social? 1.3. Se obtienen ventajas fiscales y de ahorro a largo plazo?

Más detalles

ESQUEMA DE BASE DE DATOS ATROPELLOS

ESQUEMA DE BASE DE DATOS ATROPELLOS ESQUEMA DE BASE DE DATOS ATROPELLOS PEATONES (dni: domdni, nombre: domnombre, edad: domedad) CP(dni) COCHES (matrícula: dommat, marca: domcad, modelo: domcad) CP(matrícula) ATROPELLADOS (dni: domdni, matrícula:

Más detalles

Modelo Entidad-Relación

Modelo Entidad-Relación Modelo Entidad-Relación El modelo de datos de entidad-relación (ER) se basa en una percepción de un mundo real que consiste en un conjunto de objetos básicos llamados entidades y de relaciones entre estos

Más detalles

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido

Tema 3. Medidas de tendencia central. 3.1. Introducción. Contenido Tema 3 Medidas de tendencia central Contenido 31 Introducción 1 32 Media aritmética 2 33 Media ponderada 3 34 Media geométrica 4 35 Mediana 5 351 Cálculo de la mediana para datos agrupados 5 36 Moda 6

Más detalles

DOMINIO Y RANGO página 89. Cuando se grafica una función existen las siguientes posibilidades:

DOMINIO Y RANGO página 89. Cuando se grafica una función existen las siguientes posibilidades: DOMINIO Y RANGO página 89 3. CONCEPTOS Y DEFINICIONES Cuando se grafica una función eisten las siguientes posibilidades: a) Que la gráfica ocupe todo el plano horizontalmente (sobre el eje de las ). b)

Más detalles

Condiciones de servicio de Portal Expreso RSA

Condiciones de servicio de Portal Expreso RSA Condiciones de servicio de Portal Expreso RSA Le damos la bienvenida a Portal Expreso RSA 1. Su relación con Portal Expreso RSA 1.1 El uso que el usuario haga de la información, software, servicios prestados

Más detalles