Este documento describe las bases de datos activas e inteligencia ambiental. Explica que las bases de datos activas pueden ejecutar acciones automáticamente mediante disparadores y reglas activas en respuesta a eventos, y que esto puede usarse para implementar sistemas de inteligencia ambiental que monitorean el entorno y realizan cambios de forma transparente. También compara las bases de datos pasivas y activas, y proporciona ejemplos del uso de bases de datos activas para controlar la temperatura u ofrecer notificaciones personalizadas.
4. Concepto BD Pasiva vs Activa Pasiva: ejecuta consultas o transacciones sólo a petición del usuario/aplicación. Activa: el SGBD realiza operaciones sin la petición expresa del usuario/aplicación. Reglas Activas Modelo ECA: Evento: insertar un alumno Condición: el alumno pertenece a eside Acción(sentencia SQL o ejecución de programa): incrementar el contador de alumnos de eside
5. Disparadores (I) Implementación de las reglas activas. Se dispara cuando se da el evento. Comprueba la condición, y si se cumple, realiza una serie de acciones. Ejemplo: /* Evento */ CREATE TRIGGER aum_alumno AFTER INSERT ON alumnos WHEN (new.facultad = “eside”) /* Condición */ FOR EACH ROW BEGIN /* Acción */ UPDATE facultades WHERE nomFacultad = “eside” SET numAlumnosEside = numAlumnosEside + 1; END
6. Disparadores (II) Sintaxis general CREATE TRIGGER <nombre-del-disparador> ( AFTER | BEFORE ) <eventos> ON <nombre-tabla> [ FOR EACH ROW ] [ WHEN <condicion> ] <acciones>; Tipos de disparadores Según cuántas veces se ejecuta Disparadores por instrucciones Disparadores por filas Según cuando se ejecuta Antes de la instrucción Después de la instrucción
7. Diseño de una BDA Complicaciones Una instrucción activa varios disparadores Un disparador dispara a su vez a otro disparador Sistemas de Gestión de BDA: Oracle PostgreSQL Microsoft Access …
8. Usos de las BDA Mantenimiento de la integridad Actualización del campo salarioPromedio Calcular importe total del pedido Notificación Controlar temperatura horno Notificar que el cliente tiene derecho a descuentos especiales Auditoría y seguridad Crear registros de las operaciones Estadísticas de consultas a tablas Reglas de negocio Hacer que se cumplan las reglas del proceso de negocio
9. Ventajas de las BDA Generación automática de datos -> Optimización Control de la integridad Mayor productividad Reutilización de código Reducción del tráfico de red
11. Concepto Conocido como AmI (AmbientIntelligence) Objetivo: facilitar las actividades de la vida cotidiana mediante una tecnología transparente. Es NO INTRUSIVA No es nuevo Computación Ubicua Ejemplo: domótica SmartLab
12. Características Las tecnologías de Inteligencia Ambiental tienen cinco características: Sistemas embebidos Múltiples dispositivos integrados en el entorno. Consciencia del entorno Conocen cómo está el entorno. Personalización Siguen tus necesidades. Adaptación Responden ante tus cambios. Anticipación Anticipan tus deseos.
13. Ejemplos de uso Domótica Encendido y apagado automático de dispositivos Salud Monitorización de la salud [AAL, SmartLab] Reloj de urgencias Llamada por teléfono a personas [Asterisk, SmartLab] Marketing personalizado
15. Arquitectura de la AmI Sensores: obtienen los datos Ubicación (SmartLab) Temperatura Ventanas abiertas… Lógica: a partir de los datos determina las acciones a realizar if { } elseif { } … y Motores de Reglas Inteligencia Artificial y Data Mining Bases de Datos Activas Cambios en el entorno Los dispositivos llevan a cabo los cambios
17. Relación entre BDA y la AmI La BDA funciona como la AmI: recibe unos datos [instrucciones SQL | información de los sensores] y a partir de ellos calcula [con los activadores | lógica] lo que debe realizar [las acciones | cambios en el entorno]. La BDA se puede utilizar para implementar un sistema de AmI: Generando las instrucciones SQL oportunas Ejecutando programas
18. Dos ejemplos Generando las instrucciones oportunas Evento: Instrucciones SQL van guardando lecturas de la temperatura de una sala (insert…) y activan el disparador. Condición: Si la temperatura baja de 20º actuará el disparador. Acción: En la tabla Dispositivos cambiamos el atributo Estado de la fila Calefacción a On. Como la calefacción está consultando cada cierto tiempo el valor de la BD, en unos instantes se encenderá. Ejecutando un programa Evento: Instrucciones SQL almacenan múltiples datos, proporcionados por una camiseta con sensores, sobre el estado de una persona en la BD, activando un disparador. Condición: Si el ritmo cardiaco sobrepasa el límite establecido para esa persona actuará el disparador. Acción: se lanza un programa que muestra al usuario su estado de salud y le da la opción de avisar al hospital.
19. Bibliografía y enlaces ELMASRI, NAVATHE; Fundamentos de Sistemas de Bases de Datos ; AddisonWesley; 3ª edición. R. RAMAKRISHNAN & J. GEHRKE, 2007. Sistemas de Gestión de Bases de Datos, 3ª edición. McGraw Hill. http://en.wikipedia.org/wiki/Ambient_intelligence http://www.youtube.com/watch?v=1nBfzFcS3wA http://www.slideshare.net/daosgc/base-de-datos-activas-pro http://www.scribd.com/doc/25781057/Universidad-Nacional-de-Loja