tema1 bd completo 2013 1
DESCRIPTION
Tema de BBDD completoTRANSCRIPT
-
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