(Microsoft PowerPoint - TEMA 1

Anuncio
Tema 1
Conceptos básicos
• Sistema de Gestión de Bases de Datos, SGBD (DBMS, Database
Management System): software diseñado específicamente para el
mantenimiento y la explotación de grandes conjuntos de datos
BDII
Introducción
1
Tema 1
Ventajas de los SGBDs
Ventajas
•
•
•
•
•
•
Independencia de los datos
Acceso a los datos eficiente
Integridad y seguridad
Administración
Acceso concurrente y recuperación
Reducción del tiempo de desarrollo de las aplicaciones
Inconvenientes
•
•
•
•
•
•
•
BDII
Complejidad
Tamaño
Coste SGBD
Coste hardware adicional
Coste conversión
Prestaciones
Mayor impacto de los fallos
Introducción
2
Tema 1
Perspectiva histórica
Predecedor de los SGBD: sistemas basados en ficheros (aún existen)
1959. IBM presenta el sistema Ramac.
• leía datos en forma no secuencial, haciendo posible este tipo de
acceso a los archivos.
1961. Charles Bachman diseña el primer DBMS de propósito general.
1965-1970. Aparece la vista en dos niveles de la organización: conceptual y de
usuario.
• esto constituyó el fundamento del modelo de datos jerárquico.
• IBM y American Airlines crean SABRE, que permitía el acceso de múltiples
usuarios a los datos a través de una red de comunicaciones.
1970. Codd, investigador asociado de IBM, desarrolla el modelo relacional y
establece los fundamentos para la teoría de BD.
1976. Aparece el modelo Entidad-Relación.
Años 80. Se desarrollan DBMS para computadores personales. Aparecen DBASE,
PARADOX, DB2, ORACLE, SYBASE, INFORMIX, etc. Aparecen los sistemas
orientados a objetos, sistemas cliente/servidor para bases de datos distribuidas.
Años 90. Se intenta extender las capacidades de los SGBD a nuevas aplicaciones
(BD espaciales, temporales, multimedia y deductivas)
BDII
Introducción
3
Tema 1
El Modelo Relacional
Un modelo es un conjunto de elementos de alto nivel que ocultan los
detalles de bajo nivel
Modelo Relacional
DB2, Informix, Oracle, Sybase, MS Access, Paradox
Otros modelos
Jerárquico (IMS de IBM)
En red (IDS)
Orientado a Objetos (Objectstore y Versant)
Relacional orientado a objetos (Informix, ObjectStore, Oracle...)
BDII
Introducción
4
Niveles de abstracción en un SGBD
Tema 1
DDL (Data Definition Languaje)
Nivel conceptual (esquema conceptual o lógico)
Nivel externo o vistas
Nivel físico
Nivel externo o de
vistas
Nivel conceptual
Nivel interno o físico
BDII
Introducción
5
Independencia de los datos
Tema 1
Las aplicaciones deben ser independientes de los cambios que se
produzcan en las estructuras de almacenamiento
Independencia lógica de los datos
•
Capacidad de modificar el esquema conceptual sin tener que alterar
los esquemas externos ni los programas de aplicación
Independencia física de los datos
•
BDII
Capacidad de modificar el esquema interno sin tener que alterar el
esquema conceptual
Introducción
6
Tema 1
Consultas a un SGBD
Para el usuario, el valor de un SGBD viene determinado, entre otras
cosas, por la facilidad con la que de él se obtenga información
Lenguajes de consulta Optimización de las consultas
Ejecución concurrente
• La mayoría de las grandes aplicaciones de bases de datos
son de acceso concurrente
• El acceso concurrente produce problemas si no está
controlado
• Las transacciones y el control de concurrencia permiten
controlar estos problemas
BDII
Introducción
7
Tema 1
Estructura de un SGBD
Arquitectura general de un SGBD
• SGBD centralizado / cliente-servidor
centralizado: en un solo ordenador se ejecuta el SGBD, puede
estar conectado a una red de terminales
cliente-servidor: una parte del SGBD reside en ordenadores
clientes (interfaz de usuario), el motor del SGBD reside en el
servidor
• SGBD distribuido
bases de datos locales pueden trabajar de forma coordinada,
como si fuera una única BD
• Aprovechamiento o no de plataformas con paralelismo
BDII
Introducción
8
Tema 1
Estructura de un SGBD
El motor del SGBD suele tener módulos para:
BDII
Interpretación de SQL
Optimización de consulta
Gestión de memoria intermedia
Métodos de acceso (por ejemplo índices)
Gestión de transacciones
Control de acceso concurrente
Seguridad
Mantenimiento del catálogo (diccionario de datos)
Introducción
9
Tema 1
Estructura de un SGBD
Un SGBD está estructurado en diversos
componentes o módulos, cada uno de los
cuales hace una función específica.
El S.O. proporciona servicios básicos
Usuario
paramétrico
Usuario
ocasional
programas de
aplicación
consulta
Diseñador de
la BD
esquema de BD
Módulos:
Procesador de consultas.
Usuarios
SGBD
Procesador de consulta
Se encarga de transformar las consultas
en instrucciones de bajo nivel
Gestor de BD.
Gestor de Base de Datos
Acepta consultas, examina los esquemas
conceptual y externo para determinar que
registros conceptuales se necesitan y
llama al gestor de archivos para satisfacer
esa solicitud.
Gestor de Archivos.
Manipula los archivos almacenados y
gestiona la asignación de espacio en
disco.
BDII
Introducción
Gestor de
Archivos
Estructuras
especiales de
acceso
Disco
Datos
Almacenados
Catálogo
10
Tema 1
Estructura de un SGBD
Procesador de consultas:
•
•
•
BDII
Preprocesador de DML:
convierte las instrucciones de DML
de un programa de aplicación en
llamas a funciones en el lenguaje
host. Debe interactuar con el
procesador de consultas para
generar el código apropiado.
Compilador DDL. Convierte las
instrucciones DDL en una serie de
tablas que contienen metadatos.
Estas tablas se almacenan en el
catalogo.
Gestor del catalogo. Gestiona y
mantiene el catalogo del sistema.
Introducción
Usuario
paramétrico
Diseñador
de la BD
Usuario
ocasional
programas de
aplicación
Preprocesador
de LMD
consulta
Usuarios
esquema de BD
Procesador
de consulta
Compilador
de LDD
SGBD
Gestor del
Catálogo
Código Objeto
del programa
Gestor de Base de Datos
Gestor de
Archivos
Estructuras
especiales de
acceso
Disco
Datos
Almacenados
Catálogo
11
Tema 1
Estructura de un SGBD
Gestor de la BD:
•
•
•
•
•
•
•
•
BDII
Control de autorización. Comprueba que el usuario
tiene autorizaciones necesarias para realizar la
operación requerida.
Procesador de comandos. Una vez que el sistema
ha comprobado los permisos del usuario, se pasa el
control al procesador de comandos
Módulo de integridad. Verifica que la operación
satisface las restricciones de integridad.
Control de concurrencia. Este módulo es el
responsable de asegurar que las operaciones que se
realizan concurrentemente sobre la base de datos
tienen lugar sin conflictos.
Gestor de transacciones. Realiza el procesamiento
requerido para las operaciones que recibe de las
transacciones.
Gestor de recuperación. Garantiza que la BD
permanezca en un estado coherente cuando se
produzcan fallos.
Optimizador de consultas. Determina la estrategia
optima para la ejecución de las consultas.
Gestor del bufer. Responsable de la transferencia de
datos entre la memoria principal y el almacenamiento
secundario.
Introducción
Usuario
paramétrico
programas de
aplicación
Preprocesador
de LMD
Usuario
ocasional
consulta
Diseñador
de la BD
esquema de BD
Procesador
de consulta
Compilador
de LDD
SGBD
Gestor del
Catálogo
Código Objeto
del programa
Módulos de
Integridad,
concurrencia,
transacciones,
optimización y
recuperación
Usuarios
Control de
autorización
Gestor
del búfer
Procesador
de comandos
Gestor de
Archivos
Estructuras
especiales de
acceso
Disco
Datos
Almacenados
Catálogo
12
Tema 1
Tendencias actuales
Las tendencias actuales de los SGBD del mercado se pueden resumir en:
Plataformas de paralelismo masivo
Funcionalidad pensada para llevar a cabo análisis masivos de datos
(data warehousing y data mining)
Incorporación al mundo de la Orientación a Objetos
Incorporación al mundo de Internet
Incorporación a las arquitecturas de objetos distribuidos (como
CORBA o COM++)
BDII
Introducción
13
Descargar