Sei sulla pagina 1di 39

BASES DE DATOS

Tema 1

Introducción a las Bases de Datos

UCLM- E.S. de Informática


Coral Calero, Marcela Genero, Francisco Ruiz, María Ángeles
Moraga

BD 09-10 ESI-UCLM 1.2


Contenido


BD 09-10 ESI-UCLM 1.

Bibliografía

• Básica
ƒ Piattini et al. (2006)
ƒ Caps. 1 y 2
• Complementaria
ƒ Connolly y Begg (2002)
ƒ Caps. 1 y 2
ƒ Elmasri y Navathe (2004)
ƒ Caps. 1 y 2

BD 09-10 ESI-UCLM 1.4


Sistemas de Información
BD 09-10 ESI-UCLM 1.9

1.10
Sistemas de Información
Clases – Según niveles organizativos

NIVEL
NIVEL ESTRATEGICO
ESTRATEGICO
--Elaboración
Elaboracióndedeplanes
planes
--Objetivos generales
Objetivos generales

Ordenes y Planes NIVEL


NIVELTACTICO
TACTICO
Información - -Control
Controlde
degestión
gestión
- -Objetivos
Objetivosespecíficos
específicos

NIVEL
NIVELOPERACIONAL
OPERACIONAL
- -Tareas
Tareasadministrativas
administrativas
BD 09-10 ESI-UCLM 1.11

Sistemas de Información
Clases – Según los tipos de procesos
TIPOS
PROCES. REPETITIVOS EXCEPCIONALES
TAREAS ADMINISTRATIVAS TAREAS ADMINISTRATIVAS
DE EXCEPCION
FOR Características:
MA • datos voluminosos Características:
LI • propios, elementales y homogéneos • datos no muy voluminosos
ZA • pocas interrelaciones y simples • propios, elementales, así como agregados y homogéneos
• muchas salidas normalizadas • muchas interrelaciones
BLES
• procesos sencillos y periódicos • pocas salidas normalizadas
• predomina el tratamiento secuencial y • procesos complejos pero estructurados
por lotes • tratamiento no secuencial y, en general, interactivo
(Ejemplo: nóminas, facturas) (Ejemplo: estadísticas, modelos, gestión de personal, etc.)
AYUDA A LA DECISION
NO
Características:
FOR • datos muy poco voluminosos
MA • propios y ajenos
LI • agregados y muy heterogéneos
ZA • muchas interrelaciones complejas
• pocas salidas, con información significativa, oportuna y
BLES
fácil de interpretar
• procesos de difícil o imposible estructuración
• tratamiento no secuencial e interactivo
(Ejemplo: Creación de una nueva unidad de producción)
BD 09-10 ESI-UCLM 1.12
Sistemas de Información
BD 09-10 ESI-UCLM 1.21

SGBD
Concepto y Funciones
ƒ Conjunto coordinado de programas, procedimientos, componentes,
etc. que suministra a los distintos tipos de usuarios los medios
necesarios para describir y manipular los datos almacenados en las
BD, garantizando su seguridad.

• Operaciones típicas sobre una BD


ƒ Sobre el conjunto de una BD:
ƒ Creación
ƒ Reestructuración
ƒ Consulta a la totalidad
ƒ Sobre datos concretos:
ƒ Inserción
ƒ Borrado Actualización
ƒ Modificación
ƒ Consulta selectiva

BD 09-10 ESI-UCLM 1.22


SGBD
Concepto y funciones
El SGBD actúa como interfaz entre la BD y los distintos niveles de gestión de
la organización. Integra los distintos subsistemas, atendiendo a las
necesidades de los usuarios en los tres niveles.
NIVEL
NIVELESTRATEGICO
ESTRATEGICO
Elaboración
Elaboraciónde
deplanes
planes
Objetivos generales
Objetivos generales

S
NIVEL
NIVELTACTICO
TACTICO G BD
Control
Controldedegestión
Objetivos
gestión
Objetivosespecíficos
específicos
B común
D

NIVEL
NIVELOPERACIONAL
OPERACIONAL
Tareas
Tareasadministrativas
administrativas

Ordenes y Planes
Información
BD 09-10 ESI-UCLM 1.23

SGBD
Concepto y Funciones
• Funciones esenciales de un SGBD:
ƒ Función de Definición o descripción
ƒ Función de Manipulación
ƒ Función de Control

• Otras funcionalidades:
ƒ Procedimientos de Administración
ƒ Reorganizaciones
ƒ Copias de seguridad
ƒ Cargas de ficheros
ƒ Estadísticas
ƒ Generación de listados, etc.
ƒ Interfaces con gestores de transacciones y otros SGBD

BD 09-10 ESI-UCLM 1.24


SGBD
Concepto y Funciones
• Definición
ƒ Permite describir los elementos de datos con
ƒ su estructura, sus interrelaciones y sus validaciones.
ƒ A tres niveles:
ƒ Externo, Lógico Global e Interno
ƒ Mediante un LDD (Lenguaje de Definición de Datos)
• Manipulación
ƒ Permite manejar los datos
ƒ Buscar, Añadir, Suprimir y Modificar
ƒ Mediante un LMD (Lenguaje de Manipulación de Datos)
ƒ Para lo cual es necesario
ƒ Definir un criterio de selección (el usuario)
ƒ Indicar la estructura externa a recuperar (el usuario), y
ƒ Acceder a la estructura física interna (el sistema)
• Control
ƒ Reúne las interfaces de los usuarios, y
ƒ Suministra procedimientos para el administrador
BD 09-10 ESI-UCLM 1.25

SGBD
Funcionamiento – interacción con el S.O.

Comparación entre el acceso a un fichero y a una BD

PROGRAMA
PROGRAMADEDE
APLICACION
APLICACION

SGBD
SGBD

Base
de Subsistema Fichero
Datos de gestión de datos
(métodos de acceso)
S.O.
BD 09-10 ESI-UCLM 1.26
SGBD
Funcionamiento – entorno concurrente
3
Estructuras
lógica global
e interna
4
5
SGBD
Vistas externas
VE1 SISTEMA 2
VE2. 9 1
. 12 Area de Nombre de la
Comunicación 10 Vista externa
OPERATIVO AC1 VE1
Area de trabajo
6 Programa de
de usuario 11
8 ATU1
Aplicación
7 Unidad de ejecución 1(UE1)
DATOS ALMACENAMIENTO

INTERMEDIO

BASE
DE
DATOS

Relaciones entre el SGBD y los programas de aplicación en un entorno


BD 09-10 ESI-UCLM
concurrente 1.27

SGBD
Funcionamiento – entorno concurrente
El flujo de datos e instrucciones entre estos elementos es el siguiente:
• Se produce una llamada desde una unidad de ejecución al SGBD (Æ1);en la
llamada se ha de hacer referencia la vista externa implicada (Æ2).
• El SGBD analiza la llamada y completa los argumentos con la información de la
vista externa a la que se ha hecho referencia en la llamada, así como con la
correspondiente a la estructura lógica global y la estructura interna con ella
relacionadas; esta información se encuentra previamente almacenada en los
ficheros del sistema, desde donde pasa al SGBD (Æ3 y 4)
• Una vez comprobado el derecho del programa de aplicación (PA) a utilizar esta
vista, y después de verificar su corrección, el SGBD traduce la llamada
convirtiéndola en órdenes a los métodos de acceso del sistema operativo,
dirigiéndose a éste (Æ5).
• El sistema operativo accede al soporte secundario (disco) donde se encuentran
almacenados los datos (Æ6).
• Los datos a recuperar pasan del soporte donde se encuentra almacenada la
base de datos al área de almacenamiento intermedio (buffer); si se tratase de
una inserción o modificación pasarían en sen sentido contrario (Æ7).
• Los datos son transferidos desde el área de almacenamiento intermedio al área
de trabajo del usuario de la unidad de ejecución desde donde se hizo la llamada
(Æ8), o en sentido contrario si se trata de una inserción o modificación,
realizándose las correspondientes transformaciones entre las representaciones
de los datos.
ACn VEn
BD 09-10 ESI-UCLM 1.28
Programa de
ATUn
Aplicación

UEn
SGBD
Funcionamiento – entorno concurrente

7. El SGBD, una vez terminada la operación de manipulación (sea recuperación o


actualización); pasa por el área de comunicación los indicadores de estado
(Æ9); en los que se señala si la operación ha acabado satisfactoriamente o no,
al tiempo que se dan otras informaciones sobre la operación realizada.
8. El PA revisa el estado de los indicadores que se encuentran en el área de
control de la unidad de ejecución desde la que se efectuó la llamada y toma las
decisiones oportunas (Æ10).
9. En el caso de que la operación haya terminado satisfactoriamente, los datos que
se encuentran en el área de E/S de la correspondiente unidad de ejecución ya
pueden ser utilizados por el PA (Æ11)
BD 09-10 ESI-UCLM 1.29

SGBD
Estructura General

FACILIDADES DE USUARIO GENERADORES DE APLICACIONES (L4G)

DICCIONARIO DE RECURSOS DE LA INFORMACION


GENERADORES
EXPORTADOR/ NUCLEO DEL SGBD
DE INFORMES
IMPORTADOR SISTEMA OPERATIVO

DATOS PRECOMPILADORES
DE LENGUAJES

UTILIDADES
AYUDAS AL
DEL SGBD LENGUAJE DE SGBD DISEÑO
(CASE)
(Catálogo)

APLICACIONES DESARROLLADAS

BD 09-10 ESI-UCLM 1.30


BD 09-10 ESI-UCLM 1.32
SGBD
Independencia de Datos – físico/lógica

En una arquitectura de dos niveles

NIVEL USUARIO X NIVEL SISTEMA

EE1
EE1

EI
EI

EEn
EEn
BD 09-10 ESI-UCLM 1.33

SGBD
Independencia de Datos – físico/lógica
En una arquitectura de tres niveles

NIVEL EXTERNO NIVEL LÓGICO GLOBAL NIVEL INTERNO

X1 X2
EE1
EE1

EC
EC EI
EI

EEn
EEn

Independencia Independencia
lógica física

BD 09-10 ESI-UCLM 1.34


SGBD Es un grupo de estudio del Standard Planning and
Reuirements Committee (SPARC) del ANSI (American
Arquitectura ANSI/X3/SPARC National Standars Institute) dentro del Comité X3 que se
ocupa de ordenadores e informática.
NIVEL ESQUEMA ESQUEMA
EXTERNO EXTERNO 1 EXTERNO n

Correspondencia
Externa/Conceptual

NIVEL ESQUEMA
CONCEPTUAL CONCEPTUAL
Correspondencia
Conceptual/Interna

NIVEL ESQUEMA
INTERNO INTERNO

DATOS ALMACENADOS
BD 09-10 ESI-UCLM 1.35

SGBD
Arquitectura ANSI/X3/SPARC simplificada
ADMINISTRADOR
DE LA EMPRESA

D
1
E
F
PROCESADOR
I ADMINISTRADOR
N ADMINISTRADOR DEL ESQUEMA
CONCEPTUAL DE
I DE LA BD
APLICACIONSE
C 3 3
I
O 13 2 4
N
PROCESADOR PROCESADOR
DEL ESQUEMA META- DEL ESQUEMA
INTERNO DATOS EXTERNO
14 5

M
A 34 36 38
N
I TRANSFORMADOR TRANSFORMADOR TRANSFORMADOR
P INTERNO/ CONCEPTUAL / EXTERNO/
U Datos ALMACENADO INTERNO CONCEPTUAL
L 21 30 31
A
C 12
I LEYENDAS
O
N
Funciones
de programa Funciones Diccionario Interfaces USUARIO
humanas de datos

BD 09-10 ESI-UCLM 1.36


SGBD
Arquitectura ANSI/X3/SPARC simplificada
• Definición de la BD: La parte de definición se facilita por medio de una
serie de funciones de programa e interfaces, dando lugar a un conjunto
de datos llamados metadatos que se almacenan en el diccionario o
catálogo.
• Una BD se define especificando primeramente el esquema conceptual a
través de la interfaz 1, que podría ser un lenguaje de definición del
esquema conceptual, o una herramienta CASE integrada. Este esquema
conceptual es compilado por el procesador del esquema conceptual y se
almacena por medio de la interfaz 2 en la metabase de datos.
• El procesador del esquema conceptual utilizando la interfaz 3, que podría
consistir, por ejemplo, en un conjunto de menús. Utilizando esta
información pueden definirse los esquemas interno y externo a través de
las interfaces 4 y 13, que serían controlados por los procesadores
correspondientes, y almacenados en la BD a través de las interfaces 5 y
14.
BD 09-10 ESI-UCLM 1.37

SGBD
Arquitectura ANSI/X3/SPARC simplificada
• Manipulación de la BD: El usuario puede entonces manipular (insertar,
borrar, modificar y recuperar) los datos utilizando la interfaz 12, que
podría ser un lenguaje de manipulación, por ejemplo SQL.
• Un petición de los datos por parte del usuario es ejecutada por los
transformadores externo/conceptual, conceptual/interno,
interno/almacenado, que utilizan los metadatos por medio de las
interfaces 38, 36 y 34.
• La solicitud del usuario en la interfaz 12 la convierten los transformadores
en peticiones a las interfaces 31, 30 y 21, que devuelven el resultado al
usuario. Estas últimas interfaces constituyen la función de vinculación
entre los distintos niveles.

BD 09-10 ESI-UCLM 1.38


SGBD
Arquitectura ANSI/X3/SPARC
SGBD
Facilidades de Usuario
O
N R

U D
F H
G C
E
N Sistema
L
U D E
A Operativo
D
O O
R

FU = Facilidades de Usuario
HGD = Herramientas de Gestión de Datos
LDU = Lenguaje de Datos de Usuario
LDUi = Lenguaje de Datos de Usuario interno LDU LDUi

BD 09-10 ESI-UCLM 1.39

SGBD
Arquitectura ANSI/X3/SPARC

demanda de petición al
F
usuario D SGBD
A
E
I
U
S
L
S G
respuesta en D
A
B
A respuesta del
formato usuario
D R SGBD D
I
E
O
S
LDU LDUi

BD 09-10 ESI-UCLM 1.40


SGBD
Usuarios - acciones
INSERTAR

MODIFICAR BASE
USUARIO BORRAR DE
DATOS
CONSULTAR

ACTUALIZACIONES

CONSULTAS
Interacción Usuario/Base de Datos
BD 09-10 ESI-UCLM 1.41

SGBD
Usuarios - tipos

a) Usuarios Informáticos
Diseñadores (lógicos/físicos)
Administradores
Analistas y programadores
b) Usuarios Finales
Esporádicos
Habituales

BD 09-10 ESI-UCLM 1.42


SGBD
Usuarios informáticos
• Diseñadores: Tienen la responsabilidad de identificar los datos que han de estar
contenidos en la BD, de acuerdo con las necesidades que les manifiesten los
usuarios, así como de determinar las estructuras más apropiadas para conseguir
satisfacer estas necesidades
ƒ Diseñadores lógicos: Deben ser capaces de determinar qué tipos de datos han de estar
contenidos en la base y conseguir plasmar el punto de vista del conjuento de usuarios en las
estructuras lógicas más adecuadas para éstos.
ƒ Diseñadores físicos: Su objetivo es transformar las estructuras lógicas en estructuras físicas que
proporcionen la mayor eficiencia de cara a la máquina, minimizando el tiempo de respuesta y el
consumo de recursos, es decir, optimizar el ratio coste/beneficio.
• Administradores: Su misión es la vigilancia y gestión de los datos.
Debe velar por la confidencialidad, disponibilidad e integridad de los datos.
Será el responsable de establecer el sistema de autorizaciones de acceso y deberá
coordinar y controlar su uso.
Tendrá a cargo la gestión del SGBD y otras herramientas relacionadas.
Deberá ocuparse del buen funcionamiento de todo el sistema, sin que se
produzcan paradas y de modo que se proporcionen los tiempos adecuados de
respuesta.
• Analistas y programadores: tienen a su cargo él análisis y la programación de las
aplicaciones solicitadas por los usuarios.
BD 09-10 ESI-UCLM 1.43

SGBD
Usuarios finales
• Habituales: Suelen hacer consultas/actualizaciones en la base de datos
como parte habitual de su trabajo. Utilizan menús previamente
preparados por programadores, de forma que s efacilite su interrelación
con el ordenador. En otros casos pueden usar lenguajes sencillos para el
acceso a la BD, así como paquetes de programas.

• Esporádicos: Es un tipo de usuarios muy parecido al anterior en la medida


en que necesitan el ordenador a fin de que les preste una ayuda en su
trabajo, peor en cambio no lo utilizan habitualmente porque el tipo de
actividad que realizan no lo exige.
Se les tiene que suministrar herramientas sencillas y, en general,
potentes.

BD 09-10 ESI-UCLM 1.44


Lenguajes de los SGBD - clasificación
Aplicaciones formalizables
Por tipos de aplicaciones
Aplicaciones no formalizables

Informáticos
Por tipos de usuarios
Finales

Definición
Por tipo de función
Manipulación

BD 09-10 ESI-UCLM 1.45

Lenguajes de Datos - clasificación

Huésped
Autocontenido

Muy procedimental
Poco procedimental

Diferido (por lotes)


Conversacional (interactivo)

Registro a registro (navegacional)


Conjunto de registros (especificación)

BD 09-10 ESI-UCLM 1.46


Lenguajes de Datos - clasificación
1. Huésped: LMD que el programador precisa que se embeba en un lenguaje de
programación.
Autocontenido: ofrecen facilidades a los usuarios con pocos conocimientos de
programación, para, desde un terminal y en modo interactivo, acceder a la BD y
manipular los datos almacenados en ella sin necesidad de apoyarse en un
lenguaje de programación.
2. Muy procedimental, Poco procedimental: Un LMD es tanto más procedimental
cuanto con más detalle sea preciso especificar el procedimiento necesario para
acceder a la BDa fin de recuperar o actualizar los datos. En un lenguaje poco
procedimental basta con decir qué se quiere, sin explicar cómo obtenerlo;
mientras que si el lenguaje es más procedimental no es suficiente con que se
indique el qué, sino que es necesario, además precisar el algoritmo.
3. Diferido, Conversacional: aunque algunos LMD se utilizan en diferido
(tratamiento por lotes), en la actualidad la mayoría de los LMD permiten su uso
en modo conversacional o interactivo desde un terminal.
4. Navegacional: LMD que recuperan o actualizan los datos registro a registro, y es
el programador quien debe indicar el camino que se ha de recorrer, a través de
la estructura definida, hasta llegar al registro buscado. Cada sentencia del LMD
permite recuperar un único registro.
Especificación: LMD que actúan sobre grupos de registros, de forma que una
única sentencia puede dar lugar a la recuperación o actualización del conjunto
de registros que cumpla el criterio de selección especificado.
BD 09-10 ESI-UCLM 1.47

Lenguajes de Datos – clasificación

Procesos formalizables y muy repetitivos:


Se realizan mediante programas, con tratamiento por lotes y periodicidad
fija (emisión mensual de nóminas), o tratamiento interactivo (consultas).
Procesos difícilmente formalizables, o poco repetitivos:
No suele ser conveniente escribir programas. Es más conveniente que los
resuelva el usuario final con los procedimientos que le proporcione el SGBD
(lenguajes de usuario final, menús, etc.).
Usuarios informáticos:
Requieren medios potentes y flexibles. Utilizan lenguajes anfitriones y
lenguajes huéspedes.
Usuarios finales:
Medios simples para comunicarse con la BD (lenguajes autocontenidos de
sintaxis sencilla, menús, ...).

BD 09-10 ESI-UCLM 1.48


Lenguajes de Datos – Definición vs Manipulación

Lenguaje de Definición de Datos (LDD) ó


Data Definition Language (DDL)
• Suelen ser autocontenidos y no necesitan apoyarse en ningún lenguaje de
programación.

Lenguaje de Manipulación de Datos (LMD) ó


Data Manipulation Language (DML)
• Deben permitir al usuario referirse a un conjunto de datos que cumplan
una cierta condición (criterio de selección).
• Un mismo LMD puede actuar como huésped y como autocontenido.
• La mayoría permiten el uso en diferido y en conversacional.
• El programador precisa de un LMD embebido y bastante procedimental.
• El usuario no informático precisa un LMD autocontenido, muy poco
procedimental e interactivo.
BD 09-10 ESI-UCLM 1.49

Lenguajes de Datos – Huésped vs Autocontenidos

Un lenguaje huésped es, en general: Ejemplo:


• Procedimental DL/1 (IMS de IBM): huésped, muy
• Se explota en diferido procedimental, diferido y
• Navegacional navegacional

Un lenguaje autocontenido es, en general:


• Declarativo
• Conversacional
• Recupera conjuntos de registros
Ejemplo:
SQL: huésped y autocontenido, poco SELECT nombre, apellido
procedimental, recupera conjuntos de FROM persona
registros, actúa en diferido y en
WHERE fecha_nac = “28/11/65”
conversacional.

BD 09-10 ESI-UCLM 1.50


Lenguajes de Datos – Huésped o Embebidos

.........................................
SENTENCIAS DECLARATIVAS
.........................................
declaración de áreas de E/S para las transferencias de datos desde/hacia la BD
declaración de áreas para la comunicación de mensajes
.........................................
LLAMADA A LA VISTA DE USUARIO (interacción con la BD)
.........................................

SENTENCIAS DE PROCESO
.........................................
LLAMADA A LA SENTENCIA DEL LMD (interacción con la BD)
comprobación del contenido del área de mensajes
.........................................

Estructura simplificada de un programa escrito en un lenguaje anfitrión que


llama a un LMD
BD 09-10 ESI-UCLM 1.51

Lenguajes y procedimientos de los SGBD

LENGUAJES DE DEFINICION DE DATOS (LDD)


externo
lógico
- Definición de datos global
interno físico

LENGUAJES DE MANIPULACION DE DATOS (LMD)


recuperación
- Manipulación de datos
actualización

PROCEDIMIENTOS PARA EL ADMINISTRADOR


- Reorganizaciones
- Copias de seguridad
- Estadísticas
- Cargas de ficheros
.....
INTERFACES O MONITORES DE TELEPROCESO

BD 09-10 ESI-UCLM 1.52


Lenguajes de Datos – Clases (vista general)
Fun ciones D E SCRIPC IO M A N IP ULAC IO N
Usuarios IN TER N A LOGICA GLOBN
AL EXT E RN A

LEN GU A JE D L E NGU AJE DE L E NGU AJE DE P R O C E D IM IE N T O S :


A
D T E D E S CRIP C D E SCRIPCIO N D E SC R IPC IO N DE - C R E A C IO N
R IO N DE DE DA T O S V ISTA S EX TER NA S - OPTIM IZA C IO N
M A DA T O GL O B AL E S - R E OR GAN IZ AC IO N
I S - R E CU P E RA CION
N D
O IN T E R N - C O PIA S SEG U R IDA D
I OS ..............
R
S
M LLA M A D A A UN - L M D (E M B E B IDO)
I A A VIS T A DE F IN - G E N E RA DOR DE IN F O R M ES
N
T IDA - A YUD AS
F
I PO R EL - L 4G
O
C AD M IN IS T R ADO R ......
R
O
F V ISTA EX TER - U S O DE AP L IC A C IO N E S
N
O O L B NA D E SC R ITA - L 4G
R I EN EL PR O P IO - LEN GU A JES PAR A M ETR IC
L
M Z E
I P R O C E D IM IE OS PAQ U E TES
A A
N TO
F
O
F A C IL IDAD - LEN GU A JES A U TO C O N TEN ID
R L ES IN CL OS
M F I UIDAS - PAQ U ETES
A N O Z EN LO S LEN G U A JES O
T O R EN LO S PA QU ETES
I A
M
C BA
O LE
S
B 1
D .

Potrebbero piacerti anche