http://uniandespi.wikispaces.com ing. john toasa espinoza 2013 universidad autonoma de los andes...

60
http://uniandespi.wikispaces.com Ing. John Toasa Espinoza 2013 UNIVERSIDAD AUTONOMA DE LOS UNIVERSIDAD AUTONOMA DE LOS ANDES ANDES “UNIANDES” “UNIANDES”

Upload: chuy-carballo

Post on 21-Jan-2015

4 views

Category:

Documents


1 download

TRANSCRIPT

  • Diapositiva 1
  • http://uniandespi.wikispaces.com Ing. John Toasa Espinoza 2013 UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES
  • Diapositiva 2
  • 1. Sistemas de bases de datos Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos 1.3 Estructura general del sistema de bases de datos Anexos 1. Clasificacin de los SGBD Tema 1. Sistemas de bases de datos2
  • Diapositiva 3
  • 1. Sistemas de bases de datos Bibliografa [EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas de Bases de Datos. 3 Edicin. Addison-Wesley. (Cap. 1 y 2) [EN 1997] Elmasri, R.; Navathe, S.B.: Sistemas de bases de datos. Conceptos fundamentales. 2 Edicin. Addison-Wesley Iberoameric. (Cap. 1 y 2) [MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseo de bases de datos relacionales. Ra-Ma. (Cap. 1 y 2) [MP 1993] De Miguel, A.; Piattini, M.: Concepcin y diseo de bases de datos: del Modelo E/R al Modelo Relacional. Ra-Ma. [SKS 1998] Korth, H; Silberschatz, A., Sudarshan, S.:Fundamentos de bases de datos. 3 Edicin. McGraw-Hill. (Cap. 1) [ SKS 2002] Silberschatz, A.; Korth, H.F.; Sudarshan, S. Fundamentos de Bases de Datos. 4 edicin. Madrid, McGraw-Hill, 2002. (Cap. 1) [CBS 1998] Connolly, T.; Begg C.; Strachan, A. Database Systems: A Practical Approach to Design, Implementation and Management. 2 nd edition. Addison-Wesley. (Cap. 1 y 2) [CCM 2003]Celma, M.; Casamayor, JC.; Mota, L. Bases de datos relacionales. Pearson Educacin, 2003. (Cap. 1, 2 y parte del 6) Tema 1. Sistemas de bases de datos3
  • Diapositiva 4
  • 1.1 Bases de datos y sus usuarios Base de Datos (BD) Conjunto de datos relacionados entre s demasiado general Dato= algo conocido que quiere registrarse Por qu esta transparencia no es una BD? Porque se tienen unas propiedades implcitas: Tema 1. Sistemas de bases de datos4 Conjunto de datos persistentes lgicamente coherente, con significado implcito Representa aspectos del mundo real (minimundo, universo de discurso) Los cambios en el minimundo se reflejan en la BD Se DISEA, se CREA y se CARGA, para conseguir objetivos determinados Datos ALMACENADOS para algo Dirigida a un grupo de usuarios Datos INTERESANTES para alguien
  • Diapositiva 5
  • Tema 1. Sistemas de bases de datos5 1.1 Bases de datos y sus usuarios Un ejemplo de una base de datos personal LIBRO AUTOR isbntituloapAutornomEditao 8420464988 MomoEndeAlfaguara 1982 8408049003 El retrato de Dorian GrayWildePlaneta 2003 8477205302 El alquimistaCoelhoObelisco 1996 8420432261 La historia interminableEndeAlfaguara 1998 8420616524 El fantasma de CantervilleWildeAlianza 1996 8408048783 Once minutosCoelhoPlaneta 2003... nombreapellidos... PauloCoelho... OscarWilde... MichaelEnde... EDITORIAL nombre... Obelisco... Alfaguara... Planeta... Alianza... PERSONA idnombretelfono 2Julia Ibez 555123456 10Eva Andrs 555654321... 3Cristina Prats 555987654 1Gins Soriano 555221122 PRESTAMO idPeridLibfecha 10 8408049003 23/9/03 3 8408048783 1/10/03 10 8420464988 2/3/03 1 8420432261 10/8/02...
  • Diapositiva 6
  • 1.1 Bases de datos y sus usuarios Sistema de Gestin de Base de Datos (SGBD - DBMS) Conjunto de programas que permite DEFINIR, CONSTRUIR y MANIPULAR bases de datos para diversas aplicaciones Definir una BD es especificar... estructura de datos, tipos de datos y restricciones de los datos Construir una BD es... almacenar datos en algn medio de almacenamiento controlado por el SGBD Manipular la BD es... consultar datos introducir/modificar/eliminar datos, para reflejar cambios en el minimundo generar informes a partir de los datos almacenados Sistema de Base de Datos SBD = BD + SGBD + Software de Aplicacin/Consultas Tema 1. Sistemas de bases de datos6
  • Diapositiva 7
  • 7 Software para procesar Consultas / Programas Software para tener acceso a los datos almacenados SOFTWARE DEL SGBD Programas de Aplicacin / Consultas SISTEMA DE BASE DE DATOS Usuarios / Programadores Definicin de la BD (Metadatos) Base de Datos almacenada Entorno simplificado de un Sistema de Base de Datos
  • Diapositiva 8
  • Tema 1. Sistemas de bases de datos8 Naturaleza autodescriptiva Procesamiento de ficheros Los programas de aplicacin acceden a datos especficos, cuya estructura se describe en el propio cdigo Sistemas de bases de datos SGBD = Sistema software de propsito general BD = DATOS + METADATOS El Catlogo del Sistema... Contiene metadatos: descripcin de la estructura de la BD El SGBD sabr acceder a datos de cualquier aplicacin Usado por el SGBD (a veces por usuarios) 1.1 Bases de datos y sus usuarios Caractersticas del enfoque de Bases de Datos (1)
  • Diapositiva 9
  • Tema 1. Sistemas de bases de datos9 Separacin entre programas y datos Procesamiento de ficheros Definicin de datos forma parte de los programas de aplicacin Cambios en la estructura de ficheros de la BD modificacin de programas que acceden a tales ficheros Sistemas de bases de datos Descripcin de estructura y organizacin de ficheros almacenada en Catlogo, separada de los programas Independencia entre programas y datos ( posible gracias a la abstraccin de datos proporcionada por SGBD, que veremos ms adelante ) 1.1 Bases de datos y sus usuarios Caractersticas del enfoque de Bases de Datos (2)
  • Diapositiva 10
  • Tema 1. Sistemas de bases de datos10 Datos compartidos y procesamiento de transacciones multiusuario Acceso simultneo a datos sin interferencias ni inconsistencias Control de concurrencia por el SGBD Mltiples vistas de los datos Cada usuario slo interesado en ver la parte de la informacin que necesita vista de la BD Vista = [ Subconjunto de ] BD [+ datos virtuales] SGBD proporciona mecanismos de definicin de vistas SBD BIBLIOTECA BibliotecarioLector BD 1.1 Bases de datos y sus usuarios Caractersticas del enfoque de Bases de Datos (y 3)
  • Diapositiva 11
  • Tema 1. Sistemas de bases de datos11 Administrador de la base de datos (ABD) Responsable de administrar los recursos del SBD (nivel tcnico): BD + SGBD + Otro Software (aplicaciones/programas de acceso) Las funciones del ABD incluyen: Definir/Modificar la estructura de la BD y restricciones de los datos Crear/Modificar estructuras de almacenamiento y mtodos de acceso Conceder/Denegar permisos de acceso y controlar dicho acceso a datos (seguridad de la BD) Definir planes de copias de seguridad de los datos de la BD Garantizar el funcionamiento correcto del sistema y proporcionar servicio tcnico al usuario (respuesta lenta del sistema...) Adquirir los recursos software y hardware necesarios 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos (1)
  • Diapositiva 12
  • Tema 1. Sistemas de bases de datos12 Diseadores de la base de datos Antes de implementar la BD, interactan con sus futuros usuarios Recogen y comprenden sus necesidades y objetivos --- Requisitos Identifican datos que almacenar en la base de datos Eligen estructuras para representar y almacenar los datos Construyen... Vista que satisface requisitos de cada grupo de usuarios Diseo final de BD que satisface necesidades de todos los usuarios (resultado de la integracin de las diferentes vistas) 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos (2)
  • Diapositiva 13
  • Tema 1. Sistemas de bases de datos13 Usuarios finales Ocasionales o Sofisticados Acceso espordico y distinto cada vez; usan lenguaje de consulta Paramtricos o Normales Accesos constantes, repetitivos Usan transacciones programadas para ellos Avanzados o Especializados Implementan sus propias aplicaciones especializadas para cumplir sus complejos requisitos Ingenieros, cientficos, analistas de empresa,... Autnomos Usan BD personales, a travs de aplicacin/paquete comercial especfico 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos (3)
  • Diapositiva 14
  • Tema 1. Sistemas de bases de datos14 Ingenieros de software (Analistas de sistemas y Programadores de aplicaciones) Conocen perfectamente capacidades y recursos del SGBD Analistas Determinan necesidades de procesamiento de los usuarios finales (especialmente los paramtricos) Especifican conjuntos de operaciones que satisfacen esas necesidades Programadores Implementan estas especificaciones Programas de aplicacin Prueba, depuracin, documentacin y mantenimiento de programas 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos (4)
  • Diapositiva 15
  • Tema 1. Sistemas de bases de datos15 Los siguientes son los encargados del diseo, creacin y operacin del software y entorno del sistema No estn interesados en el contenido de la base de datos Diseadores e Implementadores del SGBD Disean e Implementan los Mdulos e Interfaces del SGBD Operadores y Personal de mantenimiento del Entorno hardware y software del sistema de BD 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos (5)
  • Diapositiva 16
  • Tema 1. Sistemas de bases de datos16 Desarrolladores de herramientas Disean e Implementan paquetes software que: Facilitan diseo y uso de los SBD, y Permiten aumentar el rendimiento de los SBD Herramientas para Diseo de BD, de aplicaciones de BD, de interfaces de usuario... Creacin de prototipos de aplicaciones de BD Realizar simulaciones y generar datos de prueba Supervisin de rendimiento del sistema... 1.1 Bases de datos y sus usuarios Actores en un sistema de base de datos ( y 6)
  • Diapositiva 17
  • Tema 1. Sistemas de bases de datos17 Disminucin y control de la redundancia de datos Procesamiento de ficheros varias copias de la misma informacin Problemas debidos a la redundancia de datos Duplicacin del trabajo Desperdicio de espacio de almacenamiento Obligacin de evitar las inconsistencias de datos Evitar inconsistencias en los datos Slo si existe redundancia y se modifica un dato, actualizando algunas copias Soluciones: Eliminacin de Redundancia, Redundancia Controlada y Propagacin de Actualizaciones Automtica 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (1)
  • Diapositiva 18
  • Tema 1. Sistemas de bases de datos18 Mantener la integridad Asegurar que la informacin es correcta=refleja fielmente el minimundo Cundo se viola la integridad (no existe)? Si existe inconsistencia Si existe informacin imposiblefecha = 40 / MAYO / 1972 Si existe informacin que no se ajusta a la realidad, es decir falsa o errnea N de telfono de la polica = 063 Cmo se evitan estas situaciones? Si los datos cumplen las Restricciones de Integridad ( RI ) Restricciones sobre tipos de datos el nombre de una persona es una cadena de hasta 30 caracteres Restricciones semnticas todo libro tiene una editorial cada libro tiene un ttulo diferente del resto ningn libro puede prestarse a ms de una persona al mismo tiempo 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (2)
  • Diapositiva 19
  • Tema 1. Sistemas de bases de datos19 Mantener la integridad (cont.) Las RI son identificadas durante el diseo de la BD Control de la Integridad: fundamental en SBD Multiusuario Verificacin de Restricciones de Integridad en cada actualizacin de datos Automtica por el SGBD fecha = 40 / MAYO / 1972 Mediante programas especficos El SGBD debe permitir - Definir (crear) las RI, - Crear y ejecutar los programas de verificacin A veces se puede almacenar informacin falsa sin violar restricciones de integridad: ttulo de libro = El seor de los aniyos 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (3)
  • Diapositiva 20
  • Tema 1. Sistemas de bases de datos20 Aplicacin de restricciones de seguridad ( RS ) No todos los usuarios deberan poder acceder a toda la BD Objetivo: control de acceso selectivo 1. Slo usuarios autorizados 2. Slo a ciertas partes de la base de datos 3. Slo para realizar ciertas operaciones con los datos SGBD dispone de Subsistema de Seguridad y Autorizacin Cuentas de usuario protegidas con contrasea (ok objetivo 1) Restricciones de seguridad para cada cuenta (ok objetivos 2 y 3) SGBD fuerza el cumplimiento de las RS Otros controles de la seguridad seran: Slo el ABD usa el software de administracin y monitorizacin del SBD Un usuario paramtrico slo accede a la BD a travs del programa que usa... 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (4)
  • Diapositiva 21
  • Tema 1. Sistemas de bases de datos21 Suministro de mltiples interfaces de usuario Usuarios con diferentes niveles de conocimientos tcnicos El SGBD debe ofrecer interfaces para todos ellos: Interfaces controladas por men y de formularios = GUI Acceso a bases de datos a travs de la web 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (5) Lenguajes de consulta usuarios ocasionales Interfaces de lenguajes de programacin programadores de aplicaciones Formularios y comandos usuarios paramtricos Interfaces controladas por men y de lenguaje natural usuarios autnomos
  • Diapositiva 22
  • Tema 1. Sistemas de bases de datos22 Representacin de relaciones complejas entre datos Datos relacionados entre s de diversas maneras El registro (Planeta,...) del fichero EDITORIAL se relaciona con 2 registros del fichero LIBRO : (..., El retrato de Dorian Gray,...) y (..., Once minutos,...) Cada registro de PRESTAMO se relaciona con un registro de PERSONA y con un registro de LIBRO Cada registro de AUTOR se relaciona con varios registros de LIBRO SGBD debe permitir... Representar relaciones entre los datos Obtener y Actualizar datos relacionados Obtener los ttulos y editorial de los libros escritos por Arthur Conan Doyle Obtener nombres y telfonos de personas con libros prestados ms de cinco meses 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (6)
  • Diapositiva 23
  • Tema 1. Sistemas de bases de datos23 Respaldo y Recuperacin Recuperacin del sistema tras fallos del hardware o software Subsistema del SGBD encargado de respaldo y recuperacin SGBD Programa de ACTUALIZACIN de datos Estado INICIAL BD ok Estado FINAL BD ok Continuacin y Finalizacin Correcta del programa Restauracin de la BD Deshacer toda actualizacin de datos hecha por el programa BD KO !! XOR 1.1 Bases de datos y sus usuarios Ventajas del uso de un SGBD (y 7)
  • Diapositiva 24
  • Tema 1. Sistemas de bases de datos24 Datos compartidos actualizados Datos disponibles para todos los usuarios El cambio de datos por un usuario es visto inmediatamente por el resto Subsistemas de control de concurrencia y recuperacin del SGBD Flexibilidad SGBD permite cambios en la estructura de BD, sin afectar... Datos almacenados Programas de aplicacin existentes 1.1 Bases de datos y sus usuarios Otras ventajas del enfoque de bases de datos (1) Cambios en Requisitos Nuevas Necesidades de datos modificaciones en estructura de la BD
  • Diapositiva 25
  • Tema 1. Sistemas de bases de datos25 Rpida creacin de nuevas aplicaciones Cumplimiento de reglas, normas o polticas de empresa ABD establece normas para usuarios de la base de datos Intercambio de informacin y cooperacin entre departamentos, proyectos... Estndares para nombres y formatos de elementos de datos documentacin, formularios, informes... Diseo e implementacin inicial costosos APL-1 APL-3 APL-2 1.1 Bases de datos y sus usuarios Otras ventajas del enfoque de bases de datos (y 2)
  • Diapositiva 26
  • Tema 1. Sistemas de bases de datos26 Hay situaciones en las que emplear un SGBD puede generar costes innecesarios, evitables con el procesamiento de ficheros Costes adicionales debidos a... Gran inversin inicial en equipo, software y formacin Generalidad ofrecida por el SGBD para definir y procesar datos Funciones de seguridad, control de concurrencia, recuperacin, integridad Problemas adicionales si... Diseadores o ABD no han diseado la base de datos apropiadamente La implementacin de las aplicaciones no es correcta Conviene utilizar procesamiento de ficheros si... BD y aplicaciones son simples, bien definidas y no se espera que cambien Requisitos de tiempo real que no se cumpliran por el coste extra del SGBD No se necesita acceso multiusuario a los datos 1.1 Bases de datos y sus usuarios Cundo NO usar un SGBD
  • Diapositiva 27
  • Tema 1. Sistemas de bases de datos27 Objetivo del enfoque de BD: Visin abstracta de datos Ocultar detalles de almacenamiento y mantenimiento Modelos de datos para conseguir abstraccin Modelo de Datos: conjunto de conceptos Sirve para describir la estructura de la BD: Tipos de los datos Relaciones entre los datos Restricciones que deben cumplir los datos Incluye operaciones bsicas para especificar lectura/modificacin Tipos de modelos de datos Segn conceptos que ofrecen para describir la estructura de la BD 1.2 Conceptos y arquitectura del sistema de bases de datos Modelos de datos, esquemas e instancias
  • Diapositiva 28
  • Tema 1. Sistemas de bases de datos28 Conceptos cercanos a cmo el usuario percibe la realidad (minimundo) Realidad descrita como entidades que se relacionan entre s Entidad: cosa | objeto | concepto del minimundo Atributo: propiedad interesante de alguna entidad Relacin: asociacin | vnculo | interaccin entre entidades Modelo Entidad/Relacin, MER (ERM, entity-relationship model) Modelos Orientados a Objetos (UML, Unified Modeling Language) Modelo CONCEPTUAL de Datos Esquema Conceptual Mundo Real 1.2 Conceptos y arquitectura del SBD Modelos de datos de alto nivel o conceptuales
  • Diapositiva 29
  • Tema 1. Sistemas de bases de datos29 Permiten describir la estructura lgica global: descripcin de la implementacin Conceptos entendibles por usuarios finales, pero no lejos de organizacin fsica de datos Ocultan detalles de implementacin, pero conceptos implementables directamente en el sistema Los ms utilizados en los SGBD comerciales actuales (ORACLE) Modelos basados en registros Relacional, Red, Jerrquico Modelos orientados a objetos Modelos lgicos prximos a los conceptuales 1.2 Conceptos y arquitectura del SBD Modelos de datos de representacin o lgicos (1)
  • Diapositiva 30
  • Tema 1. Sistemas de bases de datos30 MODELO RELACIONAL 1.2 Conceptos y arquitectura del SBD Modelos de datos de representacin o lgicos (y 2) CLIENTE CUENTA nombredireccinciudadcuenta Garca, AGran Va, 6Murcia200 Lpez, BRonda Norte, 3Murcia821 Azorn, CPaseo Nuevo, 9Valencia505 Prez, CPlaza Mayor, 2Valencia505... nmerosaldo... 20035 50540 82150... Cada cliente slo puede tener una cuenta a su nombre. Una cuenta puede tener ms de un cliente como titular.
  • Diapositiva 31
  • Tema 1. Sistemas de bases de datos31 Conceptos que describen detalles de almacenamiento de los datos Dirigidos a usuarios especialistas en informtica Describen la estructura fsica de la base de datos: - Formato y ordenamiento de registros en los ficheros de datos - Tamaos de pgina, de bloque,... - Caminos (o estructuras) de acceso a los datos (ficheros ndices, etc.)... 1.2 Conceptos y arquitectura del SBD Modelos de datos de bajo nivel o fsicos
  • Diapositiva 32
  • Tema 1. Sistemas de bases de datos32 Esquema = Descripcin Especificado en el diseo de la BD y rara vez modificado Metainformacin o metadatos Diagrama del Esquema de la BD Representacin del esquema, en un modelo de datos Compuesto de esquemas de tipos de registro (elementos del esquema) LIBRO PRESTAMO... Otra posible representacin: LIBRO ( isbn, titulo, apAutor, nomEdit, ao ) PRESTAMO ( idPer, idLib, fecha )... 1.2 Conceptos y arquitectura del SBD Esquemas, instancias y estado de la base de datos isbntituloapAutornomEditao idPeridLibfecha Un diagrama de esquema slo visualiza algunos aspectos del esquema, pero no muestra muchos otros: tipos de datos, relaciones entre elementos del esquema,...
  • Diapositiva 33
  • Tema 1. Sistemas de bases de datos33 Una base de datos es un conjunto de datos reales relacionados que cambian continuamente Estado de la base de datos Conjunto de datos que contiene la BD en un momento concreto Conjunto de instancias de los elementos del esquema de BD 1 esquema N estados Estado Consistente (ok!!) Satisface estructura y restricciones especificadas en esquema SGBD asegura que todo estado de la BD sea consistente Nomenclatura : Esquema = Intensin ; Estado = Extensin 1.2 Conceptos y arquitectura del SBD Esquemas, instancias y estado de la base de datos
  • Diapositiva 34
  • Tema 1. Sistemas de bases de datos34 Ayuda a conseguir Separacin entre programas y datos Mltiples vistas de usuario Nivel Externo ( vistas )... Nivel Interno Nivel Conceptual... 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas de un SGBD Arquitectura ANSI/X3/SPARC Recuperacin eficiente de datos estructuras de datos complejas para representar la informacin en la BD Complejidad oculta a travs de niveles de abstraccin
  • Diapositiva 35
  • Tema 1. Sistemas de bases de datos35 Nivel Interno Descrito mediante el Esquema Interno, el cual... Define la estructura fsica de almacenamiento de toda la BD Tipos de registros almacenados, Secuencia fsica de los registros, Estructuras de almacenamiento ( hashing,...), Estructuras de acceso ( indexacin,...) etc. Escrito utilizando un Modelo de Datos Fsico Muy cercano al nivel fsico pero no trata con registros fsicos (bloques, pginas, ) ni con unidades como cilindros o pistas. 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas ANSI/X3/SPARC (1)
  • Diapositiva 36
  • Tema 1. Sistemas de bases de datos36 Nivel Conceptual o Lgico Descrito mediante el Esquema Conceptual o Lgico... Define la estructura lgica de toda la BD Entidades, Tipos de datos, Relaciones, Restricciones ( integridad, seguridad,...) Oculta detalles fsicos Escrito usando un Modelo de Datos Conceptual o Lgico Actualmente se considera el uso de dos esquemas en este nivel: Esquema Conceptual: organizativo, cercano al usuario Esquema Lgico: cercano al SGBD 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas ANSI/X3/SPARC (2)
  • Diapositiva 37
  • Tema 1. Sistemas de bases de datos37 Nivel Externo o de Vistas Descrito mediante Esquemas Externos Cada Esquema Externo o Vista... Define la porcin de la BD que interesa a un usuario Para el usuario, esa porcin es la base de datos Pueden existir mltiples vistas del mismo esquema conceptual Varias vistas pueden solaparse entre s Escrito usando Modelo de Datos Conceptual o Lgico 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas ANSI/X3/SPARC (3)
  • Diapositiva 38
  • Tema 1. Sistemas de bases de datos38 SGBD comerciales no distinguen del todo los 3 niveles Algunos incluyen detalles fsicos en el Esquema Conceptual (Lgico) Usan el mismo modelo de datos para especificar Esquemas Externos (vistas) y Esquema Conceptual (lgico) Los 3 niveles son descripciones de datos Los datos reales slo estn en el nivel fsico Correspondencia entre esquemas SGBD (el ABD) Externo Conceptual Conceptual Interno 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas ANSI/X3/SPARC (4)
  • Diapositiva 39
  • Tema 1. Sistemas de bases de datos39 Nivel Externo (Lenguaje de Programacin tipo Pascal) tipo empleado = registro (no acceso al salario) n_empleado: cadena(6); n_depto: cadena(4); fin; Nivel Conceptual (Lenguaje de definicin de datos, LDD) EMPLEADO ( NUMERO_EMPLEADOCARACTER(6) CLAVE PRINCIPAL, NUMERO_DEPARTAMENTOCARACTER(4) NO NULO, SALARIONUMERICO(5) NO NULO ) Nivel Interno EMP_ALMACENADO LONGITUD=20 PREFIJOTIPO=BYTE(6), DESPLAZAMIENTO=0 EMP# TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMP DEPTO#TIPO=BYTE(4), DESPLAZAMIENTO=12 PAGATIPO=PALABRA, DESPLAZAMIENTO=16 1.2 Conceptos y arquitectura del SBD Arquitectura de tres esquemas ANSI/X3/SPARC (y 5)
  • Diapositiva 40
  • Tema 1. Sistemas de bases de datos40 Capacidad de modificar el esquema de un nivel sin tener que cambiar el esquema del nivel inmediato superior Independencia lgica de datos Capacidad de modificar el esquema conceptual... ampliar / reducir la BD modificar restricciones ... sin alterar esquemas externos programas de aplicacin difcil de conseguir 1.2 Conceptos y arquitectura del SBD Independencia de datos (1)
  • Diapositiva 41
  • Tema 1. Sistemas de bases de datos41 Independencia fsica de datos Capacidad de modificar el esquema interno... reestructurar alguna estructura de almacenamiento crear nuevas estructuras de acceso, etc. mejorar rendimiento de la obtencin/actualizacin ... sin alterar esquema conceptual programas de aplicacin es ms fcil de lograr 1.2 Conceptos y arquitectura del SBD Independencia de datos (2)
  • Diapositiva 42
  • Tema 1. Sistemas de bases de datos42 Pero... cmo conseguir la independencia de datos? El Catlogo de SGBD incluye informacin sobre correspondencias entre esquemas Modificacin del esquema de un nivel implica... cambios en la correspondencia entre niveles, y el esquema del nivel superior no vara gracias a la Arquitectura de Tres Niveles Mantenimiento de las correspondencias entre niveles... gasto extra en compilacin / ejecucin de programas menor eficiencia del SGBD Pocos SGBD implementan Arquit. de Tres Niveles completa OK !! 1.2 Conceptos y arquitectura del SBD Independencia de datos (y 3)
  • Diapositiva 43
  • Tema 1. Sistemas de bases de datos43 LDD: lenguaje de definicin de datos Usado por ABD y diseadores para especificar... Esquema Conceptual Esquema Interno si SGBD sin separacin estricta de niveles conceptual e interno Correspondencias entre los anteriores Compilador de LDD: procesa sentencias escritas en LDD, para identificar descripciones de elementos del esquema y almacenarlas en el catlogo del SGBD 1.2 Conceptos y arquitectura del SBD Lenguajes e interfaces de bases de datos Lenguajes del SGBD (1)
  • Diapositiva 44
  • Tema 1. Sistemas de bases de datos44 LDD: lenguaje de definicin de datos (cont.) CREATE TABLE Libro ( isbnCHAR(10) PRIMARY KEY, tituloVARCHAR(60) NOT NULL UNIQUE, apAutorVARCHAR(15) NOT NULL, nomEditVARCHAR(15) NOT NULL, aoNUMERIC(4)... ); 1.2 Conceptos y arquitectura del SBD Lenguajes e interfaces de bases de datos Lenguajes del SGBD (2)
  • Diapositiva 45
  • Tema 1. Sistemas de bases de datos45 LDA: lenguaje de definicin de almacenamiento En SGBD que distinguen entre niveles conceptual e interno, se usa... LDA para especificar Esquema Interno detalles de implementacin de estructuras de almacenamiento y de acceso LDD para especificar el Esquema Conceptual entidades + relaciones + restricciones LDD o LDA para definir Correspondencias entre los anteriores 1.2 Conceptos y arquitectura del SBD Lenguajes del SGBD (3)
  • Diapositiva 46
  • Tema 1. Sistemas de bases de datos46 LDV: lenguaje de definicin de vistas Para conseguir Arquitectura de Tres Esquemas verdadera Usado para especificar Esquemas Externos (o Vistas de usuario) Correspondencias entre Vistas y el Esquema Conceptual No obstante, la mayora de SGBD utilizan LDD para definir vistas CREATE VIEW PrestamoLibro AS SELECT R.fecha, L.titulo, P.nombre FROM PRESTAMO R, LIBRO L, PERSONA P WHERE R.idLib = L.isbn AND R.idPer = P.id; 1.2 Conceptos y arquitectura del SBD Lenguajes del SGBD (4)
  • Diapositiva 47
  • Tema 1. Sistemas de bases de datos47 LMD: lenguaje de manipulacin de datos Obtencin, Insercin, Eliminacin y Modificacin de datos Dos tipos de DML: procedimental y declarativo LMD procedimental, o de bajo nivel Qu datos obtener/manipular y cmo obtenerlos/manipularlos Siempre debe estar empotrado en un LP Es un LMD orientado a registros : Obtiene un solo registro y lo procesa por separado Necesita usar elementos del LP (ej. bucles) para... obtener registro a registro y procesarlos individualmente 1.2 Conceptos y arquitectura del SBD Lenguajes del SGBD (5)
  • Diapositiva 48
  • Tema 1. Sistemas de bases de datos48 LMD declarativo, o de alto nivel Qu datos obtener para manipular y no cmo manipularlos Usado para realizar operaciones complejas de BD... - Interactivamente -- Lenguaje de Consulta - Incorporado en un LP anfitrin (host) -- LMD Empotrado Es un LMD orientado a conjuntos: Obtiene/Actualiza muchos registros con una nica sentencia SELECT titulo, nomEdit, ao FROM Libro WHERE apAutor = Tolkien; INSERT INTO Autor VALUES (Jorge Lus, Borges); DELETE FROM Prestamo WHERE idLib = 8420464988; UPDATE Persona SET telefono = 555111222 WHERE id = 1; SGBD comerciales actuales ofrecen nico lenguaje integrado, mezcla de LDD, LDA, LDV y LMD (como SQL) 1.2 Conceptos y arquitectura del SBD Lenguajes del SGBD (y 6)
  • Diapositiva 49
  • Tema 1. Sistemas de bases de datos49 Programas escritos en un lenguaje (C++, Java,...) anfitrin Dos modos de ejecutar instrucciones LMD desde el lenguaje anfitrin: Usar Interfaz de Programa de Aplicacin (conjunto de procedimientos) ODBC, Open Data Base Connectivity (definido por Microsoft para C ), JDBC, Java Data Base Connectivity Extender la sintaxis del lenguaje anfitrin para incorporar llamadas LMD dentro de los programas Instrucciones LMD precedidas de un carcter especial El preprocesador de LMD convertir estas instrucciones en llamadas a procedimientos normales del lenguaje anfitrin 1.2 Conceptos y arquitectura del SBD un apunte: acceso a BD desde programas de aplicacin
  • Diapositiva 50
  • Tema 1. Sistemas de bases de datos50 Basadas en mens Basadas en formularios Grficas De lenguaje natural Para usuarios paramtricos Para el ABD (rdenes privilegiadas) Crear/eliminar cuentas de usuario y establecer autorizaciones Establecer parmetros de ajuste del rendimiento del sistema Modificacin de esquemas y correspondencias Acceso al catlogo Reorganizar estructura de almacenamiento de la BD Realizar/restaurar copias de seguridad ... 1.2 Conceptos y arquitectura del SBD Interfaces del SGBD
  • Diapositiva 51
  • Tema 1. Sistemas de bases de datos51 Arquitectura de los paquetes software de SGBD Los actuales tienen un diseo modular, segn una arquitectura cliente-servidor (dos capas) 1.3 Estructura general del sistema de bases de datos Mdulos componentes de un SGBD (1) Programas de aplicacin Interfaces (GUI) de acceso a BD SGBD BD SERVIDOR -Red de larga distancia (WAN) -Red de rea local (LAN) -Lneas telefnicas -Dispositivos de comunicacin por satlite USUARIOS Terminal Estacin de trabajo PC CLIENTE
  • Diapositiva 52
  • Tema 1. Sistemas de bases de datos52 Compilador de Consultas Sentencias LMD interactivas Anlisis Sintctico Optimizacin Compilador de Consultas Procesador de Consultas 1.3 Estructura general del sistema de bases de datos Mdulos componentes de un SGBD (2)
  • Diapositiva 53
  • Tema 1. Sistemas de bases de datos53 Precompilador y compilador de LMD Programa escrito en LP HOST + LMD embebido Sentencias LMDSentencias LP Compilador de LMD Compilador del LP HOST Precompilador de LMD Cdigo Objeto (del LP) Cdigo Objeto (del LMD) Enlazador Transaccin programada ejecutable Procesador de Consultas 1.3 Estructura general del SBD Mdulos componentes de un SGBD (3)
  • Diapositiva 54
  • Tema 1. Sistemas de bases de datos54 Compilador de LDD Procesa definiciones de esquemas escritas en LDD Almacena descripciones de los esquemas en el catlogo Otros mdulos del SGBD necesitan conocer estos metadatos Definicin de Esquema de BD escrito en LDD Compilador de LDD BD SO 1.3 Estructura general del SBD Mdulos componentes de un SGBD (4)
  • Diapositiva 55
  • Tema 1. Sistemas de bases de datos55 Procesador de Consultas Solicitudes de RECUPERACIN y ACTUALIZACIN Procesador de Consultas Gestor de Datos Almacenados BD SO 1.3 Estructura general del SBD Mdulos componentes de un SGBD (5)
  • Diapositiva 56
  • Tema 1. Sistemas de bases de datos56 Subsistemas de control de... Concurrencia y Recuperacin - Gestor de transacciones Asegurar consistencia y coherencia de datos frente actualizaciones simultneas de datos por mltiples usuarios Detectar fallos o cadas del sistema y Restaurar la BD a un estado consistente Integridad y Seguridad Son correctas las actualizaciones de los datos? Detectar violacin de Restricciones de Integridad y realizar accin de recuperacin de la integridad de datos Se cumplen las restricciones de seguridad de acceso? Comprobar las autorizaciones de acceso al SBD y a los datos 1.3 Estructura general del SBD Mdulos componentes de un SGBD (6)
  • Diapositiva 57
  • Tema 1. Sistemas de bases de datos57 Gestor de datos almacenados y memoria intermedia Control de acceso a informacin almacenada (datos y metadatos) Puede emplear servicios bsicos del SO para la transferencia de datos a bajo nivel: disco memoria principal Maneja los buffers de memoria (almacenam. intermedio) Gestor de Datos Almacenados BD SO 1.3 Estructura general del SBD Mdulos componentes de un SGBD (7)
  • Diapositiva 58
  • Tema 1. Sistemas de bases de datos58 Estructuras de Datos Ficheros de datos en disco Catlogo: metadatos acerca de... Estructura de BD, Restricciones de Integridad y de Autorizacin, etc. Acceso Continuo por diferentes mdulos del SGBD Necesario buen diseo e implementacin eficiencia Estructuras de acceso (agilizan el acceso a los datos) Datos estadsticos sobre los datos en la BD Usados para optimizacin de consultas Suele considerarse contenidos en el catlogo BD SO 1.3 Estructura general del SBD Mdulos componentes de un SGBD (y 8)
  • Diapositiva 59
  • Tema 1. Sistemas de bases de datos59 SGBD = componente software ms importante pero no es el nico ! Carga de datos Intercambio de informacin entre BD de diferente tipo ( Oracle Access ) Respaldo Reorganizacin de ficheros de la BD Para mejorar rendimiento del sistema Monitorizacin Vigilancia del funcionamiento del sistema y su rendimiento Datos estadsticos que el ABD usa para tomar decisiones de ajuste y mejora del sistema Control de Accesos de usuario Acceso al Diccionario de datos Otras utilidades ordenamiento, compresin de ficheros, etc... 1.3 Estructura general del SBD Utilidades del sistema de bases de datos
  • Diapositiva 60
  • Tema 1. Sistemas de bases de datos60 Segn el Modelo de Datos en el que est basado Relacional, Red, Jerrquico, Orientado a Objetos, Objeto/Relacional,... Segn el n de usuarios simultneos Monousuario Multiusuario Segn el n de lugares en que se almacenan datos Centralizado Distribuido (SGBDD) SGBDD homogneo: mismo software de SGBD en todos los sitios SGBDD heterogneo (ej. Multi-Base de Datos o BD Federadas) Segn su propsito de propsito General de propsito Especfico: construido para un tipo concreto de aplicaciones Anexo 1. CLASIFICACIN DE LOS SGBD