Tema2 SP
Tema2 SP
Tema2 SP
ARQUITECTURA
Arquitectura de un Sistema de Base de Datos: Estructuracin de los mdulos de un Sistema de BD, sus o o funciones y relaciones entre ellos. Dos arquitecturas ms usuales: a Arquitectura ANSI/SPARC (Study Group on Database Management System) Arquitectura back-end / front-end
Arquitectura ANSI/SPARC
1. NIVEL INTERNO
Ms prximo a almacenamiento f a o sico. Se ocupa de organizar y almacenar los datos f sicamente.
2. NIVEL EXTERNO
Ms prximo a usuarios. a o Se ocupa de la forma com los usuarios individuales perciben los datos.
3. NIVEL CONCEPTUAL
Nivel intermedio entre los dos
PASCAL: C:
CHAR(6) REAL
NIVEL CONCEPTUAL
PROFESOR codigo aula alumnos asignatura CHAR(6) CHAR(6) NUMBER(3) CHAR(8)
NIVEL INTERNO
PROFE F ISIC prejo codi assig aula alum LENGHT=27 TYPE=BYTE(6), OFFSET=0 TYPE=BYTE(6), OFFSET=6, INDEX=CODI.NDX TYPE=BYTE(3), OFFSET=12 TYPE=BYTE(6), OFFSET=15 TYPE=WORD, OFFSET=21 5
Entidades IGUALES semnticamente pueden tener a DIFERENTES nombres en diferentes niveles. Es importante establecer las correspondencias entre los nombres.
Consideraciones:
NIVEL CONCEPTUAL: RELACIONAL Tablas, operadores, relaciones
NIVEL EXTERNO: RELACIONAL Declaraciones PL/I, COBOL, PASCAL equivalentes a tabla relacional sobre respectivos lenguajes.
Nivel Externo
Nivel Conceptual
Nivel Interno
Correspondencias
NIVEL EXTERNO
Nivel de usuarios individuales donde cada usuario tendr a ciertos lenguajes a su disposicin o
Usuario Final Lenguaje de consulta (cuarta generacin): SQL o o u Lenguaje de la aplicacin (mens, comandos, sistemas ventanas, etc.) Programador de aplicaciones Lenguaje de consulta (cuarta generacin): SQL o Lenguaje de programacin de alto nivel (C, PL/I, COBOL, o PASCAL...) DBA Todos los lenguajes utilizados por los anteriores usuarios.
DSL - Data SubLanguage: Dividido en dos partes: DDL -Data Denition Language
Denicin/declaracin de los objetos a la Base de Datos o o
11
Deniciones importantes en el Nivel Externo: VISTA EXTERNA: Contenido de la Base de Datos tal y como es vista por un usuario concreto.
Formada por una coleccin de registros externos (o o lgicos). No han de coincidir con registros internos. o DML trabaja sobre registros externos.
ESQUEMA EXTERNO: Deniciones de los registros externos que forman una vista externa.
Esquema denido en lenguaje DDL
12
NIVEL CONCEPTUAL
VISTA CONCEPTUAL: Representacin de TODO o el contenido de la Base de Datos.
o Representacin abstracta de los datos. NO coincide con la representacin f o sica. NO coincide con vista externa. Vista formada por el conjunto de REGISTROS CONCEPTUALES que denen entidades y relaciones entre entidades. Registros conceptuales no han de coincidir con registros externos o registros internos. Vista denida mediante ESQUEMA CONCEPTUAL.
NIVEL INTERNO
VISTA INTERNA: Representacin de bajo nivel de la o Base de Datos.
Vista ms cercana a la mquina, a un paso del nivel f a a sico. No manipula registros f sicos. Supone espacio lineal en direccionamiento. No se especica correspondencia entre este espacio y los dispositivos lgicos. o Vista compuesta de ocurrencias de diferentes tipos de REGISTROS INTERNOS. Vista denida mediante ESQUEMA INTERNO.
14
CORRESPONDENCIAS
Tres niveles de correspondencias: Correspondencia conceptual/interna Correspondencia externa/conceptual Correspondencia externa/externa
1. Correspondencia conceptual/interna
Correspondencia entre vista conceptual y la Base de Datos. Controlada por el DBA. Especica com se estructuran los registros y campos conceptuales en el nivel interno. Si se modica la estructura de la Base de Datos f sica se ha de modicar la correspondencia conceptual/interna.
15
2. Correspondencia externa/conceptual
Correspondencia entre la vista externa y la vista conceptual. Permite especicar campos con diferentes tipos de datos. El campo conceptual est especicado en un solo tipo. a Nombre de campos y registros pueden ser diferentes entre diferentes vistas. Diversos campos conceptuales un slo campo externo. o Pueden existir n vistas externas. Una vista externa puede ser compartida por m usuarios.
3. Correspondencia externa/externa
e Expresar una vista externa en trminos de otras vistas externas. Util si existe relacin estrecha entre vistas externas. o
16
El DBA y el SGBD
Partes importantes en la gestin de la Base de Datos: o Administrador de la Base de Datos (DBA) Sistema Gestor de la Base de Datos (DBMS)
17
18
TAREAS DEL DBA: Denir el Esquema Conceptual a partir del Diseo n Lgico. El Esquema Conceptual se dene mediante o el DDL Conceptual. o DBMS utiliza la versin objeto del Esquema Conceptual para responder a solicitudes de acceso. Versin fuente del Esquema Conceptual utilizado o por usuarios del sistema.
19
Ambas tareas del DBA (crear Esquema Interno y denir correspondencias) son claramente separables. Esquema Interno y correspondencias existirn en versin fuente y a o versin objeto. o
20
Ambas tareas del DBA (crear Esquema Externo y denir correspondencias) son claramente separables. Esquema Externo y correspondencias existirn en versin fuente y a o versin objeto. o
Otras funciones del DBA para los usuarios: Consultas sobre el diseo de las aplicaciones. n o e Instruccin tcnica. Localizacin y solucin de problemas que tengan o o los usuarios.
23
24
PROCESO:
DBMS inspecciona 1. Esquema Externo del usuario 2. Correspondencia (mapping) con el Esquema Conceptual 3. Esquema Conceptual 4. Correspondencia (mapping) con el Esquema Interno 5. Esquema Interno
DBMS ejecuta operaciones sobre la BD f sica Acceso 1 registro externo n registros conceptuales Acceso 1 registro conceptual m registros internos Construir registro conceptual de los m registros internos le dos Construir registro externo de los n registros conceptuales 25
26
Ha de interpretar deniciones DDL para poder interpretar y responder solicitudes de los usuarios.
27
II. Manipulacin de los Datos o DBMS ha de atender solicitudes de usuario para * recuperar * modicar INFORMACION * insertar * borrar Solicitudes hechas en DML. DBMS ha de interpretar DML. Peticiones en DML pueden ser:
PREVISTAS: Peticiones que ya se planicaron en el sistema, de forma que el diseo est afectado por estas peticiones con el n a n de mejorar el rendimiento. Peticiones realizadas normalmente en programas de aplicacin. o IMPREVISTAS: Peticiones no planicadas en el diseo, poco fren cuentes. Diseo f n sico puede ser que se adapte o no a la peticin. o Usualmente la respuesta de estos comandos es pobre. Peticiones realizadas normalmente de forma interactiva (SQL).
28
III. Seguridad e Integridad de los Datos DBMS ha de supervisar las solicitudes de acceso de los usuarios, para rechazar los intentos de violar las medidas de integridad y de seguridad denidas por el DBA.
IV. Proveer mecanismos de recuperacin y concur o rencia de los Datos DBMS ha de cuidar el cumplimiento de los controles de recuperacin y de concurrencia. o Tarea que realiza el mdulo del DBMS denominado o ADMINISTRADOR DE TRANSACCIONES
29
V. Diccionario de Datos DBMS ha de mantener un diccionario de datos (o METADATOS) METADATOS: Base de Datos sobre la Base de Datos
Deniciones de los objetos del sistema (esquemas, correspondencias, etc.), tanto en versiones fuente como objeto. Referencias cruzadas para indicar qu programas usan ciertos datos e qu usuarios requieren qu informes e e terminales conectados al sistema Informacin consultable como culaquier otra Base de Datos. o Importante a la hora de saber el grado de afectacin del siso tema (qu programas o usuarios se ven afectados por una e modicacin del sistema). o
VI. Rendimiento DBMS ha de realizar todas las funciones anteriores de la forma ms FIABLE y EFICIENTE possible. a
30
back-end: DBMS. Realiza todas las funciones descritas en el DBMS. front-ends: Diferentes aplicaciones ejecutadas en el DBMS ESCRITAS por los usuarios. INTEGRADAS: subministradas por el proveedor del DBMS. 31
Aplicaciones pueden dividirse en diferentes categor as: 1. Aplicaciones escritas por los usuarios. Escritas en lenguaje de alto nivel junto con DSL. 2. Aplicaciones integradas (herramientas). Ayudan a la creacin y ejecucin de otras aplicaciones. o o Tipos:
e Intrpretes de lenguajes de consulta Generadores de informes Sistemas de generacin de grcos o a a Hojas de clculo Procesadores de lenguaje natural Paquetes estad sticos Herramientass para administrar copias Generadores de aplicaciones Herramientas para desarrollar aplicaciones, herramientas CASE (Computer Aided Software Engineering)
Nmero y calidad de estas herramientas es imporu tante para evaluar el DBMS (o SGBD). Separacin del back-end y el front-end en dos partes o permite que cada parte pueda estar en nodos f sicos diferentes. SISTEMAS DISTRIBUIDOS
32
Sistemas Distribuidos
PROCESAMIENTO DISTRIBUIDO: Varias mquinas pueden conectarse entre s en red. a Tarea de procesamiento puede abarcar varias ma quinas de la red.
33
SISTEMA CLIENTE/SERVIDOR
Seccin Posterior: Servidor, despachador. o Ejecucin del DBMS en una mquina. o a Seccin Frontal: Cliente. o Ejecucin de la aplicacin en otra mquina. o o a
34
Ventajas:
o o Paralelizacin: Procesamiento de la seccin posterior y la seccin frontal en paralelo, mejorando el o tiempo de respuesta y el rendimiento. back-end especializado en Base de Datos. front-end: estacin de trabajo personal, adaptada o a las necesidades del usuario nal. Varias mquinas cliente capaces de acceder a la a misma mquina servidora, con lo cual nicamente a u se mantiene UNA SOLA BASE DE DATOS.
35
36
Una sola mquina ha de ser capaz de acceder a diversos a servidores. Dos posibilidades: 1. Aplicacin front-end puede acceder a n mquinas o a pero slo en una simultaneamente. o Desventajas:
No se pueden combinar datos de dos o ms back-ends en a una sola solicitud. o Usuario ha de saber buscar informacin.
SISTEMAS DE BD DISTRIBUIDOS
37
SISTEMAS DE BD DISTRIBUIDOS
Implica que una sola aplicacin ser capaz de trabajar o a de forma transparente con
Diferentes BD
Diferentes SO
Diferentes DBMS
Un slo SO o
Un slo DBMS o 38