Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Bases de datos activa: Un sistema de gestin de bases de datos que contiene un subsistema que permite la definicin y la gestin de reglas de produccin (conocidas como reglas activas).
La base de datos debe evolucionar independientemente de la intervencin del usuario como respuesta a un suceso o una determinada situacin. Por ello la mayora de los sistemas relacionales comerciales disponen de triggers
Los triggers nos permitirn especificar reglas con una serie de acciones que se ejecutarn automticamente cuando se produzcan ciertos eventos. Esto introduce el concepto de Bases de datos activas.
Modelo ECA
Las reglas activas deben seguir el modelo eventocondicin-accin (ECA). En este modelo, cada regla reacciona a un determinado evento, evalua una condicin y, si sta es verdadera, ejecuta una accin.
Componentes
El o los eventos. La condicin. La accin.
La mayora de los sistemas relacionales permite el uso de reglas activas, las cuales son denominadas triggers basados en el modelo ECA.
Los eventos son sentencias SQL de manejo de
datos. La condicin es una sentencia booleana en SQL La accin es una secuencia de sentencias en SQL
Granularidad
Los triggers manejan dos niveles de
granularidad: a nivel de fila y a nivel de sentencia. Tambin cuentan con una funcionalidad inmediata o diferida.
Procesamiento de triggers
Existen dos algoritmos para el procesamiento de los triggers
Algoritmo Iterativo
mientras existan reglas activadas: 1. seleccionar una regla activada R 2. comprobar la condicin de R 3. Si la condicin es cierta, ejecutar la accion de R
Fin mientras
Algoritmo Recursivo
mientras existan reglas activadas: seleccionar una regla activada R comprobar la condicin de R si la condicin es cierta
ejecutar la accin de R ejecutar este algoritmo para las reglas activadas por la accin de R
fin mientras
puede retrasar. Los conflictos entre reglas que se activan por el mismo evento se pueden resolver mediante prioridades explcitas. Las reglas se pueden organizar en conjuntos y cada conjunto se puede habilitar y deshabilitar.
Terminacin
Un conjunto de reglas garantiza la terminacin cuando, para cada transaccin que puede activar la ejecucin de reglas, esta ejecucin produce un estado final en un nmero finito de pasos.
Confluencia
Un conjunto de reglas garantiza la confluencia cuando, para cada transaccin que puede activar la ejecucin de reglas, la ejecucin termina produciendo un estado final nico que no depende del orden de ejecucin de reglas.
Grafo de Activacin
Una herramienta esencial para verificar la terminacin es el grafo de activacin que
Ciclos
Los sistemas que tienen muchas reglas activas pueden ser cclicos. Sin embargo, slo unos