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.
Las bases de datos relacionales se normalizan para:
- Evitar la redundancia de los datos.
- Evitar problemas de actualización de los datos en las tablas.
- Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relación, aunque para que una tabla sea considerada como una relación tiene que cumplir con algunas restricciones:
- Cada tabla debe tener su nombre único.
- No puede haber dos filas iguales. No se permiten los duplicados.
- Todos los datos en una columna deben ser del mismo tipo.
Primera forma normal
Para que una relación
esté en primera forma normal (1 FN), debe ser solamente una relación propia,
una matríz m por n, donde:
• Ninguna celda de la matriz está vacía;
• El valor n cualquier columna está definido por el dominio para dicho atributo.
• Cada tupla tiene una
clave que la identifica en forma unívoca, pero dicha clave no significa orden.
La aplicación determina
la relación
Para que una relación
sea normalizada en pasos adicionales, debe encontrarse en la primera forma
normal. Colocar los datos en la primera forma normal está a cargo del diseñador de la aplicación.
Estos datos se encuentran disponibles de alguna manera inicialmente. Si la
aplicación existe en forma manual,
o ha sido anteriormente computarizada pero no todavía como relación, el
diseñador reorganiza los datos de modo de conformar una matríz 1FN.
La segunda inicial más
importante es la dimensión de la relación ¿cuántos componentes existen en la
tupla o cuántas columnas en la tabla? ¿De qué manera se compara esto con el
número de campos en el documento fuente?.
En la figura se puede
observar un documento como muestra,
una factura típica. Parte de la información es fija y otra variable. La figura nos muestra un formulario impreso
dentro de l cual se ha agregado información. La impresión puede dividirse en
dos categorías.
• Información
descriptiva para el usuario
• Nombres de atributos.
La información impresa
es necesariamente fija. Podemos observar el nombre de la compañía en la figura,
así como otras particularidades (tales como el número de teléfono que no figura aquí). Otros nombres impresos corresponden a los atributos
cuyos valores se escriben en el momento en que el formulario es llenado. Estos nombres
de atributos son también los nombres de campos para almacenar los datos en el sistema.
Los que se escribe son los valores de atributos.
La información
convertida queda formada en tuplas. La próxima pregunta es cuantas tuplas
representarán a la formación en esta forma. Debe notarse que el número de
partes ordenadas varía de una factura o pedido a otro.
Wetco factura no. 91529
23 river road fecha factura 3/19/77
saltsea texas
orden fecha
de cliente
vendedor de la orden via orden wetco
M0007 2-14 3/12/17 ups 1922447
Cliente no. 31-0285-fl
Venta a flores associates expedido a
108 8 avenue el mismo
brooklyn, n.y. 11215
Pen-
Orde-despa-dien-
Nada chada te
2 2 3.50 018719 camisa 7.00
2 2 .35 020428 guia .70
1 1 .70 020808 rodillo motor .70
1 0 .25 020811 rodillo libre 0.00
1 1 6.00 020819 humidrum 8.00
Transporte Y Seguro .96
17.38
Dado que una tupla debe tener un número fijo de
componentes, necesitamos una tupla en primera forma normal para cada parte de
cada pedido. Sin embargo, la información que se encuentra en la parte superior
del formulario, y que se llena a máquina, es la misma para todas las partes
ordenadas más abajo. Por lo tanto cada tupla consiste en una parte de datos que
son variables y datos del pedido que se duplican
para cada parte ordenada.
Grafo de Dependencia
Una vez que los datos han sido puestos en primera
forma normal, resulta conveniente descomponer la relación en un número de
relaciones más pequeñas, cada una en forma normal superior, de modo de
optimizar el almacenamiento y usar su funciones.
Para esto resulta necesario reconocer las dependencias existentes. Un grafo
exhibe los distintos tipos de dependencias que existen, y enfatizan que hemos
investigado completamente cada dependencia.
El grafo simple no está diseñado para mostrar
dependencias. Para hacer utilizable a este grafo, se agregan colores pueden expresarse en blanco y negro
mediante distintos tipos de líneas. Discutiremos estos tipos de líneas en
términos de la dependencia que cada uno representa. En las figuras que siguen
las formas gráficas aparecen a la izquierda y se utilizan
para constituir un grafo completo. A la derecha se puede observar una forma
simbólica para describir dependencias únicas.
Dependencia única
En la figura vemos un arco que conecta dos
vértices A y B. A es la cola y B es la cabeza de la "flecha". Esto
significa que B depende de A. Es decir dado un valor de A podemos predecir de
A. Es decir, dado un valor de A podemos predecir cuál será el valor de B.
Dependencia total
La dependencia total se define como una
dependencia bilateral o simétrica. Es decir, si C depende de D, en consecuencia
D será dependiente en forma similar de C. Esto se expresa en la figura mediante
una arista (sin una flecha) que une C y D. Para enfatizar la dependencia total,
se usa una línea doble o una línea más gruesa. Esto representa una medida de seguridad para verificar que el usuario no
dibuje un arco e inadvertidamente omita la flecha. Simbólicamente se utiliza
una doble flecha.
Dependencia completa
La variable G depende en forma completa de otras
dos variables E y F, lo cual puede ilustrarse como se ve a la izquierda de la
figura. Pero así no es representada adecuadamente la dependencia completa, ya
que el valor de G no depende de E o F, independiente, sino que depende de ambos
valores. Por lo tanto en el centro de la figura A, vemos una forma mejor; la
arista que une E y F no intenta demostrar una dependencia entre E y F, por lo
tanto se dibuja en líneas de trazos; a partir del centro de esta línea de
trazos, se dibuja un arco dirigido hacia G para indica que G depende de ambas
variables E y F.
Dependencia transitiva
Supongamos que dos variables, K y L, dependen de
J. Si puede verificarse que L depende en forma primaria de K, existiría una
dependencia transitiva. Mostramos a la izquierda de la figura B que L. depende
de J o de K. Más apropiado s el grafo del centro de la figura B, donde podemos
ver que L está definida por K la cual, a su vez, está determinada por los
valores de J.
Simbólicamente indicamos una dependencia
transitiva de L respecto de J mediante una flecha de trazos desde J a L, como
puede verse a la derecha de la figura B.
Ejemplo
En la figura B se presenta un grafo de dependencia
hipotético. En el mismo se dibujan las relaciones de dependencia entre
atributos para una aplicación de remuneración. EMPNO y DEPTNO están subrayadas
en la figura para expresar que ambas son partes de una clave compuesta para la
relación. Una línea gruesa conecta EMPNO a EMPNOM para indicar que si nombre de
empleado y existe una dependencia total.
Varios atributos dependen directamente del número
de empleados:
• TITL es el título de la tarea del empleado
• PAYLVL es un carácter que indica el nivel de sueldo del
empleado.
• HORAS representa el número de horas que el
empleado ha trabajado la presente semana.
• PAYRT está apuntado a PAYLVL indicando que el
régimen de pago es transitivamente dependiente del nivel de pago.
La línea de trazos que une PAYRT y HORAS indica
que ambas participan en una dependencia completa por la cual el receptor es
PAYAMT, el valor pagado para esta semana.
A la derecha de la figura, encontramos los
atributos que dependen del número de departamento. Obsérvense la dependencia
total entre número y nombre del jefe del mismo (MGRO y MGRNM).
Hay solamente un atributo que es completamente
dependiente de ambas partes de la clave compuesta, es decir, el número de proyecto,
PROJNO.
Segunda Forma Normal
Una relación está en segunda forma normal (2FN)
solamente si todos los atributos son dependientes en forma completa de la
clave.
Descripcion De La Segunda Forma Normal (2 Fn)
Su nombre ya nos indica el hecho de que la segunda
forma normal es por lo general el próximo paso de normalización y descomposición. Para ser accesible a
la normalización, y poder ser puesta en segunda forma normal, la
relación debe poseer las siguientes propiedades:
• Debe estar en primera forma normal
• Debe tener una clave compuesta.
La consecuencia inmediata de los requerimientos
expresados más arriba es que cualquier relación en primera forma normal que
tiene una clave simple, está automáticamente en segunda forma normal.
Comencemos con un ejemplo en forma de tabla de una relación consistente en 17
atributos, que se presenta en la figura. La misma se encuentra en primera forma
normal y tiene una clave compuesta que consiste en dos atributos P y Q. Estos
están subrayados en la figura para mostrar que sirven como clave. La tupla de
relación puede también escribirse linealmente en forma simbólicamente:
R = (A,B,C,D,E,F,G,H,I,L,M,N,O,P,Q)
El próximo paso es crear un grafo de dependencia,
presentando aquí como figura. Debe notarse que este grafo se crea examinado con
conocimientos y atributos para determinar como participan y relacionan entre
ellos.
No resulta suficiente analizar la matríz de
relación, la cual puede hacernos creer que existe una dependencia debido a que
la muestra de la cual se ha extraído dicha relación es pequeña. Si somos
inducidos a error por los datos existentes y construimos una dependencia donde
esta no existe, se planteará un problema. Cuando lleguen nuevos datos que
contradigan la dependencia, deberá dejarse de lado el esquema completo.
Supongamos en consecuencia que el grafo que se
puede observar en la figura ha sido derivado en forma funcional y que expresa
correctamente las dependencias. Resulta claro a partir de este grafo que los
atributos que parten de P son dependientes solamente de este. De un modo
similar los que parten de Q dependen solamente de este último. Solamente
aquellos que parten de la línea de trazos que conecta a P y Q tienen
dependencia completa de ambos. Esta es la guía para la descomposición.
Descomposición
La figura contiene 3 sub-árboles,
la base de nuestra descomposición. Definimos una subtupla general en base a
cada sub-árbol y en consecuencia:
P' = (P,A,B,C,E,H,K)
Q' = (Q,F,G,J,N)
PQ = (P,Q,D,I,L,M,O)
Aquí la raíz de los sub-árboles de la izquierda y
la derecha. P y Q, se convierte en la clave de sus respectivas subtuplas;
ambos. P y Q forman la clave compuesta para la subtupla PQ.
Proyección
El próximo paso es proyectar la relación R sobre
cada una de estas subtuplas para formar tres nuevas relaciones, y en
consecuencia.
P' = proyectar R(P')
Q' = proyectar R(Q')
PQ = proyectar R(PQ)
Las relaciones así formadas nos dan tres nuevas
sub-relaciones. Una subrelación es la relación que deriva de una relación
mayor. Las subrelaciones ilustradas en la figura están correlacionadas por
medio de los componentes de sus claves. La clave compuesta P y Q de la relación
original R. es también la clave de la sub-relación PQ. P y Q tienen a P y Q
respectivamente como claves. La línea de trazos en la figura indica que Q está
correlacionada con PQ por medio de la componente Q y P está correlacionada con
PQ por medio de P.
Para restablecer la relación original R debemos
juntar estas tres subrelaciones en algún orden, indicado simbólicamente como:
R = juntar P [juntar PQ, (Q)] (P) = juntar
Q[juntar PQ P(P)] (Q).
Grafos
La nueva sub-relación que se ve en la figura se
presenta en forma de grafo en la figura siguiente. Existe una considerable
analogía entres estas figuras y la figura anterior. Lo importante es la
diferencia. En PQ existe una línea de trazos que conecta los componentes de la
clave compuesta P y Q en el centro de la figura. Los arcos parten del centro de
esta línea de trazos hacia todos los componentes de P y Q, los cuales son
dependientes en forma completa de ambos, es decir de P y Q. Una línea de puntos
conecta P en la relación PQ a P de la relación P. Esto representa la
correspondencia entre ambas veces P. Una línea de puntos conecta de un modo
similar Q en PQ a Q en Q para indicar una correspondencia similar.
Efectos
El efecto de esta descomposición puede no resultar
inmediatamente claro. Debemos insistir en que ninguna relación correcta debe
contener tuplas duplicadas. La relación original R contiene muchas subtuplas
duplicadas P' y Q'. Las mismas han sido eliminadas durante la descomposición.
Esto facilita en forma extraordinaria la actualización y otras importantes operaciones que afectan a estas relaciones, las
cuales serán aclaradas en los ejemplos que siguen.
Ejemplo de inventario
Vamos a utilizar ahora un ejemplo práctico para
demostrar la normalización. En la figura se observa una parte de la matríz de
relación PW.
Pueden verse los nombres de los atributos
simbólicos y sus significados, pero no sus valores. Las columnas no aparecen en
ningún orden en particular. Debe observarse la clave compuesta que distingue
cada tupla, que abarca el número de pieza y el número de depósito PNO y WNO.
Arbol de Dependencia
El medio para descomponer la relación es el árbol
de dependencia que se ve en la figura. Este árbol ha sido construido solamente
teniendo en cuenta la dependencia completa, y no muestra las dependencias total
o transitiva, que se describe más adelante, si es que las mismas existen.
Como podíamos esperar, aparecen tres sub-árboles.
El sub-árbol de la izquierda, con raíz PNO, contiene los atributos que se
aplican solamente a la pieza o parte. El sub-árbol de la derecha con raíz WNO
describe cada depósito. EDl sub-árbol del centro corresponde a las partes y al
depósito, y describe la cantidad de partes disponibles en el depósito, QOH, y
el número de cajón o estante, BIN (o algún otro parámetro de ubicación), donde
dichas partes pueden ser halladas.
El próximo paso es definir tres tuplas generales para
cada sub-árbol,
P = (PNO, DESC, PR, UNIT)
W = (WNO, WAD, FUE)
P/W = (PNO, WNO, BIN, QOH)
La descomposición consiste en proyectar la
relación PW sobre cada una de estas tuplas para obtener tres nuevas
sub-relaciones:
P = proyectar PW(P)
W = proyectar PW(W)
P/W = proyectar PW(P/W)
La descomposición en la figura muestra las tres
relaciones como matrices;
la línea de trazos indica como se vinculan las relaciones.
Efecto
Discutiremos ahora algunas de las ventajas
obtenidas mediante la descomposición. Si estas relaciones se utilizan para el control de inventario.
nuestra preocupación será cuantas piezas de cada tipo están disponibles en un
depósito en particular. Cuando se retiran piezas o se reciben nuevos envíos la
cantidad disponible, QOH será la variable de cambio.
La actualización consiste en poner al día sub-relación P/W la cual ahora
contiene solamente malos componentes en lugar de los nuevos P/W.
Existe una tupla P en la sub-relación de pieza o
parte, P, para cada parte y una tupla. W, en la sub relación W, para cada
depósito y estos últimos probablemente no serán muchos. Consideremos la
facilidad de efectuar cambios en un depósito en particular. Si un atributo de
uno de los depósitos varía entraremos en W para efectuar el cambio solamente en
una tupla. En la primera forma normal para PW teníamos que encontrar todas las
tuplas en las cuales el valor de WNO esta el particularmente deseado, y
efectuar el mismo cambio en cada una de ellas. Si dicho depósito almacenaba 100
partes, como consecuencia debía variar 100 tuplas de PW. El procedimiento de actualización se aplica también a
las descripciones de partes. Si el precio de alguna parte o pieza cambia, este
cambio es independiente del depósito en el cual se almacena dicha parte.
Solamente se efectúa un cambio en P a diferencia de los muchos que hubieran sido requeridos para PW.
Tercera forma normal
Tercera forma normal
Una relación se encuentra en tercera forma normal
(EFN) si no existen transitividades entre sus atributos y si ya se encuentra en
2 FN.
Descripción
Una relación R a poner en tercera forma normal
debe estar en la segunda forma normal. Es muy común que R sea una sub-relación;
la relación original estaba en primera forma normal (para ponerla en segunda
forma normal fue descompuesta en varias sub-relaciones). Estas son ahora
candidatas a una descomposición adicional.
Recordamos que las propiedades de la segunda forma
normal (2Fn) son:
• Tenemos una matríz m x n con un valor
determinado para cada componente de cada tupla.
• Cada valor es obtenido a partir de un dominio
propiamente definimos
• Cada valor contiene una clave, ya sea simple o
compuesta
• Cada componente no clave es dependiente en forma
completa de su clave.
En consecuencia es evidente que tenemos, o bien
una clave simple, o una clave compuesta de la cual todos los componentes no
clave son dependientes en forma completa.
El objeto de esta fase es determinar todas las dependencias
transitivas; la descomposición producirá a continuación sub-relaciones para las
cuales no existirán dependencias transitivas -la definición de la tercera forma
normal (EFN)-.
Una dependencia transitiva abarca como mínimo tres
componentes. Si los componentes fueran más, la dependencia múltiple puede
derivarse en varias dependencias atransitivas de tres componentes solamente
dada una. Por lo tanto dirigiremos nuestra atención a una dependencia transitiva simple de
tres componentes. Tal dependencia puede expresarse como:
Q ---> A ----> B
En la cual se dice que B depende de A y que A
depende de Q. La transitividad existe debido a que el valor de B depende en la
última instancia del valor de Q.
La dependencia transitiva es degenerada si
cualquiera de las dependencias anteriores es total. Esto es, podemos prever que
la relación de Q a A es muchos-unos, donde varios valor único de A. Dado un
valor tal Q el valor de A queda determinado. La inversa no se aplica y en
consecuencia no existe una dependencia total: dado un valor de A el valor
correspondiente de Q no queda determinado a menos de que se trate de una
dependencia total.
El ahorro que surge de colocar la relación en
tercera forma normal aparece a raíz de la granularidad del dominio involucrado.
Se puede prever que:
num dominio (Q)> num dominio (A) > num
dominio (B)
Determinación de al dependencia transitiva
Si el grafo utilizado para llevar la relación a la
segunda forma normal es completo en termino de las transitividades existentes,
no resulta necesario un grafo adicional. El grafo para convertir a la segunda
forma normal requiere solamente que todas las dependencias completas y
parciales sean conocidas. Supongamos que no hemos establecido todas las
dependencias transitivas. Se presenta una situación simple en la figura
anterior donde A, B y C son dependientes de Q. SI suponemos que existe una
dependencia entre A, B y C son dependientes de Q. Si suponemos que existe una
dependencia entre a y B debemos confirmarlo en forma funcional.
Una dependencia total entre A y B en el grafo de
la figura puede representarse como se ve en la figura el arco desde A a B no
muestra una dependencia de B respecto de A inversamente el arco a partir de B
hacia A muestra una dependencia de A respecto de B; los arcos a partir de Q a A
y a B nos muestra la dependencia de cada una de éstas respecto de Q. Esto puede
observarse nuevamente en la figura, donde una doble arista entre A y B indica
la bi-direccionalidad de esta dependencia. El hecho de que Q apunte a esta
arista nos muestra que cada una de las variables A y B es claramente dependiente
de aquella.
Como ejemplo sea Q el número PO, A el número de
parte o pieza y B el nombre de parte, A y B son totalmente dependientes y cada
uno dependen de Q.
Transitividad simple
Para la dependencia transitiva unilateral, la
variable independiente apunta a la variable dependiente, tal cual se presenta
en el figura donde B depende de A. El arco entre B y Q ha sido eliminando; la
dependencia implícita de B respecto de Q resulta obvia.
Si se presenta la dependencia inversa, debe
gratificarse como se ve en la figura.
Descomposición
Dada una sub-relación con una o más dependencias
transitivas, la descomposición consiste en partir la relación en una o más de
una sub-relación, donde la variable intermedia aparezca como variable
dependiente en una y como variable independiente en la otra.
Caso simple Tenemos:
Q ---> A ----> B
Q ---> C
Dado que ambas, A y C dependen directamente de Q
deben conservarse en una sub-relación Q, con clave Q.:
Q ---> A; Q ---> C
Debe separarse la relación directa remanente, y
colocarla en su propia sub-relación A' con la A:
A ---> B
Los grados de Q' y A'. Aquí la componente A
relaciona Q' con A, a es la clave simple de A'. Si bien A no es la clave de Q'
es le medio de relacionar un valor de Q en Q' con un valor de B en A' y se
llama por lo tanto la clave externa de Q' . Para crear Q' y A' debemos utilizar
las subtuplas generales Q' y A' denifidas en consecuencia:
Q' = (Q,A,C)
A' = (A,B) donde el subrayado indica una clave.
Este deben proyectarse sobre Q para obtener las
sub-relaciones:
Q'= proyectar Q(Q')
A'= proyectar Q(A')
Caso Compuesto
Las dependientes transitivas múltiples han sido
investigadas y exhibidas. Tenemos en consecuencia.
Q --> C
Q --> A --> B1
Q --> A --> B2
Q --> A --> B3
La descomposición separa nuevamente todas estas variables
directamente dependiente de la clase original en una subtupla. Q'' = (Q, A,
C)
Las variables restantes son todas dependientes
directa o totalmente de A o C y se reorganizan de un modo similar. A'' = (A,
B1, B2, B3); C'' = (C, D)
Deben construirse tres sub-relaciones por
proyección:
Q'' = proyectar Q(Q'')
A'' = proyectar Q(A'')
C'' = proyectar Q(C'')
Aquí Q'', A'' y C'' aparecen como sub-árboles. Las
mismas se relacionan por medio de la clave externa de Q'' es decir A y C; esto
se muestra mediante la línea de puntos entre A y A y entre C y C. Nos podemos
mover directamente entre las dos figuras sin la intervención de pasos
simbólicos, utilizando solamente manipulaciones gráficas.
Descomposición Gráfica
Hemos discutido el enfoque simbólico. Dado un
grafo 2FN. Debemos seleccionar en primer término los nodos apuntados por la
raíz que no sean hojas. Los mismos se convierten en raíces de sus propios
sub-árboles, A'' y C''. Estos sub-árboles son eliminados de Q dejando en Q''
solamente los nodos A y C, que son las raíces de A;; y C''.
Ejemplo de orden de compra
Examinaremos solamente una pequeña porción de la
relación orden de compra que ha sido convertida en un grafo de dependencia.
Para esta porción de la relación compra PP, tenemos:
• Las partes se compran utilizando el número de
parte, PNO;
• Un vendedor, VNDR está asociado a cada parte;
• Cada vendedor tiene una clasificación de forma
de pago, PAYCLS.
Por lo tanto PAYCLS representa si el vendedor debe
cobrar dentro de los 10 días, 30 días, 60 días, etc. La acción para convertir la relación.
Tenemos aquí una relación transitiva que puede ser
representada en consecuencia:
PNO ---> PAYCLS
Sabemos que la variable intermedia, el vendedor
VNDR, es el que determina el tipo de pago de modo tal que
PNO ---> VNDR --> PAYCLS
para poner esta relación en la tercera forma
normal, la misma se descompone en dos sub-relaciones. Las dos sub-relaciones PV
y VP, se forman por proyección a partir de la relación original PP de modo tal
que:
PV = proyectar PP (PNO, VNDR); PV = proyectar PP
(VNDR, PAYCLS).
La relación PV relaciona partes con vendedores.
La identificación del vendedor, VNDR es la clave
externa par PV. La misma se utiliza para entrar en la relación VP, en la cual
es la clave primaria.
Debe notarse que, para el mantenimiento,
si cambia la clase de pago solamente cambiara una entrada o tupla en VP y
ninguna en PV. Para el caso de PP hubiera cambiado muchas tuplas.
Ejemplo de inventario
Presentamos ahora una porción de un ejemplo de
inventario, al cual corresponde el grafo parcial. Tenemos en este caso:
• PNO es un número de parte
• PNM es el nombre de parte y tiene dependencia
total con el número de parte
• PREC es el costo de UNITS multiplicado por el número de
partes
• PCL es la clase de parte, la cual da el tipo de
parte en términos de su peso y de su forma.
• WHN es el número de depósito donde está
almacenada la parte.
• WHLOC Es la ubicación del deposito
• FUE es la categoría de seguro de incendio del
depósivto.
Resulta claro a partir del grafo que el número de
parte determina la clasificación de la parte, la cual a su vez determina parcialmente
el deposito donde está almacenada dicha parte. Usaremos esta dependencia
transitiva, que está circundada con línea de trazos gruesos, para descomponer
la relación en su tercera forma normal: PNO ---> WHN; PNO ---> PCL
---> WHN
La variable intermedia, clase de parte, PCL, es el
medio de que disponemos para descomponer el grafo. Se deja como ejercicio
hallar las proyecciones y la relaciones resultantes.
Ejemplo bancario
Consideremos parte de un ejemplo de banco donde cada depositante tiene un número
de cuenta que lo identifica. El depositante recibe una línea de crédito.
Puede extraer dinero hasta dicho valor. La parte no
utilizada de crédito puede ser retirada cuando lo desee. Vemos que la línea de
crédito LNCR es funcionalmente dependiente del número de cuenta CUET; el valor
ya extraído DEBIT es también dependiente del número de cuenta. El valor de
crédito disponible en este momento, DISP, es dependiente en forma completa de
ambos, LNCR y DEBIT.
Parecería que lo lógico es descomponer el grafo y
volver a presentarlo. En base a esto, P tiene como clave el número de cuenta
CUENT. Debemos entrar en P para obtener LNCR y DEBIT. Estas son claves externas
para P; las mismas forman la clave compuesta para entrar en Q y hallar el valor
de la variable completamente dependiente DISP.
Esto funcionaría, pero hay una forma más simple de
resolver el problema. El valor de crédito disponible en la actualidad es
simplemente la diferencia entre la línea de crédito y el debido corriente. Todo
lo que tenemos que hacer es ejecutar una sustracción. La relación original no
necesita contener DISP. dado que éste se calcula simplemente durante el
procesamiento. Por lo tanto podemos sencillamente omitir Q.
Transitivas múltiples.
Establecemos de entrada la condición simple de que
Z sea dependiente en forma transitiva de Q. Si existe más de una variable
intermedia de dependencia, la transitiva no será completa hasta que se
especifiquen todas dichas variables. Es decir, si bien empezamos con la
condición de transitividad, Q ---> Z,
la condición completa podría ser, Q ---> X
---> Y ---> Z
Ninguna condición intermedia Q ---> X ---> Z
--->; Q ---> Y ----> Z
sería suficiente para descomponer la original de
la figura.
No hay comentarios:
Publicar un comentario