Documente Academic
Documente Profesional
Documente Cultură
Objetivos de los sistemas de bases de datos Vistas de datos Modelos de datos Lenguajes de definicin de datos (DDL) Lenguajes de manipulacin de datos (DML) Gestin de transacciones Gestin de almacenamiento Administrador de bases de datos Usuarios de bases de datos Estructura general del sistema
BD: Introduccin
Definicin
Es una coleccin de datos operativos almacenados y utilizados por los programadores de aplicaciones y por usuarios finales de muy diversa ndole
Idea bsica al implementar una BD: Aprovechar los mismos datos para tantas aplicaciones como sea posible.
BD: Introduccin 2
BD: Introduccin
Problemas de seguridad
BD: Introduccin
BD: Introduccin
Niveles de abstraccin
El nivel fsico describe cmo se almacena un registro (p.e., cliente). El nivel lgico: describe los datos almacenados en la base de datos y las relaciones entre los datos. type cliente = record nombre : string; calle : string; ciudad : integer; end; EL nivel de vista: los programas de aplicacin ocultan detalles de los tipos de datos. Las vistas tambin pueden ocultar informacin (p.e. salario) por motivos de seguridad.
BD: Introduccin
Vistas de datos
Una arquitectura para un sistema de bases de datos
BD: Introduccin
Visin global
El mundo real
El almacenamiento fsico
BD: Introduccin
Independencia fsica de los datos la habilidad para modificar el esquema fsico sin cambiar el esquema lgico
Las aplicaciones dependen del esquema lgico En general, los interfaces entre los diferentes niveles y componentes debera estar bien definidos para que los cambios en algunas partes no afecten de forma importante a otras.
BD: Introduccin 10
Modelos de datos
Una coleccin de herramientas para describir
datos relaciones entre datos semntica de los datos restricciones de los datos
BD: Introduccin
11
Modelo Entidad-Asociacin
nombre-cliente
calle-cliente
numero-cuenta
saldo
id-cliente clientes
ciudad-cliente depositante
cuentas
BD: Introduccin
12
BD: Introduccin
13
Modelo Relacional
Ejemplo de datos tabulares en el modelo relacional
Atributos
ciudad-cliente numero-cuenta Vigo Santiago Vigo Madrid Lugo A-101 A-215 A-201 A-217 A-201
BD: Introduccin
14
numero-cuenta A-101 A-215 A-102 A-305 A-201 A-217 A-222 (b) Tabla cuentas
BD: Introduccin
15
BD: Introduccin
16
char(10), integer)
El compilador de DDL genera un conjunto de tablas almacenadas en un diccionario de datos Los diccionarios de datos contienen metadatos (es decir, datos sobre los datos)
esquema de la base de datos Lenguaje de almacenamiento y definicin de datos El lenguaje en el que se especifican las estructuras de almacenamiento y los mtodos de acceso usados por la base de datos Normalmente es una extensin del lenguaje de definicin de datos
BD: Introduccin
17
Lenguaje para acceder y manipular a los datos organizados por el modelo de datos apropiado
El DML tambin se conoce como lenguaje de consulta
BD: Introduccin
18
SQL
SQL: lenguaje no procedimental ampliamente utilizado
P.e. encontrar el nombre del cliente con id-cliente 192-83-7465 select cliente.nombre-cliente from cliente where cliente.id-cliente = 192-83-7465 P.e. encontrar los balances de todas las cuentas pertenecientes al cliente con id-cliente 192-83-7465 select cuenta.balance from depositante, cuenta where depositante.id-cliente = 192-83-7465 and depositante.numero-cuenta = cuenta.numero-cuenta
BD: Introduccin
19
Gestin de transacciones
Una transaccin es un conjunto de operaciones que realizan una nica funcin lgica en una aplicacin de bases de datos El componente de gestin de transacciones asegura que la base de datos se mantiene en un estado consistente (correcto) aun cuando se produzcan fallos en el sistema (p.e. fallos de alimentacin o del sistema operativo) o fallos de transaccin. El gestor de control de concurrencia controla la interaccin entre transacciones concurrentes, para asegurar la consistencia de la base de datos.
BD: Introduccin
20
Gestin de almacenamiento
El gestor de almacenamiento es un mdulo que proporciona el interfaz entre los datos de bajo nivel almacenados en la base de datos y los programas de aplicacin y consultas enviadas al sistema. El gestor de almacenamiento se encarga de:
Interactuar con el gestor de ficheros Conseguir un almacenamiento, recuperacin y actualizacin eficientes de los datos
BD: Introduccin
21
BD: Introduccin
22
BD: Introduccin
23
interfaces de aplicacin
programas de aplicacin
herramientas de consulta
herramientas de administracin
consultas DML
interprete DDL
procesador de consultas
gestin de bufferes
gestin de ficheros
gestin de transacciones
gestin de almacenamiento
ndices
diccionario de datos
gestin de disco
datos
datos estadsticos
BD: Introduccin
24
Arquitecturas de aplicacin
usuario cliente aplicacin aplicacin cliente usuario
red
red
Arquitectura en dos niveles: P.e. los programas clientes utilizan ODBC/JDBC para comunicarse con la base de datos Arquitectura en tres niveles: P.e. las aplicaciones basadas en web, o las aplicaciones que utilizan middleware
BD: Introduccin
25