tema 1. sistemas de bases de datos 1 informÁtica ii contenidos 1.1 bases de datos y sus usuarios...

58
Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II INFORMÁTICA II 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 1. Sistemas de Bases de 1. Sistemas de Bases de Datos Datos

Upload: benedicto-concepcion

Post on 10-Feb-2015

14 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 1

INFORMÁTICA IIINFORMÁTICA II

Contenidos1.1 Bases de datos y sus usuarios1.2 Conceptos y arquitectura del sistema de bases de

datos1.3 Estructura general del sistema de bases de datos

Anexos1. Clasificación de los SGBD

1. Sistemas de Bases de 1. Sistemas de Bases de DatosDatos

Page 2: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 3

• Base de Datos (BD)

”Conjunto de datos relacionados entre sí” demasiado general

Dato= algo conocido que quiere registrarse

¿Por qué esta transparencia no es una BD? Porque se tienen unas propiedades implícitas:

1.1 Bases de datos y sus usuarios

Conjunto de datos persistentes lógicamente coherente, con significado implícito

Representa aspectos del mundo real (minimundo, universo de discurso)

Los cambios en el “minimundo” se “reflejan” en la BD

Se DISEÑA, se CREA y se CARGA, para conseguir objetivos determinados

Datos ALMACENADOS para “algo”

Dirigida a un grupo de usuariosDatos INTERESANTES para “alguien”

Page 3: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 año

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 teléfono

2 Julia Ibáñez 555123456

10 Eva Andrés 555654321

... ... ...

3 Cristina Prats 555987654

1 Ginés Soriano 555221122PRESTAMO

idPer idLib fecha

10 8408049003

23/9/03

3 8408048783

1/10/03

10 8420464988

2/3/03

1 8420432261

10/8/02

... ... ...

Page 4: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

5

Sistema de Gestión 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 algún medio de almacenamiento controlado por el SGBD

– Manipular la BD es... • consultar datos• introducir/modificar/eliminar datos, para reflejar cambios en el “sistema”• generar informes a partir de los datos almacenados

Sistema de Base de DatosSBD = BD + SGBD + Software de Aplicación/ConsultasSBD = BD + SGBD + Software de Aplicación/Consultas

1.1 Bases de datos y sus usuarios

Page 5: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 Aplicación / Consultas

SISTEMA DE BASE DE DATOS

Usuarios / Programadores

Definición de la BD

(Metadatos)

Base de Datos

almacenada

Entorno simplificado de un Sistema de Base de Datos

Page 6: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 7

Naturaleza auto descriptiva Procesamiento de archivos

• Los programas de aplicación acceden a datos específicos, cuya estructura se describe en el propio código

Sistemas de bases de datos• SGBD = Sistema software de propósito general

BD = DATOS + METADATOS• El Catálogo del Sistema ...

– Contiene metadatos: descripción de la estructura de la BD

El SGBD “sabrá” acceder a datos de cualquier aplicación

– Usado por el SGBD (a veces por usuarios)

1.1 Bases de datos y sus usuarios

Características del enfoque de Bases de Datos (1)

Page 7: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 8

Separación entre programas y datos Procesamiento de archivos

• Definición de datos forma parte de los programas de aplicación

• Cambios en la estructura de archivos de la BD modificación de programas que acceden a tales ficheros

Sistemas de bases de datos• Descripción de estructura y organización de archivos

almacenada en Catálogo, separada de los programas

Independencia entre programas y datos

( posible gracias a la abstracción de datos proporcionada por SGBD)

1.1 Bases de datos y sus usuarios

Características del enfoque de Bases de Datos (2)

Page 8: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 9

Datos compartidos y procesamiento de transacciones multiusuario

• Acceso simultáneo a datos sin interferencias ni inconsistencias

• Control de concurrencia por el SGBD

Múltiples vistas de los datos• Cada usuario sólo interesado en ver la parte de la

información que necesita vista de la BD

• Vista = [ Subconjunto de ] BD [+ datos virtuales]

• SGBD proporciona mecanismos de definición de vistas

SBD BIBLIOTECABibliotecario LectorBD

1.1 Bases de datos y sus usuarios

Características del enfoque de Bases de Datos (y 3)

Page 9: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 10

Administrador de la base de datos (ABD)

– Responsable de administrar los recursos del SBD (nivel técnico):

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 métodos 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 técnico al usuario (respuesta lenta del

sistema...)

• Adquirir los recursos software y hardware necesarios

1.1 Bases de datos y sus usuariosActores en un sistema de base de datos (1)

Page 10: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 11

Diseñadores de la base de datosAntes de implementar la BD, interactúan 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

• Diseño final de BD que satisface necesidades de todos los usuarios (resultado de la integración de las diferentes vistas)

1.1 Bases de datos y sus usuarios

Actores en un sistema de base de datos (2)

Page 11: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 12

Usuarios finales– Ocasionales o Sofisticados

• Acceso esporádico y distinto cada vez; usan lenguaje de consulta

– Paramétricos o Normales• Accesos constantes, repetitivos

• Usan “transacciones programadas” para ellos

– Avanzados o Especializados• Implementan sus propias aplicaciones especializadas para

cumplir sus complejos requisitos

• Ingenieros, científicos, analistas de empresa, ...

– Autónomos • Usan BD personales, a través de aplicación/paquete comercial

específico

1.1 Bases de datos y sus usuarios

Actores en un sistema de base de datos (3)

Page 12: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 paramétricos)

• Especifican conjuntos de operaciones que satisfacen esas necesidades

– Programadores• Implementan estas especificaciones Programas de

aplicación

• Prueba, depuración, documentación y mantenimiento de programas

1.1 Bases de datos y sus usuarios

Actores en un sistema de base de datos (4)

Page 13: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 14

Los siguientes son los encargados del diseño, creación y operación del software y entorno del sistema

No están interesados en el contenido de la base de datos

Diseñadores e Implementadores del SGBD– Diseñan e Implementan los Módulos 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)

Page 14: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 15

Desarrolladores de herramientas– Diseñan e Implementan paquetes software que:

• Facilitan diseño y uso de los SBD, y

• Permiten aumentar el rendimiento de los SBD

– Herramientas para• Diseño de BD, de aplicaciones de BD, de interfaces de

usuario...

• Creación de prototipos de aplicaciones de BD

• Realizar simulaciones y generar datos de prueba

• Supervisión de rendimiento del sistema.

1.1 Bases de datos y sus usuarios

Actores en un sistema de base de datos ( y 6)

Page 15: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 16

• Disminución y control de la redundancia de datos– Procesamiento de archivos varias copias de la misma

información– Problemas debidos a la redundancia de datos

• Duplicación del trabajo• Desperdicio de espacio de almacenamiento• Obligación de evitar las inconsistencias de datos

• Evitar inconsistencias en los datos– Sólo si existe redundancia y– se modifica un dato, actualizando algunas copias

– Soluciones:• Eliminación de Redundancia, • Redundancia Controlada y Propagación de Actualizaciones

Automática

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (1)

Page 16: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 17

• Mantener la integridad– Asegurar que la información es correcta=refleja fielmente el

minimundo– ¿Cuándo se viola la integridad (no existe)?

• Si existe inconsistencia• Si existe información imposible fecha = 40 / MAYO / 1972• Si existe información que no se ajusta a la realidad, es decir falsa o

errónea

Nº de teléfono de la policía = 063– ¿Cómo 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 semánticas

« todo libro tiene una editorial » « cada libro tiene un título diferente del resto » « ningún libro puede prestarse a más de una persona al mismo tiempo »

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (2)

Page 17: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 18

• Mantener la integridad (cont.)– Las RI son identificadas durante el diseño de la BD– Control de la Integridad: fundamental en SBD Multiusuario– Verificación de Restricciones de Integridad en cada actualización

de datos• Automática por el SGBD

fecha = 40 / MAYO / 1972• Mediante programas específicos

El SGBD debe permitir- Definir (crear) las RI,- Crear y ejecutar los programas de verificación

– A veces se puede almacenar información falsa sin violar restricciones de integridad:

título de libro = “El señor de los aniyos”

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (3)

Page 18: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 19

• Aplicación de restricciones de seguridad ( RS )– No todos los usuarios deberían poder acceder a toda la BD– Objetivo: control de acceso selectivo

1. Sólo usuarios autorizados2. Sólo a ciertas partes de la base de datos3. Sólo para realizar ciertas operaciones con los datos

– SGBD dispone de Subsistema de Seguridad y Autorización• Cuentas de usuario protegidas con contraseña (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 serían:

• Sólo el ABD usa el software de administración y monitorización del SBD• Un usuario paramétrico sólo accede a la BD a través del programa que

usa• ...

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (4)

Page 19: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 20

• Suministro de múltiples interfaces de usuario– Usuarios con diferentes niveles de conocimientos técnicos– El SGBD debe ofrecer interfaces para todos ellos:

– Interfaces controladas por menú y de formularios = GUI– Acceso a bases de datos a través de la web

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (5)

Lenguajes de consultausuarios ocasionales

Interfaces de lenguajes de programación

programadores de aplicaciones

Formularios y comandosusuarios paramétricos

Interfaces controladas por menú y de lenguaje natural

usuarios autónomos

Page 20: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 21

• Representación 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 títulos y editorial de los libros escritos por “Arthur Conan Doyle” »

« Obtener nombres y teléfonos de personas con libros prestados más de cinco meses »

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (6)

Page 21: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 22

• Respaldo y Recuperación– Recuperación del sistema tras fallos del hardware o software– Subsistema del SGBD encargado de respaldo y recuperación

SGBD

Programa de

ACTUALIZACIÓN de datosEstado

INICIAL

BD ok

Estado FINAL

BD okContinuación y

Finalización Correcta del programa

Restauración de la BD

“Deshacer” toda actualización de datoshecha por el programa

BD KO !!

XOR

1.1 Bases de datos y sus usuarios

Ventajas del uso de un SGBD (y 7)

Page 22: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 recuperación del SGBD

• Flexibilidad

– SGBD permite cambios en la estructura de BD, sin afectar...• Datos almacenados• Programas de aplicación existentes

1.1 Bases de datos y sus usuarios

Otras ventajas del enfoque de bases de datos (1)

Cambios enRequisitos

Nuevas Necesidades

de datos

modificaciones en estructura de la BD

Page 23: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 24

• Rápida creación de nuevas aplicaciones

• Cumplimiento de reglas, normas o políticas de empresa– ABD establece normas para usuarios de la base de datos

• Intercambio de información y cooperación entre departamentos, proyectos...

– Estándares para• nombres y formatos de elementos de datos• documentación, formularios, informes ...

Diseño e implementació

n inicial costosos

APL-1

APL-3APL-2

1.1 Bases de datos y sus usuarios

Otras ventajas del enfoque de bases de datos (y 2)

Page 24: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 archivos

• Gran inversión inicial en equipo, software y formación• Generalidad ofrecida por el SGBD para definir y procesar datos• Funciones de seguridad, control de concurrencia, recuperación,

integridad

– Problemas adicionales si...• Diseñadores o ABD no han diseñado la base de datos apropiadamente• La implementación de las aplicaciones no es correcta

• Conviene utilizar procesamiento de archivos si...– BD y aplicaciones son simples, bien definidas y no se espera que

cambien– Requisitos de tiempo real que no se cumplirían por el coste extra

del SGBD– No se necesita acceso multiusuario a los datos

1.1 Bases de datos y sus usuarios

Cuándo NO usar un SGBD

Page 25: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 26

• Objetivo del enfoque de BD: Visión abstracta de datos– Ocultar detalles de almacenamiento y mantenimiento

• Modelos de datos para conseguir abstracción– 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 básicas para especificar lectura/modificación

– Tipos de modelos de datos• Según 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

Page 26: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 27

• Conceptos cercanos a cómo 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– Relación: asociación | vínculo | interacción entre entidades

» Modelo Entidad/Relación, MER (ERM, entity-relationship model) » Modelos Orientados a Objetos (UML, Unified Modeling Language)

Modelo CONCEPTUAL de Datos

EsquemaConceptua

l

Mundo Real

1.2 Conceptos y arquitectura del SBD Modelos de datos de alto nivel o conceptuales

Page 27: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 28

• Permiten describir la estructura lógica global: descripción de la implementación

• Conceptos entendibles por usuarios finales, pero no lejos de organización física de datos

• Ocultan detalles de implementación, pero conceptos implementables directamente en el sistema

• Los más utilizados en los SGBD comerciales actuales (ORACLE)

»Modelos basados en registrosRelacional, Red, Jerárquico

»Modelos orientados a objetos– Modelos lógicos próximos a los conceptuales

1.2 Conceptos y arquitectura del SBD Modelos de datos de representación o lógicos (1)

Page 28: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 29

MODELO RELACIONAL

1.2 Conceptos y arquitectura del SBD Modelos de datos de representación o lógicos (y 2)

CLIENTE

CUENTA

nombre dirección ciudad cuenta

García, A Gran Vía, 6 Murcia 200

López, B Ronda Norte, 3 Murcia 821

Azorín, C Paseo Nuevo, 9 Valencia 505

Pérez, C Plaza Mayor, 2 Valencia 505

...

número saldo ...

200 35

505 40

821 50

...

Cada cliente sólo puede tener una cuenta a su nombre.Una cuenta puede tener más de un cliente como titular.

Page 29: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 30

• Conceptos que describen detalles de almacenamiento de los datos

• Dirigidos a usuarios especialistas en informática

• Describen la estructura física de la base de datos:- Formato y ordenamiento de registros en los ficheros de datos- Tamaños de página, de bloque,.- Caminos (o estructuras) de acceso a los datos (archivos índices, etc.)

1.2 Conceptos y arquitectura del SBD Modelos de datos de bajo nivel o físicos

Page 30: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 31

Esquema = Descripción– Especificado en el diseño de la BD y rara vez modificado– Metainformación o metadatos

Diagrama del Esquema de la BD– Representación del esquema, en un modelo de datos– Compuesto de esquemas de tipos de registro (elementos del

esquema)

LIBRO

PRESTAMO...

Otra posible representación: LIBRO ( isbn, titulo, apAutor, nomEdit, año )

PRESTAMO ( idPer, idLib, fecha )...

1.2 Conceptos y arquitectura del SBDEsquemas, instancias y estado de la base de datos

isbn titulo apAutor nomEdit año

idPer idLib fecha

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

Page 31: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 = Intensión ; Estado = Extensión

1.2 Conceptos y arquitectura del SBDEsquemas, instancias y estado de la base de datos

Page 32: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 33

Ayuda a conseguir

– Separación entre programas y datos

– Múltiples vistas de usuario

Nivel Externo(vistas)

...

Nivel Interno

Nivel Conceptual

...

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas de un SGBD

Arquitectura ANSI/X3/SPARC

•Recuperación eficiente de datos estructuras de datos complejas para representar la información en la BD

•Complejidad oculta a través de niveles de abstracción

Page 33: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 34

•Nivel Interno

– Descrito mediante el Esquema Interno, el cual...• Define la estructura física de almacenamiento de toda

la BD– Tipos de registros almacenados,– Secuencia física de los registros, – Estructuras de almacenamiento (hashing,...),– Estructuras de acceso (indexación,...)– etc.

• Escrito utilizando un Modelo de Datos Físico• Muy cercano al nivel físico pero no trata con registros

físicos (bloques, páginas, …) ni con unidades como cilindros o pistas.

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas ANSI/X3/SPARC (1)

Page 34: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 35

•Nivel Conceptual o Lógico

– Descrito mediante el Esquema Conceptual o Lógico...• Define la estructura lógica de toda la BD

– Entidades, Tipos de datos,– Relaciones, – Restricciones (integridad, seguridad,...)

• Oculta detalles físicos• Escrito usando un Modelo de Datos Conceptual o Lógico

– Actualmente se considera el uso de dos esquemas en este nivel:

• Esquema Conceptual: organizativo, cercano al usuario• Esquema Lógico: cercano al SGBD

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas ANSI/X3/SPARC (2)

Page 35: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 36

•Nivel Externo o de Vistas

– Descrito mediante Esquemas Externos– Cada Esquema Externo o Vista...

• Define la porción de la BD que interesa a un usuario• Para el usuario, esa porción es la base de datos• Pueden existir múltiples vistas del mismo esquema

conceptual• Varias vistas pueden solaparse entre sí• Escrito usando Modelo de Datos Conceptual o Lógico

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas ANSI/X3/SPARC (3)

Page 36: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 37

•SGBD comerciales no distinguen del todo los 3 niveles

– Algunos incluyen detalles físicos en el Esquema Conceptual (Lógico)

– Usan el mismo modelo de datos para especificar • Esquemas Externos (vistas) y • Esquema Conceptual (lógico)

•Los 3 niveles son descripciones de datos– Los datos reales sólo están en el nivel físico

•Correspondencia entre esquemas SGBD (el ABD)

– Externo Conceptual– Conceptual Interno

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas ANSI/X3/SPARC (4)

Page 37: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 38

• Nivel Externo (Lenguaje de Programación “tipo Pascal”)

tipo empleado = registro (no acceso al salario)

n_empleado: cadena(6); n_depto: cadena(4); fin;

• Nivel Conceptual (Lenguaje de definición de datos, LDD)

EMPLEADO ( NUMERO_EMPLEADO CARACTER(6) CLAVE PRINCIPAL,

NUMERO_DEPARTAMENTO CARACTER(4) NO NULO, SALARIO NUMERICO(5) NO NULO )

• Nivel InternoEMP_ALMACENADO LONGITUD=20

PREFIJO TIPO=BYTE(6), DESPLAZAMIENTO=0EMP# TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMPDEPTO# TIPO=BYTE(4), DESPLAZAMIENTO=12PAGA TIPO=PALABRA, DESPLAZAMIENTO=16

1.2 Conceptos y arquitectura del SBDArquitectura de tres esquemas ANSI/X3/SPARC (y 5)

Page 38: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 lógica de datos

– Capacidad de modificar el esquema conceptual...• ampliar / reducir la BD• modificar restricciones

– ... sin alterar• esquemas externos• programas de aplicación

difícil de conseguir…

1.2 Conceptos y arquitectura del SBDIndependencia de datos (1)

Page 39: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 40

•Independencia física de datos

– Capacidad de modificar el esquema interno...• reestructurar alguna estructura de almacenamiento • crear nuevas estructuras de acceso, etc.

mejorar rendimiento de la obtención/actualización– ... sin alterar

• esquema conceptual• programas de aplicación

es más fácil de lograr

1.2 Conceptos y arquitectura del SBDIndependencia de datos (2)

Page 40: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 41

Pero... ¿cómo conseguir la independencia de datos?

•El Catálogo de SGBD incluye información sobre correspondencias entre esquemas Modificación del esquema de un nivel implica...

• cambios en la correspondencia entre niveles,• y el esquema del nivel superior no varía

gracias a la Arquitectura de Tres Niveles

– Mantenimiento de las correspondencias entre niveles...• gasto extra en compilación / ejecución de programas • menor eficiencia del SGBD» Pocos SGBD implementan Arquit. de Tres Niveles

completa

OK !!

1.2 Conceptos y arquitectura del SBDIndependencia de datos (y 3)

Page 41: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 42

•LDD: lenguaje de definición de datos– Usado por ABD y diseñadores para especificar...

• Esquema Conceptual• Esquema Interno

– si SGBD sin separación 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 catálogo del SGBD

1.2 Conceptos y arquitectura del SBDLenguajes e interfaces de bases de datos

Lenguajes del SGBD (1)

Page 42: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 43

•LDD: lenguaje de definición 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,

año NUMERIC(4)

... );

1.2 Conceptos y arquitectura del SBDLenguajes e interfaces de bases de datos

Lenguajes del SGBD (2)

Page 43: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 44

•LDA: lenguaje de definición de almacenamiento– En SGBD que distinguen entre niveles conceptual e interno,

se usa...• LDA para especificar Esquema Interno detalles de implementación 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 SBDLenguajes del SGBD (3)

Page 44: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 45

•LDV: lenguaje de definición 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 mayoría 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 SBDLenguajes del SGBD (4)

Page 45: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 46

•LMD: lenguaje de manipulación de datos– Obtención, Inserción, Eliminación y Modificación de datos– Dos tipos de DML: procedimental y declarativo

LMD procedimental, o de bajo nivel Qué datos obtener/manipular y cómo

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

Page 46: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 47

LMD declarativo, o de alto nivel Qué datos obtener para manipular y no cómo

manipularlos Usado para realizar operaciones complejas de BD...

- Interactivamente -- Lenguaje de Consulta - Incorporado en un LP anfitrión (host) -- LMD Empotrado

Es un LMD orientado a conjuntos: Obtiene/Actualiza muchos registros con una única

sentencia

SELECT titulo, nomEdit, año FROM Libro WHERE apAutor = “Tolkien”; INSERT INTO Autor VALUES (“Jorge Luís”, “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 SBDLenguajes del SGBD (y 6)

Page 47: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 48

•Programas escritos en un lenguaje (C++, Java, ...) anfitrión

•Dos modos de ejecutar instrucciones LMD desde el lenguaje anfitrión:

– Usar Interfaz de Programa de Aplicación (conjunto de procedimientos)

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

• JDBC, Java Data Base Connectivity

– Extender la sintaxis del lenguaje anfitrión para incorporar llamadas LMD dentro de los programas

• Instrucciones LMD precedidas de un carácter especial

• El preprocesador de LMD convertirá estas instrucciones en llamadas a procedimientos normales del lenguaje anfitrión

1.2 Conceptos y arquitectura del SBDUn apunte: acceso a BD desde programas de aplicación

Page 48: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 49

•Basadas en menús•Basadas en formularios•Gráficas•De lenguaje natural•Para usuarios paramétricos•Para el ABD (órdenes privilegiadas)

– Crear/eliminar cuentas de usuario y establecer autorizaciones

– Establecer parámetros de ajuste del rendimiento del sistema– Modificación de esquemas y correspondencias– Acceso al catálogo– Reorganizar estructura de almacenamiento de la BD– Realizar/restaurar copias de seguridad– ...

1.2 Conceptos y arquitectura del SBDInterfaces del SGBD

Page 49: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 50

Arquitectura de los paquetes software de SGBD• Los actuales tienen un diseño modular, según una

arquitectura cliente-servidor (dos capas)

1.3 Estructura general del sistema de bases de datos

Módulos componentes de un SGBD (1)

• Programas de aplicación

• Interfaces (GUI) de acceso a BD

•SGBD•BD

SERVIDOR

- Red de larga distancia (WAN)- Red de área local (LAN)- Líneas telefónicas- Dispositivos de comunicación

por satélite

USUARIOS• Terminal • Estación de trabajo

• PCCLIENTE

Page 50: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 51

Compilador de Consultas

Sentencias LMD

interactivas

Análisis SintácticoOptimización

Compilador de Consultas

Procesador de Consultas

1.3 Estructura general del sistema de bases de datos

Módulos componentes de un SGBD (2)

Page 51: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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

Código Objeto (del LP)

Código Objeto

(del LMD)

Enlazador

Transacción programada ejecutable

Procesador de Consultas

1.3 Estructura general del SBD

Módulos componentes de un SGBD (3)

Page 52: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

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 catálogo– Otros módulos del SGBD necesitan conocer estos

metadatos

Definición de Esquema de BD escrito en LDD

Compilador de LDD

BDSO

1.3 Estructura general del SBD

Módulos componentes de un SGBD (4)

Page 53: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 54

Procesador de Consultas

Solicitudes de RECUPERACIÓN y ACTUALIZACIÓN

Procesador de Consultas

Gestor de Datos Almacenados

BD

SO

1.3 Estructura general del SBD

Módulos componentes de un SGBD (5)

Page 54: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 55

Subsistemas de control de... Concurrencia y Recuperación - Gestor de

transacciones• Asegurar consistencia y coherencia de datos frente

actualizaciones simultáneas de datos por múltiples usuarios• Detectar fallos o caídas del sistema• y Restaurar la BD a un estado consistente

Integridad y Seguridad ¿Son correctas las actualizaciones de los datos?• Detectar violación de Restricciones de Integridad• y realizar acción de recuperación 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

Módulos componentes de un SGBD (6)

Page 55: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 56

Gestor de datos almacenados y memoria intermedia

– Control de acceso a información almacenada (datos y metadatos)

– Puede emplear servicios básicos del SO para la transferencia de datos a bajo nivel: disco memoria principal

– Maneja los buffers de memoria (almacenam. intermedio)Gestor de Datos

Almacenados

BDSO

1.3 Estructura general del SBD

Módulos componentes de un SGBD (7)

Page 56: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 57

•Estructuras de Datos

– Ficheros de datos en disco

– Catálogo: metadatos acerca de...Estructura de BD, Restricciones de Integridad y de Autorización,

etc.• Acceso Continuo por diferentes módulos del SGBD

Necesario buen diseño e implementación eficiencia

– Estructuras de acceso (agilizan el acceso a los datos)

– Datos estadísticos sobre los datos en la BD• Usados para optimización de consultas• Suele considerarse contenidos en el catálogo

BDSO

1.3 Estructura general del SBD

Módulos componentes de un SGBD (y 8)

Page 57: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 58

SGBD = componente software más importante ¡ pero no es el único !

•Carga de datos– Intercambio de información entre BD de diferente tipo ( Oracle

Access )•Respaldo•Reorganización de ficheros de la BD

– Para mejorar rendimiento del sistema•Monitorización

– Vigilancia del funcionamiento del sistema y su rendimiento– Datos estadísticos 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, compresión de ficheros, etc...

1.3 Estructura general del SBD

Utilidades del sistema de bases de datos

Page 58: Tema 1. Sistemas de bases de datos 1 INFORMÁTICA II Contenidos 1.1 Bases de datos y sus usuarios 1.2 Conceptos y arquitectura del sistema de bases de datos

Tema 1. Sistemas de bases de datos 59

•Según el Modelo de Datos en el que está basado

– Relacional, Red, Jerárquico, – Orientado a Objetos,– Objeto/Relacional, ...

•Según el nº de usuarios simultáneos– Monousuario – Multiusuario

•Según el nº de lugares en que se almacenan datos

– Centralizado– Distribuido (SGBDD)

• SGBDD homogéneo: mismo software de SGBD en todos los sitios

• SGBDD heterogéneo (ej. Multi-Base de Datos o BD Federadas)

•Según su propósito– de propósito General– de propósito Específico: construido para un tipo concreto de

aplicaciones

Anexo 1. CLASIFICACIÓN DE LOS SGBD