Tema1 Bd Completo 2013 1

59
 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. Clasificación de los SGBD Tema 1. Sistemas de bases de datos 1 1. Sistemas de bases de datos

description

Tema de BBDD completo

Transcript of Tema1 Bd Completo 2013 1

  • 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 datos 1

    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. 2nd 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 datos 2

    1. Sistemas de bases de datos

  • Base de Datos (BD)

    Conjunto de datos relacionados entre s demasiado general Dato= algo conocido que quiere registrarse

    Tema 1. Sistemas de bases de datos 3

    1.1 Bases de datos y sus usuarios

    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

  • Tema 1. Sistemas de bases de datos 4

    1.1 Bases de datos y sus usuarios

    Un ejemplo

    de una base

    de datos

    personal

    LIBRO

    AUTOR

    isbn titulo apAutor nomEdit ao

    8420464988 Momo Ende Alfaguara 1982

    8408049003 El retrato de Dorian Gray Wilde Planeta 2003

    8477205302 El alquimista Coelho Obelisco 1996

    8420432261 La historia interminable Ende Alfaguara 1998

    8420616524 El fantasma de Canterville Wilde Alianza 1996

    8408048783 Once minutos Coelho Planeta 2003

    ... ... ... ... ...

    nombre apellidos ...

    Paulo Coelho ...

    Oscar Wilde ...

    Michael Ende ...

    ... ... ...

    EDITORIAL

    nombre ...

    Obelisco ...

    Alfaguara ...

    Planeta ...

    Alianza ...

    ... ...

    PERSONA

    id nombre telfono

    2 Julia Ibez 555123456

    10 Eva Andrs 555654321

    ... ... ...

    3 Cristina Prats 555987654

    1 Gins Soriano 555221122

    PRESTAMO

    idPer idLib fecha

    10 8408049003 23/9/03

    3 8408048783 1/10/03

    10 8420464988 2/3/03

    1 8420432261 10/8/02

    ... ... ...

  • 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 datos 5

    1.1 Bases de datos y sus usuarios

  • Tema 1. Sistemas de bases de datos 6

    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

  • Tema 1. Sistemas de bases de datos 7

    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)

  • Tema 1. Sistemas de bases de datos 8

    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)

  • Tema 1. Sistemas de bases de datos 9

    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 Bibliotecario Lector BD

    1.1 Bases de datos y sus usuarios

    Caractersticas del enfoque de Bases de Datos (y 3)

  • Tema 1. Sistemas de bases de datos 10

    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)

  • Tema 1. Sistemas de bases de datos 11

    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)

  • Tema 1. Sistemas de bases de datos 12

    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)

  • Tema 1. Sistemas de bases de datos 13

    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)

  • Tema 1. Sistemas de bases de datos 14

    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)

  • Tema 1. Sistemas de bases de datos 15

    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)

  • Tema 1. Sistemas de bases de datos 16

    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)

  • Tema 1. Sistemas de bases de datos 17

    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 imposible fecha = 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)

  • Tema 1. Sistemas de bases de datos 18

    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)

  • Tema 1. Sistemas de bases de datos 19

    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)

  • Tema 1. Sistemas de bases de datos 20

    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

  • Tema 1. Sistemas de bases de datos 21

    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)

  • Tema 1. Sistemas de bases de datos 22

    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)

  • Tema 1. Sistemas de bases de datos 23

    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

  • Tema 1. Sistemas de bases de datos 24

    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)

  • Tema 1. Sistemas de bases de datos 25

    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

  • Tema 1. Sistemas de bases de datos 26

    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

  • Tema 1. Sistemas de bases de datos 27

    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

  • Tema 1. Sistemas de bases de datos 28

    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)

  • Tema 1. Sistemas de bases de datos 29

    MODELO RELACIONAL

    1.2 Conceptos y arquitectura del SBD

    Modelos de datos de representacin o lgicos (y 2)

    CLIENTE

    CUENTA

    nombre direccin ciudad cuenta

    Garca, A Gran Va, 6 Murcia 200

    Lpez, B Ronda Norte, 3 Murcia 821

    Azorn, C Paseo Nuevo, 9 Valencia 505

    Prez, C Plaza Mayor, 2 Valencia 505

    ...

    nmero saldo ...

    200 35

    505 40

    821 50

    ...

    Cada cliente slo puede tener una cuenta a su nombre.

    Una cuenta puede tener ms de un cliente como titular.

  • Tema 1. Sistemas de bases de datos 30

    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

  • Tema 1. Sistemas de bases de datos 31

    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

    isbn titulo apAutor nomEdit ao

    idPer idLib fecha

    Un diagrama de esquema slo visualiza algunos aspectos del esquema, pero no muestra muchos otros: tipos de datos, relaciones entre elementos del esquema,...

  • Tema 1. Sistemas de bases de datos 32

    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

  • Tema 1. Sistemas de bases de datos 33

    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

  • Tema 1. Sistemas de bases de datos 34

    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)

  • Tema 1. Sistemas de bases de datos 35

    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)

  • Tema 1. Sistemas de bases de datos 36

    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)

  • Tema 1. Sistemas de bases de datos 37

    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)

  • Tema 1. Sistemas de bases de datos 38

    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_EMPLEADO CARACTER(6) CLAVE PRINCIPAL,

    NUMERO_DEPARTAMENTO CARACTER(4) NO NULO,

    SALARIO NUMERICO(5) NO NULO )

    Nivel Interno

    EMP_ALMACENADO LONGITUD=20

    PREFIJO TIPO=BYTE(6), DESPLAZAMIENTO=0

    EMP# TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMP

    DEPTO# TIPO=BYTE(4), DESPLAZAMIENTO=12

    PAGA TIPO=PALABRA, DESPLAZAMIENTO=16

    1.2 Conceptos y arquitectura del SBD

    Arquitectura de tres esquemas ANSI/X3/SPARC (y 5)

  • Tema 1. Sistemas de bases de datos 39

    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)

  • Tema 1. Sistemas de bases de datos 40

    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)

  • Tema 1. Sistemas de bases de datos 41

    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)

  • Tema 1. Sistemas de bases de datos 42

    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)

  • Tema 1. Sistemas de bases de datos 43

    LDD: lenguaje de definicin de datos (cont.)

    CREATE TABLE Libro (

    isbn CHAR(10) PRIMARY KEY,

    titulo VARCHAR(60) NOT NULL UNIQUE,

    apAutor VARCHAR(15) NOT NULL,

    nomEdit VARCHAR(15) NOT NULL,

    ao NUMERIC(4)

    ... );

    1.2 Conceptos y arquitectura del SBD

    Lenguajes e interfaces de bases de datos

    Lenguajes del SGBD (2)

  • Tema 1. Sistemas de bases de datos 44

    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)

  • Tema 1. Sistemas de bases de datos 45

    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)

  • Tema 1. Sistemas de bases de datos 46

    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)

  • Tema 1. Sistemas de bases de datos 47

    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)

  • Tema 1. Sistemas de bases de datos 48

    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

  • Tema 1. Sistemas de bases de datos 49

    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

  • Tema 1. Sistemas de bases de datos 50

    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

  • Tema 1. Sistemas de bases de datos 51

    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)

  • Tema 1. Sistemas de bases de datos 52

    Precompilador y compilador de LMD

    Programa escrito en LP HOST + LMD embebido

    Sentencias LMD Sentencias 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)

  • Tema 1. Sistemas de bases de datos 53

    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)

  • Tema 1. Sistemas de bases de datos 54

    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)

  • Tema 1. Sistemas de bases de datos 55

    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)

  • Tema 1. Sistemas de bases de datos 56

    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)

  • Tema 1. Sistemas de bases de datos 57

    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)

  • Tema 1. Sistemas de bases de datos 58

    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

  • Tema 1. Sistemas de bases de datos 59

    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