Académique Documents
Professionnel Documents
Culture Documents
- actualización de vistas
- optimización de consultas
Base de datos
Base de datos relacional Conocimiento explícito
relacional
+
Reglas Reglas
deductivas Conocimiento implícito
deductivas
Base de datos
deductiva
Sistema de Gestión
de Bases de Datos
Hechos Relacionales
+
Reglas + Usuario
Sistema de Inferencia
Base de datos
deductiva Sistema de gestión
de bases de
datos deductivas
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 6
2. Bases de datos deductivas
ESQUEMA BASE DE DATOS
Ri
Relaciones básicas: Relaciones básicas:
Esquema
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 8
2. Bases de datos deductivas
PIEZA PROV
BDD codpieza desc peso codprov nombre zona
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:
BASE DE DATOS
PRECIOS3 PRECIOS_EXT COMPONENTE
Limitaciones en la definición
Definición de vistas
de vistas recursivas
Actualización Limitaciones en la
actualización de las vistas
PROBLEMAS:
Formalización
...
Hechos
Esquema de BDD:
:
Semántica declarativa: conocimiento en la BDD
Semántica operacional: procedimiento para obtener el
conocimiento
z’/pz8 hecho
w/pz8
hecho
← componente ( pz8,w)
2 3
pz1 tornillo 10
pz3 tuerca 11
pz8 arandela 8
PRECIOS_EXT
PRECIOS codprov nombre codpieza desc precio
codprov codpieza precio
pv1 Juan... pz3 tuerca 10
pv1 pz3 10
pv1 Juan... pz8 arandela 20
pv1 pz8 20 pv3 Luis... pz8 arandela 30
pv3 pz8 30 pv5 Carlos.. pz1 tornillo 50
pv5 pz1 50 .
PROV
T1={borrar (PROV (pv1,Juan,1))}
codprov nombre zona
T2={borrar (PIEZA (pz3,tuerca,11),
pv1 Juan..... 1 borrar (PIEZA (pz8,arandela,8))}
pv5 Carlos .... 3 T3={borrar (PRECIOS (pv1,pz3,10),
pv3 Luis ...... 3
borrar (PRECIOS (pv1,pz8,20))}
prov(pv1,Juan,1) T x1 / Juan
1
← pieza (x2,x3,x6) ∧ precios (pv1,x2,x4)
pieza(pz3,tuerca,11) pieza(pz8,arandela,8)
precios(pv1,pz3.10) precios(pv1,pz8,20)
T x4/ 10 T x4/ 20
3 3
p(1)
1) {w(1), v(1)} ⊆ BDE
2) {q(1), s(1)} ⊆ BDE y {r(1)} ∉ BDE
w(1) ∧v(1) q(1) ∧t(1) 3) {p(1)} ⊆ BDE
4) {q(1), t(1)} ⊆ BDE
En el Ejemplo 1:
un método que obtuviese la solución en tiempo de
ejecución estudiaría el árbol de derivación de la
actualización p(1) para encontrar una solución.
un método que trabajase en tiempo de definición del
esquema estudiaría el requisito genérico p(x) para
obtener soluciones que luego se instanciarían en tiempo
de ejecución.
Una solución 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 extraído sin criterio de la base de datos. Aunque en ocasiones
esta solución es la única posible, en otras se puede elegir un valor tal que la
transacción obtenida sea más sencilla.
3) Recursividad.
La presencia de reglas recursivas en la base de datos puede
complicar la generación de la transacción, ya que el árbol de
derivación puede ser infinito para un determinado requisito de
actualización, lo que supone la existencia de infinitas
transacciones posibles para satisfacerlo.
Actualización: U = p(1,1).
← s(1,2) ← s(1,2)
T1 no es una solución
correcta porque induce 2 resolución 2 resolución
la inserción de s(1,2)
que se había asumido ←q(1,2) ←q(1,2)
falsa en la construcción
de la solución. q(1,2) resolución
T1 no es una solución
correcta porque el estado
T1(BDD) viola la
restricción de integridad W
D0 T1 D1 Ti Di Tn Dn Evolución de una BD
W: ∀x ∀y ∀z ( (precios(x, y, z) → ∃ w ∃ t (prov(x,w,t)) )
D T D’
Si D es un estado íntegro
entonces
D’ satisface W si y sólo si D’ satisface ∃ w ∃ t (prov (pv11,w,t) )
Restricción de integridad:
insertar ( COMPONENTE(pz8,pz1) )
1) Concepto de satisfacción
2) Corrección y completitud de un método
2) Fases en la comprobación simplificada de la integridad
1) Concepto de satisfacción:
a) Punto de vista de la demostración:
D satisface W sii Tr |= W.
b) Punto de vista de la consistencia:
D satisface W sii Tr ∪ {W} es consistente.
El concepto de violación se define en términos del concepto de
satisfacción:
D viola W sii no (D satisface W).
Diremos que un estado D es íntegro si, para toda restricción W
perteneciente a RI, D satisface W.
Comprobación de la integridad:
FASE I: Fase de Generación
Paso 1: Cálculo del conjuntos de literales que “representan” la diferencia
entre los estados consecutivos D y D'.
Paso 2: Identificación de las restricciones relevantes.
Paso 3: Instanciación de las restricciones relevantes.
Paso 4: Simplificación de las instancias de las restricciones relevantes.
FASE II: Fase de Evaluación
Paso 5: Comprobación en D' de las instancias simplificadas de las
restricciones relevantes.
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 53
3.2 Comprobación de la integridad
3) Fases en la comprobación simplificada de la integridad
Ejemplo 2:
W1 = ∀x ∀y ( q(x,y) → q(y,x) )
W2 = ∀x ( s(x) → p(x) )
Paso 3 Paso 4
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 57
3.2 Comprobación de la integridad
3) Fases en la comprobación simplificada de la integridad
Hipótesis: D es íntegro.
Comprobación de la integridad:
FASE I: Fase de Generación s
io n e y
iz ac m u
Paso 1: Cálculo del conjuntos de literales
t u a l que “representan”
s er lo la diferencia
entre los estados consecutivos D ylaD'. s ac puede sas. Só
lo de c i ó n in
m erán
o
Paso 2: Identificación á lcde sa c
u las restricciones o lurelevantes.
l c la tra atosn v ss
: E n e
Paso 3: a o 1 s porde lasdrestricciones
Instanciación
s e d
liz a c iorelevantes.
P id a a s e t u a d .
d u c n b a c d a
ri de las restricciones relevantes.
Paso 4: in Simplificación
s o e destlas a s instancias
t e g
o s to d e e l a in
c
FASE II: Fase de Evaluaciónn as a ra
u p
alg antes
Paso 5: Comprobación
e le v en D' de las instancias simplificadas de las
r
restricciones relevantes.
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 58
3.2 Comprobación de la integridad
3) Fases en la comprobación simplificada de la integridad
Hipótesis: D es íntegro.
W2 θ 1= s(b) → p(b)
W2 = ∀x ( s(x) → p(x) ) W2 θ 2= ∀x s(x) → p(x) W2 = ∀x s(x) → p(x)
W2 θ 3= ∀x s(x) → p(x)
Paso 3 Paso 4
Departamento de Sistemas Informáticos y Computación / Universidad Politécnica de Valencia 61
Fase de Generación Potencial
Paso 3: Instanciación de las restricciones relevantes
Paso 4: Simplificación de las instancias de las restricciones relevantes
Si la extensión de q es
grande los borrados
sobre p inducidos por T
pueden ser muchos.
Comprobación RI
D’’
T’ = T’ins ∪ T’del
Restauración NO SI
de la
D‘’ = (D’∪T’ins ) \ T’del ) consistencia D’
Tr (D’’) |= U
D’’ satisface W (∀W ∈RI)