Escolar Documentos
Profissional Documentos
Cultura Documentos
Problemas:
- formalizacin
- definicin de lenguajes de consulta
- estudio del concepto de independencia del dominio
- actualizacin de vistas
- comprobacin y restauracin de la integridad.
- optimizacin de consultas
- diseo de bases de datos
Departamento de Sistemas Informticos y Computacin / Universidad Politcnica de Valencia
Base de datos
relacional
Base de datos
relacional
Conocimiento explcito
Reglas
deductivas
Conocimiento implcito
+
Reglas
deductivas
Base de datos
deductiva
Hechos
(conocimiento explcito)
Sistema
de inferencia
Informacin
derivada
Reglas
Sistema de Gestin
de Bases de Datos
Relacionales
Hechos
Reglas
Usuario
Sistema de Inferencia
Base de datos
deductiva
Sistema de gestin
de bases de
datos deductivas
BASE DE DATOS
Ri
Relaciones bsicas:
Relaciones bsicas:
(1 i m) (m relaciones bsicas)
(1 i m)
Relaciones derivadas:
Si (Ai1: Di1 , Ai2: Di2 , ..., Aini: Dini)
Ai1
Ai2
......
(m relaciones bsicas)
Relaciones derivadas:
(1 i s) (s relaciones derivadas)
Restricciones de Integridad
(1 i s)
(s relaciones derivadas)
(1 j Ki)
Aini
(1 i k) (k restricciones de integridad)
Relaciones derivadas:
Restricciones de integridad:
"x "y ( COMPONENTE (x,y) COMPONENTE (y,x) )
Esquema
Departamento de Sistemas Informticos y Computacin / Universidad Politcnica de Valencia
BDD
:
PIEZA
PROV
codpieza
desc
peso
codprov
nombre
zona
pz1
tornillo
10
pv1
Juan.....
pz3
tuerca
11
pv5
Carlos ....
pz8
arandela
pv3
Luis ......
PRECIOS
COMP
codprov
codpieza
precio
pieza1
pieza2
pv1
pz3
10
pz1
pz3
pv1
pz8
20
pz3
pz8
pv3
pz8
30
pv5
pz1
50
Reglas deductivas:
1 precios3 (x, y,z)z(precios (x, y, z) prov (x, w, 3) )
2 componente (x, y)z (comp (x, z) componente (z, y) )
3 componente (x, y)comp (x, y)
4 precios_ext (x,n,y,d,p)z z ( prov (x, n,z)pieza (y, d,w)precios (x, y, p) )
Departamento de Sistemas Informticos y Computacin / Universidad Politcnica de Valencia
PRECIOS3
PRECIOS
PRECIOS_EXT
COMP
COMPONENTE
BASE DE DATOS
PIEZA
PROV
10
Mecanismo de vistas
del modelo relacional
Definicin de informacin
implcita
Relacin derivada
VISTA
11
Limitaciones en la definicin
de vistas recursivas
Actualizacin
Limitaciones en la
actualizacin de las vistas
SGBD relacionales
Ausencia de procedimientos
para la evaluacin de consultas
recursivas
12
PROBLEMAS:
Formalizacin
LGICA
13
Hechos
Reglas deductivas
14
15
qu es cierto en la BDD?
:
Semntica declarativa: conocimiento en la BDD
Semntica operacional: procedimiento para obtener el
conocimiento
16
17
componente (pz1,w)
2
Procedimiento
SLDNF
comp (pz1,w)
z/pz3
hecho
w/pz3
componente (pz3,w)
3
z/pz8
comp (pz3,w)
hecho
w = pz3
w = pz8
w/pz8
componente ( pz8,w)
2
comp (pz8,w)
18
19
Actualizacin sobre
relacin derivada
Actualizacin(es) sobre
relacin(es) bsicas(s)
20
PIEZA
codpieza
desc
peso
pz1
tornillo
10
pz3
tuerca
11
pz8
arandela
PRECIOS_EXT
PRECIOS
desc
precio
pv1
Juan...
pz3
tuerca
10
pv1
Juan...
pz8
arandela
20
pv1
pz3
10
pv1
pz8
20
pv3
Luis...
pz8
arandela
30
pv3
pz8
30
pv5
pz1
tornillo
50
pv5
pz1
50
Carlos..
.
PROV
codprov
nombre
zona
pv1
Juan.....
pv5
Carlos ....
pv3
Luis ......
21
22
SLDNF:
T1
x1 / Juan
pieza(pz3,tuerca,11)
x2 / pz3, x3 / tuerca
T2
precios (pv1,pz3,x4)
precios(pv1,pz3.10)
T3
x4/ 10
pieza(pz8,arandela,8)
T2
x2 / pz8, x3 / arandela
precios (pv1,pz8,x4)
precios(pv1,pz8,20)
T3
x4/ 20
23
3.1 Actualizacin
24
3.1 Actualizacin
Ejemplo 1
Actualizacin: U = p(1)
p(1)
w(1) v(1)
q(1) t(1)
25
3.1 Actualizacin
26
3.1 Actualizacin
27
3.1 Actualizacin
En el Ejemplo 1:
un mtodo que obtuviese la solucin en tiempo de
ejecucin estudiara el rbol de derivacin de la
actualizacin p(1) para encontrar una solucin.
un mtodo que trabajase en tiempo de definicin del
esquema estudiara el requisito genrico p(x) para
obtener soluciones que luego se instanciaran en tiempo
de ejecucin.
28
3.1 Actualizacin
2) Variables existencialmente cuantificadas.
Dada una regla deductiva de una base de datos normal, a las
variables que aparecen en el cuerpo de la regla y no aparecen en la
cabeza se les denomina variables existencialmente cuantificadas.
"x1 "xi "xm (A L1 Ln)
(xi no aparece en A)
"x1 "xi-1 "xi+1 "xm (A xi (L1 Ln))
29
3.1 Actualizacin
BDD: 1. p(x) q(x,y) t(x,y)
Ejemplo 2:
p(1)
1
t(1,2)
resolucin
q(1,y) t(1,y)
Actualizacin: U = p(1).
y (q(1,y) t(1,y))
{y/--}
Una solucin sencilla a este problema consiste en utilizar el valor nulo para la
variable de la que se desconoce el valor o bien un valor cualquiera proporcionado
por el usuario o extrado sin criterio de la base de datos. Aunque en ocasiones
esta solucin es la nica posible, en otras se puede elegir un valor tal que la
transaccin obtenida sea ms sencilla.
30
3.1 Actualizacin
BDD: 1. p(x) q(x,y) t(x,y)
Ejemplo 2:
.
t(1,2)
p(1)
1
Actualizacin: U = p(1).
resolucin
y (q(1,y) t(1,y))
q(1,y) t(1,y)
{y/ nulo}
T1 = { insertar(q(1,nulo)),
insertar(t(1,nulo))}
{y/ c}
{y/ 2}
T2 = { insertar(q(1, c)),
insertar(t(1, c))}
T3 = { insertar(q(1,2))}
31
3.1 Actualizacin
3) Recursividad.
La presencia de reglas recursivas en la base de datos puede
complicar la generacin de la transaccin, ya que el rbol de
derivacin puede ser infinito para un determinado requisito de
actualizacin, lo que supone la existencia de infinitas
transacciones posibles para satisfacerlo.
32
3.1 Actualizacin
Ejemplo 3:
Actualizacin: U = p(1,1).
33
3.1 Actualizacin
34
3.1 Actualizacin
BDD: 1. p(x) r(x,y) s(x,y) q(x,y)
Ejemplo 4:
2. s(1,2) q(1,2)
r(1,2)
p(1)
1
Actualizacin: U = p(1).
resolucin
T1 = { insertar( q(1,2)) }
q(1,2) BDE
s(1,2)
s(1,2)
T1 no es una solucin
correcta porque induce
la insercin de s(1,2)
que se haba asumido
falsa en la construccin
de la solucin.
resolucin
q(1,2)
q(1,2)
resolucin
q(1,2)
resolucin
35
3.1 Actualizacin
36
3.1 Actualizacin
Ejemplo 5:
p(1)
1
resolucin
Actualizacin: U = p(1).
q(x) r(x)
37
3.1 Actualizacin
Estudio de un mtodo de actualizacin:
1. Semntica asumida: la semntica declarativa determina el conjunto de
posibles soluciones al requisito de actualizacin y la semntica operacional
constituye la herramienta para computar esas soluciones.
2. Bases de datos: tipo de bases de datos y de restricciones de integridad
para los que est definido el mtodo.
3. Requisitos de actualizacin: forma sintctica de los requisitos de
actualizacin permitidos en el mtodo.
4. Transacciones generadas: tipo de soluciones obtenidas y si slo se
obtiene una o todas las soluciones posibles.
5. Descripcin del mtodo: estrategia seguida para generar las
transacciones.
6. Correccin y completitud del mtodo.
7. Resumen: cmo el mtodo resuelve los problemas antes mencionados.
38
39
T1
D1
Ti
Di
Tn
Dn
Evolucin de una BD
40
41
42
Si D es un estado ntegro
entonces
D satisface W si y slo si D satisface w t (prov (pv11,w,t) )
Departamento de Sistemas Informticos y Computacin / Universidad Politcnica de Valencia
43
44
COMP
COMPONENTE
pieza1
pieza2
pieza1
pieza2
pz1
pz3
pz1
pz3
pz3
pz8
pz3
pz8
pz1
pz8
Reglas deductivas:
COMPONENTE
COMP
pieza1
pieza2
pz1
pz3
pz3
pz8
pz8
pz1
inserciones
inducidas
pieza1
pieza2
pz1
pz3
pz3
pz8
pz1
pz8
pz8
pz1
pz8
pz3
pz8
pz8
pz1
pz1
pz3
pz1
pz3
pz3
45
D viola W
46
47
48
49
50
51
52
Comprobacin de la integridad:
FASE I: Fase de Generacin
Paso 1:
Clculo del conjuntos de literales que representan la diferencia
entre los estados consecutivos D y D'.
Paso 2:
Paso 3:
Paso 4:
53
D = {
t(y) s(y),
t(y) s(y),
54
Fase de Generacin
Paso 1: Clculo del conjuntos de literales que representan la diferencia
entre los estados consecutivos D y D'.
D = {
D={
55
Fase de Generacin
Paso 2: Identificacin de restricciones relevantes
D = {
D={
t(y) s(y),
q(a,b), q(b,a), s(c) }
T= {ins(s(b),
ins(t(y) q(y,z) t(z))}
Paso 2
56
Fase de Generacin
Paso 3: Instanciacin de las restricciones relevantes
Paso 4: Simplificacin de las instancias de las restricciones relevantes
D={
D = {
t(y) s(y),
q(a,b), q(b,a), s(c) }
W2 1= s(b) p(b)
W2 1= p(b)
W2 2= s(a) p(a)
W2 2= s(a)
W2 3= s(b) p(b)
W2 3= s(b)
Paso 3
Paso 4
57
Comprobacin de la integridad:
FASE I: Fase de Generacin
Paso 1:
Clculo del conjuntos de literales que representan la diferencia
entre los estados consecutivos D y D'.
Paso 2:
Paso 3:
Paso 4:
58
Comprobacin de la integridad:
Solucin
Paso 3:
Paso 4:
59
T= {ins(s(b),
ins(t(y) q(y,z) t(z))}
Borrados
{s(b), t(y)}
{t(b)}
Actualizaciones reales
instancias inducidas por T:
{p(x)}
60
D = {
t(y) s(y),
W2 1= s(b) p(b)
W2 = "x ( s(x) p(x) )
Paso 3
Paso 4
61
D = {
t(y) s(y),
q(a,b), q(b,a), , s(c) }
Si la extensin de q es
grande los borrados
sobre p inducidos por T
pueden ser muchos.
62
63
64
Actualizacin
Requisito de
actualizacin
D satisface W
Tr (D)
|= U
Comprobacin
RI
T = Tins Tdel
D = (DTins) \ Tdel)
Restauracin
de la
consistencia
NO
SI
Tr (D) |= U
D satisface W ("W RI)
65
66