Introducción:
El interés de los Sistemas de Gestión de Bases de Datos Deductivas tiende a
incrementarse conforme se amplía su campo de aplicación (Gestión, Sistemas
Expertos). Los estudios relativos a tales sistemas han comenzado a
realizarse hace algunos años, inspirándose inicialmente en las técnicas
desarrolladas en Inteligencia Artificial en el marco de los sistemas
“Pregunta - Respuesta”, adaptándolas a las limitaciones específicas de
las Bases de Datos.

Un SGBD deductivo es un Sistema que permite derivar nuevas informaciones a
partir de las introducidas explícitamente en la Base por el usuario. Este
maneja la perspectiva según la teoría de las demostraciones de una base de
datos, y en particular es capaz de deducir hechos a partir de la base de
datos extensional, es decir, las relaciones base, aplicando a esos hechos
axiomas deductivos o reglas de inferencias especificados. Esta función
deductiva se realiza mediante la adecuada explotación de ciertos
conocimientos generales relativos a las informaciones de la Base.
Definición:
Un sistema de bases de datos que tenga la capacidad de definir reglas con
las cuales deducir o inferir información adicional a partir de los hechos
almacenados en las bases de datos se llama Sistema
de Bases de Datos Deductivas.
Puesto que parte de los fundamentos teóricos de algunos sistemas de ésta
especie es la lógica matemática, a menudo
se les denomina Bases de Datos Lógicas.
Una base de datos deductiva es, en esencia, un programa lógico; mapeo
de relaciones base hacia hechos, y reglas que son usadas para definir nuevas
relaciones en términos de las relaciones base y el procesamiento de
consultas.
Los sistemas Bases de Datos Deductivas intentan modificar el hecho de que
los datos requeridos residan en la memoria principal (por lo que la gestión
de almacenamiento secundario no viene al caso) de modo que un SGBD se amplíe
para manejar datos que residen en almacenamiento secundario.
En un sistema de Bases de Datos Deductivas por lo regular se usa un
lenguaje declarativo para especificar reglas. Con lenguaje declarativo
se quiere decir un lenguaje que define lo que un programa desea lograr, en
vez de especificar los detalles de cómo lograrlo.
Una máquina de inferencia (o mecanismo de deducción) dentro del sistema
puede deducir hechos nuevos a partir de la base de datos interpretando
dichas reglas. El modelo empleado en las Bases de Datos Deductivas está
íntimamente relacionado con el modelo de datos relacional, y sobre todo con
el formalismo del cálculo relacional. También esta relacionado con el campo
de la programación lógica y el lenguaje Prolog.
Los trabajos sobre Bases de Datos Deductivas basados en lógica han utilizado
Prolog como punto de partida. Con un subconjunto de Prolog
llamado Datalog se definen reglas
declarativamente junto con un conjunto de relaciones existentes que se
tratan como literales en el lenguaje. Aunque la estructura gramatical se
parece a la de Prolog, su semántica
operativa (esto es, la forma como debe ejecutarse un programa en Datalog)
queda abierta.
Una Base de Datos Deductiva utiliza dos tipos de especificaciones: hechos y reglas.
Los hechos se
especifican de manera similar a como se especifican las relaciones, excepto
que no es necesario incluir los nombres de los atributos. Recordemos que una
tupla en una relación describe algún hecho del mundo real cuyo significado
queda determinado en parte por los nombres de los atributos.

En una Base de Datos Deductiva, el significado del valor del atributo en una
tupla queda determinado exclusivamente por su posición dentro de la tupla.
Las reglas se
parecen un poco a las vistas relacionales. Especifican relaciones virtuales
que no están almacenadas realmente, pero que se pueden formar a partir de
los hechos aplicando mecanismos de inferencia basados en las
especificaciones de las reglas. La principal diferencia entre las reglas y
las vistas es que en las primeras puede haber recursión y por tanto pueden
producir vistas que no es posible definir en términos de las vistas
relacionales estándar.
Las BDD buscan derivar nuevos conocimientos a partir de datos existentes
proporcionando interrelaciones del mundo real en forma de reglas. Utilizan
mecanismos internos para la evaluación y la optimización.
Características:
Una Base de Datos Deductiva debe contar al menos con las siguientes
características:
-
Tener la capacidad de expresar
consultas por medio de reglas lógicas.
-
Permitir consultas recursivas y algoritmos eficientes
para su evaluación.
-
Contar con negaciones estratificadas.
-
Soportar objetos y conjuntos complejos.
-
Contar con métodos de optimización que garanticen la
traducción de especificaciones dentro de planes eficientes de acceso.
-
Como característica fundamental de una Base de Datos
Deductiva es la posibilidad de inferir información a partir de los datos
almacenados, es imperativo modelar la base de datos como un conjunto de
fórmulas lógicas, las cuales permiten inferir otras fórmulas nuevas.
Problemas asociados a las reglas de
deducción:
La explotación de las reglas de deducción en un SGBD plantea algunos
problemas:
-
Encontrar criterios que permitan,
para una ley dada; decidir su utilización como regla de deducción o como
regla de coherencia.
-
Replantear correctamente, en un contexto deductivo, las
convenciones habituales en una base de datos (representaciones de
informaciones negativas, eficacia de las respuestas a las
interrogaciones, cierre del dominio).
-
Desarrollar procedimientos eficaces de deducción
Utilización de las reglas de deducción:
La explotación de las reglas de deducción pueden analizarse de dos formas.
La primera, consiste en su uso en fase de interrogación, buscando así
informaciones deducibles implícitas.
Una segunda forma consiste en su uso en fase de modificación, cuando se
añaden informaciones deducibles. Según se utilicen en el primer o el segundo
modo, las reglas se denominan de derivación o de generación.
Hardware:
Físicamente, las bases de datos deductivas casi siempre se almacenan en
medios de acceso directo, por lo regular discos magnéticos de cabeza móvil,
aunque en algunos sistemas pudieran utilizarse otros medios (tambores,
discos ópticos) en vez de discos o además de discos. Los tiempos de acceso a
disco son mucho más largos que los de acceso a la memoria principal: 400
milisegundos o más para un disco flexible, y 30 milisegundos o menos para un
disco "rápido" grande. El acceso a la memoria principal será con toda
probabilidad cuatro o cinco órdenes de magnitud más rápido que el acceso a
disco en un sistema dado. Por lo tanto, un objetivo prioritario de desempeño
en sistemas de Bases de Datos Deductivas es reducir al mínimo el número de
accesos a disco (E/S a disco). Cualquier organización de los datos en el
disco se denomina estructura de almacenamiento, la cual debe ser elegido el
proceso de diseño, a esto se le conoce como diseño físico de Bases de Datos
Deductivas.
Algunas de las estructuras de almacenamiento utilizadas con mayor frecuencia
en los sistemas actuales son la indexación, hash, cadenas de apuntadores y
técnicas de compresión.
Se han hecho varias sugerencias alternativas para crear hardware especial
enfocado a las funciones de gestión de datos. Estas alternativas cuyo nombre
genérico es máquinas (o computadores) de Bases de Datos, incluyen
procesadores dorsales, dispositivos inteligentes, sistemas
multiprocesadores, sistema de memoria asociativa y procesadores de propósito
general.