Bases de Datos Avanzadas. Clase introductoria



Documentos relacionados
Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

Base de datos relacional

Aplicaciones de las vistas Concepto de vista Vistas en SQL Vistas en SQL.

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 9. Reglas de Integridad

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

Bases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006

Tema 1. Conceptos básicos

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

A.1. Definiciones de datos en SQL

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 8. Elementos Básicos

Repaso de Conceptos Básicos de Bases de Datos

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

SQL (Structured Query Language)

BASE DE DATOS RELACIONALES

Bases de Datos Modelo Relacional

Consultas con combinaciones

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

1. Introducción: Qué es un Modelo de Datos? 2. Estática del modelo de datos relacional

Estructura de Bases de datos. Leonardo Víquez Acuña

BASES DE DATOS - SQL. Javier Enciso

El usuario puede utilizar esta tabla derivada como una tabla más, en sus consultas.

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

Tema 11 Bases de datos. Fundamentos de Informática

El rol del lenguaje SQL en los SGBDR y en la implementación del Modelo Relacional.

- Bases de Datos - - Diseño Físico - Luis D. García

m047a Curso Programando una Base de Datos SQL Server 2008, 36 h Creación B.D. y Constraints

ADMINISTRACIÓN DE BASE DE DATOS

Es una colección de datos operativos almacenados y utilizados por los programadores de aplicaciones y por usuarios finales de muy diversa índole!

Almacenamiento de documentos XML

BASES DE DATOS TEMA 1

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS

8 SQL SERVER 2008 RA-MA

[CASI v.0110] Pág. 1

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

Componentes de Integración entre Plataformas Información Detallada

Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.

Bases de Datos Relacionales

Contenido XIII. Capítulo 1. Capítulo 2. Alfaomega. Bases de datos - Reinosa, Maldonado, Muñoz, Damiano, Abrutsky

CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

1.1.- Objetivos de los sistemas de bases de datos Administración de los datos y administración de bases de datos Niveles de Arquitectura

Conceptos básicos Oracle 10g Introducción - Administración de Oracle - Orasite.com

EL ENTORNO DE TRABAJO SQL ORACLE

Bases de Datos. Sistemas de Gestión de Bases de Datos

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

Introducción a Bases de Datos

Temario Curso Bases de Datos

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERÍA

Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R

CURSO DE SQL SERVER 2005

Base de Datos. Profesor: José Miguel Rubio L. P. UNIVERSIDAD CATÓLICA DE VALPARAÍSO FACULTAD DE INGENIERÍA ESCUELA DE ING.

T12 Vistas y tablas temporales

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

BASE DE DATOS - CURSO 02/03 PRÁCTICA 2: SQL: Lenguaje de definición de datos (DDL)

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL

Programación SQL. Lucio Salgado Diciembre 2008

Tema 33. El lenguaje SQL

Bases de datos relacionales y el modelo entidad-relación

Programa Analítico Plan de estudios Asignatura: Bases de Datos

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD)

BASES DE DATOS TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES

UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS

Bases de Datos: Structured Query Language (SQL)

BASES DE DATOS TEMA 1. INTRODUCCION

Bases de Datos 2. Teórico

Patrones para persistencia (I) Ingeniería del Software II

BASES DE DATOS OFIMÁTICAS

Administración de Bases de Datos (Ingeniería Técnica en Informática de Gestión)

SISTEMAS DE INFORMACIÓN II TEORÍA

MANUAL BÁSICO DEL LENGUAJE SQL

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

MACROPROCESO GESTIÓN TECNOLÓGICA

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

Estándares para el Uso de Herramientas de Desarrollo y Plataformas de Aplicaciones Web

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación

Capitulo III. Diseño del Sistema.

Bases de Datos 2. Teórico

Capítulo 5. Cliente-Servidor.

Estándar de desarrollo de aplicaciones del Govern de les Illes Balears

Bases de Datos 3º Informática de Sistemas

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Introducción a los sistemas de bases de datos

DEPARTAMENTO: Computación y diseño NOMBRE DEL CURSO: Base de datos I CLAVE: ACADEMIA A LA QUE PERTENECE: Base de datos I

SQL (Structured Query Language)- DML

SQL Los fundamentos del lenguaje

EXPLOTACIÓN DE BASES DE DATOS CON ACCESS

Laboratorio Informix. Stored Procedures Triggers

GENERALIDADES DE BASES DE DATOS

Maestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: DDL. Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.

Introducción a los Sistemas de Gestión de Bases de Datos

Ventajas, Características y Aplicaciones de los SGBD Distribuidos.

El Manejador de Bases de Datos Relacionales ORACLE

Transcripción:

Bases de Datos Avanzadas Clase introductoria 1

Introducción Objetivos Principales conceptos Tipos y subtipos Agenda Lenguajes de definición y de manipulación Conclusiones ULA-Postgrado en Computación. I. Besembel 2

Introducción Un sistema de gestión de bases de datos (SGBD) es un software que permite insertar, modificar y recuperar eficazmente los datos específicos dentro de una gran masa de información compartida por muchos usuarios. Un SGBD asegura la independencia de datos,, lo que lo distingue claramente de un sistema manejador de archivos (SMA). Una base de datos es un conjunto de datos gestionados por un SGBD y asociados a una misma aplicación. ULA-Postgrado en Computación. I. Besembel 3

Qué es una base de datos? Introducción organización abstracción BD SGBD Por qué base de datos? Porque dicha tecnología permite el mantenimiento y el control de los datos. Para qué base de datos? Para soportar eficientemente algunos sistemas de actividades de una organización Tipos: Jerárquica Redes Relacional (BDR) Orientadas por objetos (BDOO) Objeto-relacional (BDOR) Subtipos: Distribuida Multimedia Deductivas Temporal Espacio temporal Semi-estructuradas estructuradas Paralela Activas Espacial ULA-Postgrado en Computación. I. Besembel 4

Objetivos Independencia física: los cambios en la estructura lógica no implican cambios en la de almacenamiento, consideraciones sobre el mejor manejo de los datos quedan a cargo del SGBD y los cambios en la estructura de almacenamiento no implican cambios en los PA. Independencia lógica: Cierta independencia entre los datos vistos por las aplicaciones y su estructura lógica en la realidad. Ventajas:soporte de la evolución de los datos donde cada grupo de trabajo ve esos datos como lo desea. ULA-Postgrado en Computación. I. Besembel 5

Objetivos Manipulación de los datos por personas no especializadas en computación Eficacidad en el acceso a los datos Administración centralizada de los datos Redundancia de datos controlada Coherencia de los datos Posibilidad de compartir los datos Seguridad de los datos Habilidad para representar y manipular objetos complejos y compuestos ULA-Postgrado en Computación. I. Besembel 6

Objetivos Posibilidad de almacenar y recuperar datos arbitrariamente grandes Habilidad para definir y manipular cualquier tipo de dato Posibilidad de representar y manejar los cambio en la base de datos a través del tiempo Representación y manipulación de varios conceptos de modelado semántico, útiles en la aplicaciones Posibilidad de especificar reglas y restricciones de integridad para soportar inferencia en las aplicaciones basadas en conocimiento Habilidad para manejar transacciones cooperativas de larga duración ULA-Postgrado en Computación. I. Besembel 7

Conceptos básicos Niveles de descripción ULA-Postgrado en Computación. I. Besembel 8

Jerárquica Definido (1968) según: Campo: unidad de datos con nombre. Segmento: colección de campos consecutivos con nombre. Unidad de intercambio BD - PA. Árbol de segmentos: colección de segmentos ligados por asociaciones 1:N (padre hijos), formando una jerarquía, en el ámbito de tipos o de ocurrencias. Base de datos jerárquica: BD compuesta de un bosque de segmentos (árboles de segmentos) cuyos nodos son los segmentos y las aristas las asociaciones 1:N DBD NAME = Publica SEGM NAME = Tema, BYTES = 44 FIELD NAME = (NumTema, SEQ), BYTES = 4, START = 1 FIELD NAME = NomTema, BYTES = 40, START = 5 SEGM NAME = Publicacion, PARENT = Tema, BYTES = 96 FIELD NAME = (ISBN, SEQ), BYTES = 16, START = 1 FIELD NAME = Titulo, BYTES = 80, START = 17 SEGM NAME = Editorial, PARENT = Pub, BYTES = 40 FIELD NAME = (AñoPub, SEQ), BYTES = 4, START = 1 FIELD NAME = Editorial, BYTES = 34, START = 5 FIELD NAME = NroVolEditados, BYTES = 2, START = 39 SEGM NAME = Autor, PARENT = Pub, BYTES = 256 FIELD NAME = (NomAut, SEQ), BYTES = 20, START = 1 FIELD NAME = Direccion, BYTES = 236, START = 21 ULA-Postgrado en Computación. I. Besembel 9

Redes Definición (1971) según: Átomo o item de dato: unidad de datos con nombre. Agregado de datos: colección de átomos consecutivos con nombre. Tipos: vectores (arreglos unidimensionales) y grupos repetitivos. Registro: colección de agregados y de átomos consecutivos. Unidad de intercambio BD - PA. Conjunto: asociación entre 1 registro propietario y N registros miembros. Limitaciones: un registro o tipo de registro no puede ser propietario y miembro en el mismo conjunto una ocurrencia de un registro no pueda pertenecer a varias ocurrencias del mismo conjunto. Base de datos en redes: BD compuesta de registros ligados o asociados entre ellos por los conjuntos. Representación: grafo de tipos de registros cuyos nodos son los tipos de registros y las aristas son los tipos de conjuntos orientados del propietario hacia los miembros. ULA-Postgrado en Computación. I. Besembel 10

Relacional Propuesto por E. Codd en 1970 y comercialmente disponible 1979 Basado en la teoría de normalización de las relaciones Permite eliminar el comportamiento anormal de las relaciones, luego de actualizaciones, y el control de la redundancia de datos Dominio: conjunto de valores Relación: subconjunto del producto cartesiano de una lista de dominios, no necesariamente disjuntos. Atributo: columna de una relación identificada con un nombre. R color azul verde blanco marca ford toyota renault Esquema de una relación o de tabla: Por intensión R(color, marca) Por extensión Base de datos relacional: base de datos cuyo esquema es un conjunto de esquemas de relación de diferente nombre cada una, y donde sus ocurrencias son las tuplas de esas relaciones ULA-Postgrado en Computación. I. Besembel 11

Reglas de formación Cada relación o tabla contiene un solo tipo de fila o tupla. Cada tupla tiene un número fijo de atributos o columnas. No se permiten atributos compuestos o grupos repetitivos. Cada tupla es única y se identifica con su clave primaria. Un atributo o grupo de ellos que identifiquen unívoca e inequívocamente cada tupla de la relación es una clave candidata. La clave primaria de una relación se selecciona entre las claves candidatas. Si un atributo A R1 es también la clave primaria de R2, entonces A es un atributo foráneo de R1. El orden de las tuplas en la relación es irrelevante. Los valores de los atributos deben pertenecer al dominio de cada atributo definido en ella. Un mismo dominio puede ser usado por diferentes atributos. A partir de una o más tablas se pueden producir nuevas tablas diferentes mediante el uso de las operaciones del álgebra relacional. ULA-Postgrado en Computación. I. Besembel 12

Reglas de Integridad De la relación: ningún componente de un valor de los atributos que conforman la clave primaria puede ser nulo. De referencia: sea A la clave primaria de R1 y también un atributo foráneo de R2, entonces para toda tupla de R2 donde A nulo debe existir la tupla correspondiente en R1. De los valores de un atributo: son los predicados definidos por el administrador de bases de datos sobre los valores de los atributos usando el lenguaje de definición de datos. ULA-Postgrado en Computación. I. Besembel 13

Arquitectura de referencia ULA-Postgrado en Computación. I. Besembel 14

Orientadas por Objetos Modelo ODMG versión 1.1 (1995) Primitiva: el objeto. Los objetos se pueden categorizar en tipos. Su estado lo describen los valores de sus propiedades: atributos o relaciones entre él y otros objetos. Su comportamiento lo define el conjunto de sus operaciones. ULA-Postgrado en Computación. I. Besembel 15

Tipos e instancias: BDOO Tipo define estado y comportamiento de sus instancias. Extensión del tipo: conjunto de todas las instancias del tipo. Características del tipo: Estado y comportamiento. Organización de los tipos: en un grafo de subtipos y supertipos. Subtipo: hereda todas las características de sus supertipos,, pudiendo definir nuevas características para él. Tipos abstractos: no tienen instancias ni implementación. Los tipos del sistema se organizan como un árbol Los tipos definidos por el usuario pueden formar un digrafo acíclico (dag). ULA-Postgrado en Computación. I. Besembel 16

BDOO Atributos: definen cada tipo de objeto, su valor es literal y no tiene oid. Relaciones: solo pueden definirse entre tipos mutables. Las relaciones son binarias del tipo 1:1, 1:M y N:M. No tienen nombre pero si sus caminos en cada dirección. Los caminos se declaran dentro de la interfaz del tipo donde la relación se da. Mantienen la integridad referencial y no tienen oid Comportamiento: Se representa con un conjunto de operaciones. Cada operación tiene una firma que contiene los nombres y tipos de los argumentos, excepciones y tipos y valores de regreso. Siempre se aplican sobre un solo objeto. No hay operaciones independientes de un tipo, ni pueden ser definidas para 2 o más tipos. Las operaciones son únicas dentro de un tipo, pueden tener el mismo nombre para diferentes tipos Colecciones: tienen un número variable de elementos del mismo tipo y no tienen ranuras. Se aceptan subtipos del tipo especificado. Set, Bag, List y Array. Estructuras: tienen un número fijo de ranuras, cada una conteniendo un objeto o o un literal. ULA-Postgrado en Computación. I. Besembel 17

BDOO Materia Programa Persona código:cadena nombre: Cadena TPLU: Cadena fechacreación: Fecha programa prelación * CI: Cadena nombre: Cadena dirección: Cadena teléfono: Cadena fechanacim: Fecha Sección Estudiante Trabajador numsec: Entero fechaing: Fecha fechaing: Fecha horario * cursa * dpto: Cadena Horario Preparador Profesor dia: Dia numhoras: Entero categoria: Cadena horaini: Hora salario: Real dedicación: Cadena horafin: Hora supervisor salario: Real salón: Cadena prepara * título: Cadena dicta * ULA-Postgrado en Computación. I. Besembel 18

Ejemplo Película título : Cadena = 'Aún no tiene' año : Año = '0000' duración : Real = 0.0 tipo : TiposDePelículas nuevapelícula() settítulo() gettítulo() setaño() getaño() setduración() getduración() modificapelícula() despliegue() +compañíaproductora +produce 1..* compañíadeproducción 1..* Estudio nombre : Cadena = 'Indefinido' fechafundación : Fecha dirección : Cadena = 'Indefinido' ciudad : Cadena = 'Indefinido' país : Cadena = 'Indefinido' teléfonos : List(Cadena) dirw eb : Cadena = 'Indefinido' nuevoestudio() setnombre() getnombre() setfechafundación() getfechafundación() setdirección() getdirección() setciudad() getciudad() setpaís() getpaís() nuevoteléfono() getteléfonos() setdirweb() getdirw eb() modific ae studio() cierree studio() despliegue() ULA-Postgrado en Computación. I. Besembel 19

Objeto-relacional Modelo relacional extendido con facilidades de orientación por objetos: o Nuevos tipos de datos: Creación de nuevos tipos compuestos, pero que deben ser soportados os por el propietario del tipo, esto es debe definir al menos dos métodos transformadores, uno para convertir el tipo nuevo a ASCII y el otro que convierte de ASCII al nuevo tipo. Soporte de tipos complejos: registros, conjuntos, referencias, listas, l pilas, colas y arreglos. Creación de funciones que tengan un código en algún lenguaje de programación, por ejemplo: SQL, Java, C, etc. Creación de operadores: asignándoles un nombre y asociándoselo a una función ya definida o creada con anterioridad. Soporte de encadenamiento dinámico y herencia en los tipos tupla o registro. Posibilidad de incluir el chequeo de las reglas de integridad referencial a través de los gatillos (triggers( triggers) Soporte adicional para seguridad y activación de la versión cliente nte-servidor. ULA-Postgrado en Computación. I. Besembel 20

BDR Distribuidas Lugar 1 Lugar n Lugar 2 Red Lugar i Lugar 3 BD central con acceso a la red Lugar 1 Lugar n Lugar 2 Red Lugar i Lugar 3 Ambiente de BDD Problemas claves: Para responder una consulta, los datos residentes en computadores separados deben ser combinados y movidos. Como los datos están bajo el control de computadores separados, es necesario coordinar las Ti para preservar la consistencia de datos. ULA-Postgrado en Computación. I. Besembel 21

BDR Paralelas Discos compartidos: Cada procesador tiene su propia MP, pero comparte su MS con todos. Nada se comparte: Cada procesador tiene su MP y MS, pero se comunican con pase de mensajes. Todo se comparte: Todos los procesadores acceden una MP común y todas las MS (discos) ULA-Postgrado en Computación. I. Besembel 22

BDR Multimedia Reconocimiento, agrupamiento, tipos y relaciones para capturar y recuperar la información multimedia. Diferencia entre recuperación en base de datos y en recuperación de información. Modelos hipertexto e hipermedia sugieren un método de navegación para recuperar la información. Recuperación basada en contenido Entendimiento del lenguaje natural, velocidad de procesamiento, visión y modelado de usuarios. ULA-Postgrado en Computación. I. Besembel 23

BDR Activas BD convencionales: pasivas, solo ejecutan consultas a petición de un usuario o de un programa de aplicación. BD activa: tiene la capacidad de monitorear situaciones de interés y cuando o estas ocurren disparan una respuesta adecuada. El comportamiento deseado se expresa por medio de reglas de producción o reglas evento-condición condición-acción (ECA), las cuales pueden ser definidas y almacenadas en la BD. on evento Una regla se dispara cuando el evento ocurre if condición se considera cuando su condición se evalúa then acción y se efectúa cuando la acción se ejecuta Las reglas serán disparadas por eventos de la BD como: un estado particular de la BD y cambios de estado de la misma, para: asegurar la integridad de datos, implementar disparadores y alertadores, mantener datos derivados, asegurar las restricciones de acceso, implementar las políticas de control de versiones, mantener las estadísticas de acceso para la optimización de consultas, etc. ULA-Postgrado en Computación. I. Besembel 24

BDR Deductivas Compuesta de una BD intensional y una BD extensional BD extensional: base de hechos BD intensional: conjunto de restricciones de integridad y de axiomas deductivos (reglas) madrede madre Ana Berta Juana Berta hija Berta Juana Mariela Beatriz if madrede( x, y ) and madrede( y, z ) then abuelade( x, z) Se basa en el cálculo de predicados y en la teoría de demostraciones Realiza procesamiento de consultas recursivas ULA-Postgrado en Computación. I. Besembel 25

Bases de datos espaciales Término para describir los datos que pertenecen al espacio ocupado por los objetos en la BD. Pueden ser geométricos y variados. Se aplica a cualquier dato de un fenómeno distribuido en 2-, 3- o n-dimensiones que son ortogonales y homogéneas (D. Peuquet) Consisten del conjunto de objetos espaciales construidos con: puntos, líneas, regiones, rectángulos, superficies, volúmenes, etc. DatoGeométrico iddatogeometrico : Identificador color : TipoColor TipoDatoGeométrico 3..n {ordenado} Polígono numpuntos : Entero rellenoosubrayado : Boolean 2..n Línea {ordenado} Punto x : Real y : Real +de +hasta +inicio +inferiorizquierdo +final RectánguloDelimitador ancho : Real largo : Real Polilínea ArcoUOvalo ánguloinicio : Ángulo gradobarrido : Ángulo rellenoosubrayado : Boolean ULA-Postgrado en Computación. I. Besembel 26

Bases de datos temporales ObjetoET Objeto Espacial escala +geometría 1..n Representación Espacial +borde n Objeto Gráfico Punto Línea Polígono Objeto Temporal granularidad +t 1..n Representación Temporal Los objetos y sus relaciones existen en periodos de tiempo definidos, así como los eventos ocurren en puntos específicos del tiempo Tiempo válido: tiempo en el cual el hecho se dio o se dará en la realidad independientemente del tiempo en que se registró en la BD. puede estar o no limitado (normalmente en el pasado) Tiempo transaccional: tiempo en que el hecho se almacenó en la BD Es un intervalo que dice cuando se insertó el hecho y cuando se eliminó de la BD. está siempre limitado en el pasado y en el futuro ULA-Postgrado en Computación. I. Besembel 27

Bases de datos espacio temporales Tienen al menos tiene una propiedad espacial y una temporal Un objeto espacio temporal se puede representar por una 4-upla4 (objid, geom, t, att) donde: objid es el identificador del objeto, geom es su localización y forma espacial, t es la descripción de sus características temporales y att es un conjunto de otros atributos que describen otras propiedades diferentes de las espaciales y temporales arcos 1..n 2 Relación espacial idre : Identificador Grafo espacial idge : Identificador 1..n Representación espacial idrepe : Identificador geometría nodos 1..n Objeto espacial idoe : Identificador escala Objeto gráfico idog : Identificador Punto Línea Polígono n HR tarcos 1..n 2..n Grafo idg : Identificador Grafo temporal idgt : Identificador 2 Relación temporal idrt : Identificador Objeto temporal idot : Identificador regularidad : tiporeg Representación temporal idrept : Identificador Intervalo tnodos 1..n granularidad idint : Identificador min : Real max : Real 1..n Objeto geográfico ET idogeo : Identificador referencia : Georeferencia ubicacion : GeoUbicacion Objeto ET idoet : Identificador Grafo ET idget : Identificador stnodos 1..n Relación ET starcos 1..n idret : Identificador ULA-Postgrado en Computación. I. Besembel 28

Bases de datos semi- estructuradas XML: lenguaje de marcas extensible, diseñado para permitir la implementación e interoperabilidad con SGML y HTML Procesador XML: usado para leer documentos XML y permitir el acceso a su contenido (datos) y estructura (esquema) Metas: Usable en Internet, compatible con SGML y soporte de varias aplicaciones Número mínimo de rasgos adicionales y facilidad de escribir programas que procesen documentos XML (claros y legibles) Diseño XML formal, conciso y de fácil creación No importa la minimalidad del conjunto de marcas <INVENTARIO> <LIBRO> <TITULO TITULO>Aprenda XML ya</ </TITULO> <AUTOR>Young, Michael J.</ </AUTOR> <EDITORIAL>McGrawHill-Microsoft</ </EDITORIAL> <ANO>2000</ </ANO> <ISBN>0-7356-1020-7</ </ISBN> <TITULOINGLES>XML Step-by by-step</ </TITULOINGLES> </LIBRO LIBRO> <LIBRO> <TITULO TITULO>Precálculo</TITULO> <AUTOR>Faires,, J. Douglas y DeFranza,, James</AUTOR> <EDITORIAL>International International Thomson</ </EDITORIAL> <ANO>2001</ </ANO> <ISBN>970-686-032-0</ </ISBN> <TITULOINGLES>Precalculus</ </TITULOINGLES> </LIBRO LIBRO> <LIBRO> <TITULO TITULO>Multimedia. Manual de referencia</ </TITULO> <AUTOR>Vaughan, Tay</ </AUTOR> <EDITORIAL>MaGraw-Hill Osborne Media</ </EDITORIAL> <ANO>2002</ </ANO> <ISBN>84-481-3626-8</ </ISBN> <TITULOINGLES>Multimedia: Making it work</ </TITULOINGLES> </LIBRO LIBRO> </INVENTARIO INVENTARIO> ULA-Postgrado en Computación. I. Besembel 29

XML Gráficas y multimedia SMIL SVG Llamadas remotas y B2B XML-RPC SOAP Web y la publicación tradicional XHTML DocBook Tecnología inalámbrica y voz WML VoxML Aplicaciones Elemen tos de base y modelos de objetos Enlazamiento y señales Xlink Xpointer XPath XSLT XSL XML Info set XML 1.0 + espacio de nombres DOM SAX Interfaces de programación Estilo y transformación Esquema XML XML Modelado complejo de información ULA-Postgrado en Computación. I. Besembel 30

SQL (Structured( Query Language) Lenguajes Versión comercial del lenguaje SEQUEL creado por IBM para el sistema R (1976) bajo DOS y VM. Lenguaje declarativo, interactivo, de programación, de definición n de esquemas y de comunicación con servidores a través de redes. Primera versión: SQL-89 contiene tres partes: Lenguaje de definición de datos (LDD): contiene todas las instrucciones para definir el esquema de una BD, como son: create,, alter y drop. Lenguaje de manipulación de datos (LMD): tiene las instrucciones de manejo de las tablas como son: select, insert, delete y update,, y para control de concurrencia como: commit y rollback. Lenguaje de control de datos (LCD): para dar y revocar permisos de acceso a los datos de la BD, como son: grant y revoke. Las instrucciones pueden ir embebidas en programas escritos en otros o lenguajes de programación, como: Cobol, Fortran,, Pascal y PL/I ULA-Postgrado en Computación. I. Besembel 31

SQL Segunda versión SQL-92 o SQL2,, incluye: Uso de agentes de software, Nuevos tipos básicos de datos como: Date, Time, Timestamp,, BLOB, Varchar, Se establecen conexiones cliente-servidor en sesiones concurrentes, SQL dinámico, Mayor granularidad a nivel de transacciones, Nuevas versiones de la operación producto o conjunción, Usa un catálogo y maneja códigos de error estandarizados y Uso de nuevos lenguajes de programación como: C, ada y mumps. Última versión SQL3 amplía o extiende el SQL2 para contener: Tipos abstractos de datos definidos por el diseñador de la BD, Manejo de roles de usuarios, Consultas recursivas, Gatillos, disparadores o triggers, Procedimientos almacenados y encadenamiento tardío, Manejo de interoperabilidad a través de un API u ODBC para acceso o a bases de datos basado en el estándar SAG(SQL Access Group) ) y Manejo de transacciones anidadas. ULA-Postgrado en Computación. I. Besembel 32

LDD LCD SQL create table nombretabla ( nombreat tipoat default valorporomisión [null not null identity], ],... [ constraint nombrerestricción ] check ( Q ), [ constraint nombrerestricción ] primary key ( at1 [, at2,... ]),] [ constraint nombrerestricción ] unique ( at1 [, at2,... ]),] [ constraint nombrerestricción ] foreign key ( listaat) references nombretabla ( listaat ) ) drop table nombretabla create view nombrevista [( at1 [, at2...] ) as instrucciónselect [ with opciónverificación ] Etc. grant { select insert update delete all } on { nombretabla nombrevista } to listacódigosusuario revoke { select insert update delete all } on nombretabla from listacódigosusuario ULA-Postgrado en Computación. I. Besembel 33

SQL LMD select {listaat *}[ into nombretabla ] from listatablas [ where Q ] [ group by listaat] [ having Q ] [ order by listaat ] insert [into] nombretabla [( listaat ) ] {values{ ( listavalores ) instrucciónselect } delete {[ from ] nombretabla [ where Q ] from listatablas [ where Q ] } update nombretabla set at1 = {expresión instrucciónselect } [, at2 = {expresión instrucciónselect}...] [ from listatablas ] [ where Q ] ULA-Postgrado en Computación. I. Besembel 34

QUEL Basado en el Cálculo Relacional de Tuplas Presentado por Zook en 1977 Lenguaje del Ingres LMD Range of <listavariables> is <listatablas> Retrieve [ [into[ into] ] <nombretabla< nombretabla>]< >]<listaatributosvariable> [ where <condición> ] Append [to]] <variable> ( at = valor,... ) [ where <condición>] Replace <variable> ( <listadeatributos< listadeatributos>) [ where <condición>] Delete <variable> [ where <condición> ] ULA-Postgrado en Computación. I. Besembel 35

QBE Basado en el Cálculo Relacional de Dominios Lenguaje del Sistema R, DB2, Informix, Oracle,, etc. LMD no es computacionalmente completo Relación col1 col2 col3 coln P. _x P.AO._y _x >=14 P. P.SUM._s I. 126 5101 28 230 D. >30 =45 _w U. _w+5 ULA-Postgrado en Computación. I. Besembel 36

OQL LMD SELECT DISTINCT STRUCT(Cédula: e.ci, nombre: e.nombre), p.nombre, pr.nombre LDD Cuáles son los estudiantes de la sección Nro. 2 de la materia de nombre Simulación, cuál es su preparador y su profesor? FROM e IN Estudiantes, p IN Preparadores, pr IN Profesor, s IN Secciones WHERE s.nombre = Simulación AND s.numsec = 2 interface Materia ( extent Materias keys código, nombre ): persistent { attribute String código; attribute String nombre; attribute String tipo; attribute String tplu; attribute String objetivos; attribute String contenidos; relationship List< < Curso> seofrecen inverse Curso::esSecciónDe {order_by Curso::sección }; relationship Set< < Materia> prela inverse Materia::esPreladaPor espreladapor; relationship Set< < Materia> espreladapor inverse Materia::prela prela; Boolean nuevamateria( ( ) raises (yaestá); Boolean cambiodenombre( ( ) raises (repetido); Boolean cambiodeobjetivos( ( ) raises (repetido); Boolean cambiodecontenido( ( ) raises (repetido); }; ULA-Postgrado en Computación. I. Besembel 37

LMD OSQL SELECT DISTINCT CI(e), nombre(e), nombre(p), nombre(pr) LDD Cuáles son los estudiantes de la sección Nro. 2 de la materia de nombre Simulación, cuál es su preparador y su profesor? FOR EACH Estudiante e, Preparador p, Profesor pr,, Sección s WHERE nombre(s) = Simulación AND numsec(s) = 2 ORDER BY CI(e); create type Estudiante subtype of Persona functions ( CI Char (var 10)); ULA-Postgrado en Computación. I. Besembel 38

SQL espacial Inclusión de operadores de manejo espacial en SQL Ejemplo: SELECT e.dpto, e.dpto.ciudad FROM e : empleado, p : proyecto WHERE e.nombre = Carlos AND e.dpto.ciudad.norte(p.ciudad) ) AND p.nombre= SMBDOO IN e.proyecto ULA-Postgrado en Computación. I. Besembel 39

SQL temporal En el modelo de datos: Algunos lenguajes incluyen cláusulas y/o operadores para manejar el tiempo. Ejm:: TOSQL, TOOSQL y OOSTSQL. SELECT e.dpto, e.dpto.vt FROM e : empleado, p : proyecto WHERE e.nombre = Carlos WHEN e.dpto.vt.during(e.proyectos.vt) AND p.nombre= SMBDOO IN e.proyecto ULA-Postgrado en Computación. I. Besembel 40

Conclusiones Tecnología básica para el mantenimiento y control de los datos soportada por los SGBD Disponibilidad de uso a través de Web Base para la integración de aplicaciones Diversidad de tipos y posibilidad de mezclarlos Uso extendido actualmente Evolución continua ULA-Postgrado en Computación. I. Besembel 41