bases de datos ii: el entorno
DESCRIPTION
El entorno de la base de datosPonente: Juan Carlos MorochoTRANSCRIPT
ESCUELA:
NOMBRES:
BASE DE DATOS I
CICLO
Ciencias de la Computación
Ing. Juan Carlos Morocho
OCTUBRE 2009 – FEBRERO 2010
1
BIMESTRE: I BIMESTRE
2
Capítulo 2
El entorno de la base de datos
© Pearson Education Limited 1995, 2005
3
Capítulo 2 - Objetivos
Propósito y origen de la arquitectura de base de datos en tres niveles
Contenido de los niveles externo, conceptual e interno
Propósito de las asignaciones entre los niveles externo/conceptual y conceptual/interno
Significado de la independencia lógica y física de los datos.
Distinción entre DLL y DML
Clasificación de los modelos de datos.
4
Capítulo 2 - Objetivos
El propósito y la importancia del modelado conceptual.
Servicios y funciones típicas que un SGBD debe proporcionar.
La función y la importancia del catálogo del sistema.
Los componentes software de un SGBD. Significado de la arquitectura cliente-servidor y
las ventajas que este tipo de arquitectura tiene para un SGBD.
5
Objetivos de la arquitectura en tres niveles
Todos los usuarios deben poder acceder a los mismos datos.
La forma en que un usuario ve los datos ha de ser inmune a los cambios hechos en la forma en que otros usuarios los ven.
Los usuarios no deben necesitar conocer las estructuras de almacenamiento físico de la base de datos.
© Pearson Education Limited 1995, 2005
6
Objetivos de la arquitectura en tres niveles
El DBA debe poder cambiar las estructuras de almacenamiento de la base de datos sin que afecte a las vistas de los usuarios.
La estructura interna de la base de datos no debería verse afectada por los cambios que se efectúen en lo relativo a los aspectos físicos de almacenamiento.
El DBA debe poder modificar la estructura conceptual de la base de datos sin afectar a todos los usuarios.
© Pearson Education Limited 1995, 2005
7
La arquitectura en tres niveles de ANSI-SPARC
© Pearson Education Limited 1995, 2005
Nivel externo
Nivel conceptual
Nivel interno
Organización física de los datos
Usuario 1 Usuario 2 Usuario n
Vista 1
Base de datos
Vista 2 Vista 3
Esquema conceptual
Esquema interno
8
La arquitectura en tres niveles de ANSI-SPARC
Nivel externo Vista que los usuarios tienen de la base
de datos. Describe la parte de la base de datos
que es relevante para cada usuario.
Nivel conceptual Vista comunitaria de la base de datos. Describe qué datos están almacenados
en la base de datos y las relaciones existentes entre los mismos.
9
La arquitectura en tres niveles de ANSI-SPARC
Nivel Interno Representación física de la base de
datos en la computadora. Describe cómo están almacenados los
datos en la base de datos.
© Pearson Education Limited 1995, 2005
Diferencias entre los tres niveles de la arquitectura ANSI-SPARC
Nivel conceptual
Nivel interno
Vista externa 1
Vista externa 2
/* puntero en siguiente registro Staff *//* definición de índices para Staff */
11
Independencia de los datos
Independencia lógica de los datos Hace referencia a la inmunidad de los
esquemas externos a las modificaciones que se efectúen en el esquema conceptual.
Cambios en el sistema conceptual (E.j. añadir/quitar entidades).
No debe requerir una modificación en el esquema externo o la reescritura de los programas de aplicación disponibles.
12
Independencia de los datos
Independencia física de los datos Hace referencia a la inmunidad del
esquema conceptual a los cambios que se efectúen en el esquema interno.
Cambios en el sistema interno (E.j.utilizar diferentes organizaciones de archivos o distintas estructuras de almacenamiento).
No ha de requerir un cambio en los sistemas conceptuales o esquemas externos.
© Pearson Education Limited 1995, 2005
Independencia de los datos en la arquitectura de tres niveles de ANSI-
SPARC
Correspondencia externo/conceptual
Correspondencia conceptual/ Interno
Independencia lógica de los datos
Independencia física de los datos
Esquema externo
Esquema externo
Esquema externo
Esquema conceptual
Esquema interno
14
Lenguajes de la base de datos
Lenguaje de definición de datos (DDL) Permite al DBA o al usuario describir y
nombrar las entidades, atributos y relaciones requeridas por la aplicación
Junto con cualquier restricción asociada de integridad y seguridad.
© Pearson Education Limited 1995, 2005
15
Lenguajes de la base de datos
Lenguaje de Manipulación de Datos (DML,Data Manipulation Language) Proporciona un conjunto de operadores para
permitir las manipulaciones básicas de los datos contenidos en las bases de datos.
Lenguajes DML procedimentales Lenguajes DML no procedimentales Lenguajes de cuarta generación (4GLs, Fourth Generation Languages)
16
Modelos de datos
Colección integrada de conceptos para describir y manipular datos, las relaciones existentes entre los mismos y las restricciones aplicables a los datos dentro de una organización.
Los modelos de datos comprenden: Una parte estructural Una parte manipulativa Posiblemente, un conjunto de
restricciones de integridad.
17
Modelos de datos
Propósito Representar los datos de una manera
comprensible.
Las categorías de modelos de datos incluyen: Basados en objetos Basados en registros Físicos
© Pearson Education Limited 1995, 2005
18
Modelo de datos relacional
© Pearson Education Limited 1995, 2005
19
Modelo de datos en red
© Pearson Education Limited 1995, 2005
20
Modelo de datos jerárquico
© Pearson Education Limited 1995, 2005
21
Modelado conceptual El esquema conceptual es el «corazón» de la
base de datos que da soporte a todas las vistas externas.
Debe ser una representación completa y precisa de los requisitos de datos de la organización.
El modelado conceptual es el proceso de construir un modelo del uso de la información dentro de una empresa que debe ser independiente de los detalles de implementación.
El resultado es un modelo de datos conceptual.
22
Funciones de un SGBD Almacenamiento, extracción y
actualización de datos.
Un catálogo accesible al usuario.
Soporte de transacciones.
Servicios de control de concurrencia.
Servicios de recuperación.
23
Funciones de un SGBD
Servicios de autorización.
Soporte para la tramitación de datos.
Servicios de integridad.
Servicios para mejorar la independencia de los datos.
Servicios de utilidad.
24
Catálogo de sistema
Almacena la información (metadata) que describe los datos de la base de datos.
Es uno de los componentes fundamentales de los SGBD.
Normalmente almacena: Nombres, tipos y tamaños de los elementos
de datos; Las restricciones aplicables a los datos; Los nombres de los usuarios autorizados; Los elementos de datos accesibles a cada
usuario y los tipos de acceso permitidos; Las estadísticas de uso.
Componentes de un SGBD
Programadores Usuarios DBA
Base de datos y catálogo del sistema
Programas de aplicación
Consultas
Gestor de base de datos
Procesador de consultas
Código objeto del programa
Esquema de base de datos
Compilador DDL
Preprocesador DML
Gestor del diccionario
Métodos de acceso
Gestor de archivos
Búferes del sistema
26
Componentes de un gestor de base de datos (DM, DatabaseManager)
© Pearson Education Limited 1995, 2005
Gestor de datos
Gestor de base de datos
Base de datos y catálogo del sistema
Código objeto del programa
Procesador de consultas
Gestor del catálogo
Control de autorización
Comprobador de integridad
Procesador de comandos
Optimizador de consultas
Gestor de transacciones
Planificador
Gestor del búfer
Gestor de recuperación
Métodos de acceso
Gestor de archivos
Búferes del sistema
27
Arquitecturas de SGBD multiusuario
Teleprocesamiento
Servidor de archivos
Cliente-servidor
© Pearson Education Limited 1995, 2005
28
Teleprocesamiento
Arquitectura tradicional. Única unidad central de proceso con
una serie de terminales conectados.
© Pearson Education Limited 1995, 2005
29
Servidor de archivos
Servidor de archivos conectado a varias estaciones de trabajo a través de una red.
El servidor de archivos almacena la base de datos.
Los SGBD y las aplicaciones se ejecutan en cada estación de trabajo.
Los inconvenientes incluyen: Gran cantidad de tráfico de red. Copia del SGBD en cada estación de trabajo. Control de concurrencia, de recuperación y
de integridad más complejos.
© Pearson Education Limited 1995, 2005
Arquitectura del servidor de archivos
Estación de trabajo 2
Estación de trabajo 1 Estación de trabajo 3
Solicitudes de datos Archivos devueltos
Base de datos
Servidor de archivos
31
Cliente-servidor tradicional en dos niveles
El cliente (nivel 1) gestiona el interfaz de usuario y ejecuta las aplicaciones.
El servidor (nivel 2) almacena la base de datos y el SGBD.
Las ventajas incluyen: Acceso más universal a las bases de datos
existentes; Mejor funcionamiento; Posible reducción de los costes de hardware; Reducción de los costes de comunicaciones; Mayor coherencia.© Pearson Education Limited 1995, 2005
Cliente-servidor tradicional en dos niveles
Cliente 2
Cliente 1 Cliente 3
Solicitudes de datosDevolución de datos seleccionados
Servidor (con SGBD)
Base de datos
Cliente-servidor tradicional en dos niveles
Primer nivel
Cliente
Tareas
Interfaz de usuarioLógica principal de negocio y de procesamiento de datos
TareasPrimer nivel
Servidor de la base de datos
Validaciones del lado del servidor
Acceso a base de datos
34
Cliente-servidor en tres niveles
El lado del cliente presentó dos problemas que impedían una escalabilidad real: Clientes «complejos» que requerían unos
recursos considerables para que la computadora del cliente lo ejecutara correctamente.
Las tareas de administración en el lado del cliente eran bastante significativas.
En 1995 se propusieron tres niveles, cada uno de los cuales podía ejecutarse en una plataforma distinta.
© Pearson Education Limited 1995, 2005
35
Cliente-servidor en tres niveles
Ventajas: Cliente «simple», que requiere un hardware
menos costoso. Mantenimiento de las aplicaciones
centralizado. Resulta más sencillo modificar o sustituir uno
de los niveles sin que los otros se vean afectados.
Resulta más fácil equilibrar la carga de procesamiento al separar la lógica principal del negocio de las funciones de base de datos.
Se adapta de forma bastante natural a los entornos web.
36
Cliente-servidor en tres niveles
Primer nivel
Cliente
Segundo nivel
Servidor de aplicaciones
Tareas
Interfaz de usuario
TareasLógica principal del negocioLógica de procesamiento de
datos
Tercer nivel
Servidor de base de datos
Tareas
Validaciones de datosAcceso a base de datos
37
Monitores de procesamiento de transacciones(TPM)
Programa que controla la transferencia de datos entre clientes y servidores para proporcionar un entorno coherente, particularmente para el procesamiento de transacciones en línea (OLTP, Online Transaction Processing ).
© Pearson Education Limited 1995, 2005
TPM como nivel intermedio en una arquitectura cliente-servidor de tres
niveles
Solicitudes de servicio
Servicio
Servicio
Servicio
Servicio
Clientes Servidor de aplicaciones con monitor TP
Nivel 1 Nivel 2 Nivel 3
Servidores de base de datos
Base de datos
Base de datos