Vous êtes sur la page 1sur 30

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 datos

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.1 Bases de datos y sus usuarios


Base de Datos (BD)
Conjunto de datos relacionados entre s Dato= algo conocido que quiere registrarse Por qu esta transparencia no es una BD? Porque se tienen unas propiedades implcitas:
Conjunto de datos persistentes lgicamente coherente, con significado implcito Representa aspectos del mundo real (minimundo, universo de discurso) Se DISEA, se CREA y se CARGA, para conseguir objetivos determinados Dirigida a un grupo de usuarios
Tema 1. Sistemas de bases de datos

demasiado general

Los cambios en el minimundo se reflejan en la BD Datos ALMACENADOS para algo Datos INTERESANTES para alguien
3

1.1 Bases de datos y sus usuarios


Un ejemplo de una base de datos personal
EDITORIAL nombre ... Obelisco Planeta Alianza ... LIBRO isbn
8420464988 Momo 8408049003 El retrato de Dorian Gray 8477205302 El alquimista 8420432261 La historia interminable 8408048783 Once minutos
... ... de bases de datos Tema 1. Sistemas

AUTOR nombre apellidos ... Paulo Oscar ... Coelho Wilde ... ... ... ... ...

PERSONA id nombre 2 Julia Ibez 10 Eva Andrs ... ... 3 1 Cristina Prats

telfono
555123456 555654321 ... 555987654

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

Alfaguara ...

Michael Ende

Gins Soriano 555221122

titulo

apAutor nomEdit Ende Wilde Coelho Ende Coelho ... Planeta Obelisco Alianza Planeta ...

ao
2003 1996

Alfaguara 1982

PRESTAMO idPer idLib 10 3 10 1 ...

fecha

8408049003 23/9/03 8408048783 1/10/03 8420464988 2/3/03 8420432261 10/8/02

Alfaguara 1998
1996 2003

8420616524 El fantasma de Canterville Wilde

...

...

...
4

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

Entorno simplificado de un Sistema de Base de Datos


SISTEMA DE BASE DE DATOS

Usuarios / Programadores Programas de Aplicacin / Consultas

SOFTWARE DEL SGBD Software para procesar Consultas / Programas Software para tener acceso a los datos almacenados

Definicin de la BD (Metadatos)

Base de Datos almacenada

Tema 1. Sistemas de bases de datos

1.1 Bases de datos y sus usuarios


Caractersticas del enfoque de Bases de Datos (1) 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)
Tema 1. Sistemas de bases de datos 7

1.1 Bases de datos y sus usuarios


Caractersticas del enfoque de Bases de Datos (2) 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 )

Tema 1. Sistemas de bases de datos

1.1 Bases de datos y sus usuarios


Caractersticas del enfoque de Bases de Datos (y 3) 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

Bibliotecario
Tema 1. Sistemas de bases de datos

BD

SBD BIBLIOTECA

Lector
9

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos (1) 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

Tema 1. Sistemas de bases de datos

10

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos (2) 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)

Tema 1. Sistemas de bases de datos

11

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos (3) 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
Tema 1. Sistemas de bases de datos 12

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos (4) 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

Tema 1. Sistemas de bases de datos

13

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos (5)
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

Tema 1. Sistemas de bases de datos

14

1.1 Bases de datos y sus usuarios


Actores en un sistema de base de datos ( y 6) 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 ...

Tema 1. Sistemas de bases de datos

15

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (1)
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
Tema 1. Sistemas de bases de datos 16

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (2)
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
Tema 1. Sistemas de bases de datos 17

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (3)
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


18

Tema 1. Sistemas de bases de datos

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (4)
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 ...

Tema 1. Sistemas de bases de datos

19

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (5)
Suministro de mltiples interfaces de usuario
Usuarios con diferentes niveles de conocimientos tcnicos El SGBD debe ofrecer interfaces para todos ellos: Lenguajes de consulta Interfaces de lenguajes de programacin Formularios y comandos Interfaces controladas por men y de lenguaje natural usuarios ocasionales programadores de aplicaciones usuarios paramtricos usuarios autnomos

Interfaces controladas por men y de formularios = GUI Acceso a bases de datos a travs de la web

Tema 1. Sistemas de bases de datos

20

10

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (6)
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
Tema 1. Sistemas de bases de datos 21

1.1 Bases de datos y sus usuarios


Ventajas del uso de un SGBD (y 7)
Respaldo y Recuperacin
Recuperacin del sistema tras fallos del hardware o software Subsistema del SGBD encargado de respaldo y recuperacin
Programa de ACTUALIZACIN de datos BD KO !! Estado FINAL

Estado INICIAL

BD ok

BD ok

Restauracin de la BD
Deshacer toda actualizacin de datos hecha por el programa
Tema 1. Sistemas de bases de datos

XOR SGBD

Continuacin y Finalizacin Correcta


del programa

22

11

1.1 Bases de datos y sus usuarios


Otras ventajas del enfoque de bases de datos (1)
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

Cambios en Requisitos

Nuevas Necesidades de datos


modificaciones en

estructura de la BD SGBD permite cambios en la estructura de BD, sin afectar... Datos almacenados Programas de aplicacin existentes
Tema 1. Sistemas de bases de datos 23

1.1 Bases de datos y sus usuarios


Otras ventajas del enfoque de bases de datos (y 2)
Rpida creacin de nuevas aplicaciones
APL-1

Diseo e implementacin inicial costosos

APL-3

APL-2

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 ...
Tema 1. Sistemas de bases de datos 24

12

1.1 Bases de datos y sus usuarios


Cundo NO usar un SGBD
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

Tema 1. Sistemas de bases de datos

25

1.2 Conceptos y arquitectura del sistema de bases de datos


Modelos de datos, esquemas e instancias 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
Tema 1. Sistemas de bases de datos 26

13

1.2 Conceptos y arquitectura del SBD


Modelos de datos de alto nivel o conceptuales

Mundo Real

Modelo CONCEPTUAL de Datos

Esquema Conceptual

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)
Tema 1. Sistemas de bases de datos 27

1.2 Conceptos y arquitectura del SBD


Modelos de datos de representacin o lgicos (1)
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

Tema 1. Sistemas de bases de datos

28

14

1.2 Conceptos y arquitectura del SBD


Modelos de datos de representacin o lgicos (y 2) MODELO RELACIONAL
Cada cliente slo puede tener una cuenta a su nombre. Una cuenta puede tener ms de un cliente como titular.

CUENTA nmero saldo ...


200 505 821 ... 35 40 50

CLIENTE nombre
Garca, A Lpez, B Azorn, C Prez, C ...
Tema 1. Sistemas de bases de datos

direccin Gran Va, 6 Ronda Norte, 3 Paseo Nuevo, 9 Plaza Mayor, 2

ciudad Murcia Murcia Valencia Valencia

cuenta 200 821 505 505


29

1.2 Conceptos y arquitectura del SBD


Modelos de datos de bajo nivel o fsicos
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.) ...

Tema 1. Sistemas de bases de datos

30

15

1.2 Conceptos y arquitectura del SBD


Esquemas, instancias y estado de la base de datos 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 isbn titulo apAutor nomEdit ao

PRESTAMO idPer idLib fecha ... Otra posible representacin: LIBRO ( isbn, titulo, apAutor, nomEdit, ao ) PRESTAMO ( idPer, idLib, fecha ) ...
Tema 1. Sistemas de bases de datos

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

1.2 Conceptos y arquitectura del SBD


Esquemas, instancias y estado de la base de datos 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
Tema 1. Sistemas de bases de datos 32

16

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas de un SGBD Recuperacin eficiente de datos estructuras de datos complejas para representar la informacin en la BD Complejidad oculta a travs de niveles de abstraccin Arquitectura ANSI/X3/SPARC
... ...

Ayuda a conseguir
Separacin entre programas y datos Mltiples vistas de usuario

Nivel Externo (vistas) Nivel Conceptual Nivel Interno

Tema 1. Sistemas de bases de datos

33

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas ANSI/X3/SPARC (1) 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.

Tema 1. Sistemas de bases de datos

34

17

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas ANSI/X3/SPARC 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,...) (2)

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

Tema 1. Sistemas de bases de datos

35

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas ANSI/X3/SPARC 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
(3)

Tema 1. Sistemas de bases de datos

36

18

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas ANSI/X3/SPARC
(4)

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


Externo Conceptual Conceptual Interno

SGBD (el ABD)

Tema 1. Sistemas de bases de datos

37

1.2 Conceptos y arquitectura del SBD


Arquitectura de tres esquemas ANSI/X3/SPARC
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 ) (y 5)

Nivel Interno

EMP_ALMACENADO PREFIJO EMP# DEPTO# PAGA


Tema 1. Sistemas de bases de datos

LONGITUD=20 TIPO=BYTE(6), DESPLAZAMIENTO=0 TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMP TIPO=BYTE(4), DESPLAZAMIENTO=12 TIPO=PALABRA, DESPLAZAMIENTO=16
38

19

1.2 Conceptos y arquitectura del SBD


Independencia de datos (1)
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
Tema 1. Sistemas de bases de datos 39

1.2 Conceptos y arquitectura del SBD


Independencia de datos (2) 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

Tema 1. Sistemas de bases de datos

40

20

1.2 Conceptos y arquitectura del SBD


Independencia de datos (y 3) 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

OK !!

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
Tema 1. Sistemas de bases de datos 41

1.2 Conceptos y arquitectura del SBD


Lenguajes e interfaces de bases de datos Lenguajes del SGBD (1) 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

Tema 1. Sistemas de bases de datos

42

21

1.2 Conceptos y arquitectura del SBD


Lenguajes e interfaces de bases de datos Lenguajes del SGBD (2) LDD: lenguaje de definicin de datos (cont.)
CREATE TABLE Libro ( isbn CHAR(10) titulo VARCHAR(60) apAutor VARCHAR(15) nomEdit VARCHAR(15) ao NUMERIC(4) ... ); PRIMARY KEY, NOT NULL UNIQUE, NOT NULL, NOT NULL,

Tema 1. Sistemas de bases de datos

43

1.2 Conceptos y arquitectura del SBD


Lenguajes del SGBD (3) 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

Tema 1. Sistemas de bases de datos

44

22

1.2 Conceptos y arquitectura del SBD


Lenguajes del SGBD (4) 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;

Tema 1. Sistemas de bases de datos

45

1.2 Conceptos y arquitectura del SBD


Lenguajes del SGBD (5) 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

Tema 1. Sistemas de bases de datos

46

23

1.2 Conceptos y arquitectura del SBD


Lenguajes del SGBD (y
6)

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)
Tema 1. Sistemas de bases de datos 47

1.2 Conceptos y arquitectura del SBD


un apunte: acceso a BD desde programas de aplicacin Programas escritos en un lenguaje (C++, Java, ...) anfitrin Dos modos de ejecutar instrucciones LMD desde el lenguaje anfitrin:
Usar Interfaz de Programa de Aplicacin
JDBC, Java Data Base Connectivity
(conjunto de procedimientos)

ODBC, Open Data Base Connectivity (definido por Microsoft para C),

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

Tema 1. Sistemas de bases de datos

48

24

1.2 Conceptos y arquitectura del SBD


Interfaces del SGBD 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 ...
49

Tema 1. Sistemas de bases de datos

1.3 Estructura general del sistema de bases de datos


Mdulos componentes de un SGBD (1) Arquitectura de los paquetes software de SGBD Los actuales tienen un diseo modular, segn una arquitectura cliente-servidor (dos capas)
Terminal Estacin de trabajo PC Programas de aplicacin Interfaces (GUI) de acceso a BD
Tema 1. Sistemas de bases de datos

SGBD BD

SERVIDOR
USUARIOS

CLIENTE

Red de larga distancia (WAN) Red de rea local (LAN) Lneas telefnicas Dispositivos de comunicacin por satlite

50

25

1.3 Estructura general del sistema de bases de datos


Mdulos componentes de un SGBD (2) Compilador de Consultas
Sentencias LMD interactivas

Compilador de Consultas

Anlisis Sintctico Optimizacin

Procesador de Consultas

Tema 1. Sistemas de bases de datos

51

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (3) Precompilador y compilador de LMD
Sentencias LMD Programa escrito en LP HOST + LMD embebido

Precompilador de LMD

Sentencias LP Compilador del LP HOST

Compilador de LMD
Cdigo Objeto (del LMD) Enlazador Transaccin programada ejecutable
Tema 1. Sistemas de bases de datos

Cdigo Objeto (del LP)

Procesador de Consultas
52

26

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (4) 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
Tema 1. Sistemas de bases de datos 53

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (5) Procesador de Consultas
Solicitudes de RECUPERACIN y ACTUALIZACIN

Procesador de Consultas

Gestor de Datos Almacenados

BD SO
Tema 1. Sistemas de bases de datos 54

27

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (6) 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
Tema 1. Sistemas de bases de datos 55

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (7) 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

SO
Tema 1. Sistemas de bases de datos

BD
56

28

1.3 Estructura general del SBD


Mdulos componentes de un SGBD (y 8) Estructuras de Datos
Ficheros de datos en disco Catlogo: metadatos acerca de... SO BD

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

Tema 1. Sistemas de bases de datos

57

1.3 Estructura general del SBD


Utilidades del sistema de bases de datos 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...
Tema 1. Sistemas de bases de datos 58

29

Anexo 1. CLASIFICACIN DE LOS SGBD


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
Tema 1. Sistemas de bases de datos 59

30