Vous êtes sur la page 1sur 35

Mdulo: Bases de Datos

1 DAW

Unidad 1
Sistemas de almacenamiento
de la informacin
Contenidos:
1. Introduccin
2. Sistemas de gestin de ficheros
3. Base de datos.
4. Sistemas gestores de bases de datos

Resultados de aprendizaje:
Se reconocen los elementos de las bases de datos analizando sus
funciones y valorando la utilidad de sistemas gestores
1

1. Introduccin

El diseo de datos es el proceso por el que se determina la organizacin de


la informacin necesaria para el sistema.

Se realiza generalmente en tres fases:

Diseo conceptual

Diseo lgico
Diseo fsico

Anlisis
Diseo

Cada fase es un proceso iterativo, se van produciendo refinamientos


sucesivos antes de pasar a la siguiente fase

1. Introduccin
REALIDAD

REQUISITOS

MODELO
DISEO CONCEPTUAL

MODELO

CONCEPTUAL
anlisis

CONCEPTUAL

MODELO
DISEO LOGICO

LOGICO

ESQUEMA CONCEPTUAL

MODELO
DISEO FISICO

ESQUEMA FISICO

FISICO

diseo

1. Introduccin
Objetivos de cada fase:

Diseo conceptual:
Representacin de los recursos de informacin del sistema, con
independencia de usuarios, aplicaciones en particular, y fuera de
consideraciones sobre dispositivos fsicos

Diseo lgico
Transformacin del modelo conceptual de datos obtenido en la
etapa anterior, adaptndolo al sistema de gestin de datos que se
vaya a utilizar y definicin de especificaciones para los programas
de acceso a los datos

Diseo fsico
Estructuracin y almacenamiento del conjunto de datos del modelo
lgico anterior, en un determinado dispositivo fsico, optimizando la
relacin costes/beneficios

2. Sistemas de gestin de ficheros


Hasta hace unos aos, los sistemas informticos se han estado
implantando con aplicaciones basadas en FICHEROS dependientes del
Hw y del Sw
Actualmente, para independizar la informacin de las aplicaciones, se
utilizan BASES de DATOS.
La informacin manejada por el sistema informtico se almacena en
archivos en soportes de almacenamiento (memorias secundarias)

Los sistemas operativos ofrecen el tipo abstracto de datos archivo y las


operaciones necesarias para definirlo, utilizarlo y eliminarlo,
encargndose de acoplar el archivo al dispositivo fsico de
almacenamiento
En general, un ARCHIVO es una secuencia de bytes cuyo significado lo
define su creador (texto, grfico, de datos,...)
5

2. Sistemas de gestin de ficheros


Definicin de FICHERO o ARCHIVO:

Conjunto de informacin relacionada, tratada como una


unidad de almacenamiento en memoria secundaria y
organizada de forma estructurada para facilitar la
bsqueda de datos individuales
Un archivo almacenado en un soporte de almacenamiento
secundario tiene un nombre u una extensin
nombre.ext
La extensin determina el formato de la informacin que
contiene

2. Sistemas de gestin de ficheros


Formato y tipo de FICHEROS:

Determina la forma de interpretar la informacin que


contiene un fichero (que es una cadena de bits, o sea, ceros y
unos)
Ejemplos:
Archivo. Doc
Archivo.txt
Archivo.exe
Archivo.bmp
Archivo.sys
Archivo.dll

2. Sistemas de gestin de ficheros


Ficheros de texto (planos o ASCII):

Contienen caracteres codificados en binario (normalmente segn el


cdigo ASCII). No necesitan ser interpretados.
Ejemplos:

Ficheros de configuracin (.ini, .inf, .conf,)


Ficheros de cdigo fuente (.sql, .c, .java,)
Ficheros de pginas web (.html, .xml, .php,)
Formatos enriquecidos (textos que contienen tambin cdigos de
control para ofrecer una visin ms elegante del texto: .rtf, .tex,)

2. Sistemas de gestin de ficheros


Ficheros binarios:

No contienen texto
Necesitan ser interpretados
Ejemplos:

de imagen jpg, .gif, .bmp,)


de vdeo (.mpg, .mov, .avi,)
comprimidos (.zip, .rar, )
Ejecutables o compilados (.exe, .com,)
Procesadores de texto (.doc, .odt,)
De datos (.mdb, .)

2. Sistemas de gestin de ficheros


Ficheros de datos:
DATO: informacin concreta sobre un concepto o suceso.
TIPO de DATO: indica la naturaleza del dato

Un fichero est compuesto por REGISTROS homogneos que


contienen la informacin organizada en CAMPOS

Un CAMPO es la mnima unidad de procesamiento con significado


propio

Fichero
Registro
Juan Daz

19

Registro
Mlaga

Ana Lpez

20

Registro
Madrid

Eva Garca

10

Campos

Dato de tipo Entero

2. Sistemas de gestin de ficheros


Operaciones sobre ficheros de datos :

Crear
Borrar
Copiar
Clasificar
Fusin

Operaciones sobre registros (a travs de los programas):


Apertura del fichero
Recuperacin y consulta de registros (lectura)
Actualizacin (escritura)
Modificacin, eliminacin , insercin
Cierre del fichero

11

2. Sistemas de gestin de ficheros


Clasificacin de ficheros :

Segn:
Tipo de sus
registros

Con formato (reg long. fija)


Sin formato (reg. long. variable)

Contenido

Texto
Binario (imgenes, vdeo, audio,.)

Organizacin

Secuencial
Directo
Indexado

Funcin

Permanentes (constantes, maestros, histricos)


Temporales (movimientos, maniobra)

12

2. Sistemas de gestin de ficheros


Organizacin de ficheros :

Secuenciales

Lineales
Encadenados

Directos

Direccionamiento directo
Direccionamiento asociado (por clave)
Direccionamiento calculado (hashing)

Indexados

Niveles de ndices
Invertida

13

2. Sistemas de gestin de ficheros


Organizacin de ficheros :
Organizacin Ventajas
No desaprovecha espacio

Secuenciales Si % consulta grande eficiencia de


recuperacin
Soportes secuenciales baratos

Directos

Indexados

Rapidez en la recuperacin
Se puede acceder secuencialmente
Actualizar no requiere fichero
movimientos

Inconvenientes
Lento, el acceso a un dato implica
pasar por los anteriores
Insertar solo al final
No se puede borrar
Actualizar necesita un fichero
movimientos y crear de nuevo el
maestro
Estimacin inicial del n de
registros para que no falte ni se
desperdicie
Algoritmo de transoformacin
Sinnimos y huecos

Fichero ordenado por varios criterios


(varios ndices)

14

3. Base de Datos
BASE de DATOS:
Conjunto, coleccin o depsito de datos almacenados en un soporte
informtico. Los datos deben estar interrelacionados y estructurados de
acuerdo con un modelo capaz de recoger el mximo contenido semntico.

Una base de datos consiste en alguna coleccin de datos persistentes e


independientes usados por una organizacin determinada. (Date, 1995)
Esto significa que los datos estn integrados (eliminando total o
parcialmente la redundancia) y son compartidos (aunque cada
usuario o aplicacin tenga una vista o percepcin distinta de los
datos)

15

3. Base de Datos
USO de las BASE de DATOS (ms frecuentes):

Administrativas (en cualquier empresa: clientes, ventas,)


Contables (informacin necesaria para gestin de pagos,
declaraciones hacienda,)
Para motores de bsquedas (como Google,)
Cientficas (datos climticos, geolgicos,)
De configuraciones (datos de configuracin de sistemas
informticos: registro de Windows,)
Bibliotecas (informacin bibliogrfica)
Censos (informacin demogrfica de pueblos, ciudades,)
Virus (informacin sobre sw potencialmente malicioso)
Otros: militares, deportes,..

16

3. Base de Datos
Estructura del sistema de Base de Datos
usuario

Programador

Interfaces Programadores
de aplicacin de aplicacin

Administrador Usuarios
Planificacion
de BD

Consulta

Procesador
De consultas

Precompilador
De LMD
Codigo obj.
de prog. de aplic.

Usuario

Compilador
de LDD

SGBD

gestor
de archivos

Datos

Archivos
de datos

Diccionario
de datos

Hw

Almacenamiento en disco

17

3. Base de Datos
Componentes de un sistema de Base de Datos:
DATOS:
el repositorio de datos almacenados
Hardware:
dispositivos de almacenamiento secundario y otros dispositivos de
control asociados
Usuarios:
Usuarios finales
Programadores de aplicaciones
Administrador de la BD (DBA)
Software (SGBD o DBMS):
Procedimientos encargados del uso correcto de la informacin.
Manejan todos los accesos a los datos solicitados por los usuarios

18

3. Base de Datos
Evolucin de los sistemas de Base de Datos:
Aos 60-70 sistemas de ficheros
Cada vez que se le quera aadir una aplicacin que requera el uso
de algunos de los datos que ya existan y de otros nuevos, se
diseaba un fichero nuevo con todos los datos necesarios (algo que
provocaba redundancia) para evitar que los programas tuviesen que
leer muchos ficheros.
Aos 70-80 Primeros SGBD

19

3. Base de Datos
Evolucin de los sistemas de Base de Datos:
Aos 90 distribucin, C/S y 4GL
Los datos de la BD se distribuyen entre varias mquinas
Tres posibilidades:
o
o
o

Totalmente replicada: los datos repetidos en todas


Sin replicacin
Distribucin y replicacin: en un servidos toda la BD completa y
otras mquina slo lo que ms usa

20

3. Base de Datos
Evolucin de los sistemas de Base de Datos:
Aos 90 distribucin, C/S y 4GL
La tecnologa que se utiliza habitualmente para distribuir datos:
arquitectura cliente/servidor (C/S).

Todos los SGBD relacionales del mercado han sido adaptados a este
entorno.
El SGBD se divide en dos partes

SERVIDOR: sw que gestiona la BD

CLIENTE: sw que gestiona la interaccin con el usuario y las


aplicaciones

Pueden estar en la
misma mquina

21

3. Base de Datos
Evolucin de los sistemas de Base de Datos:
Tendencias actuales:

Hoy da, los SGBD relacionales estn en plena transformacin para


adaptarse a tres tecnologas de xito reciente, fuertemente
relacionadas:
la multimedia nuevos tipos de datos (Tipos abstractos de
datos)
la de orientacin a objetos (OO) La utilizacin de lenguajes
como C++ o Java requiere que los SGBD relacionales se adapten
a ellos con interfaces adecuadas.

Internet y la web inclusin de SQL en guiones HTML, SQL


incorporado en Java, etc

Nuevas aplicaciones de BD Data Warehouse

22

3. Base de Datos
Administrador de la Base de Datos

Persona o grupo de personas encargados del control centralizado de los


recursos de la BD (datos+programas)

Funciones:

Definicin de esquema: conjunto de definiciones (escritas en un


lenguaje de definicin de la BD) que sern traducidas por el compilador
de la BD a un conjunto de tablas que se almacenan de forma
permanente en DD.

Definicin de la estructura de almacenamiento y del mtodo de acceso.

Concesin autorizacin para el acceso a los datos.

Definicin procedimientos de validacin

Definicin de estrategias de respaldo y recuperacin

23

3. Base de Datos
Administrador de la Base de Datos

Funciones:

Especificacin de las restricciones de integridad

Modificacin del esquema y de la organizacin fsica: a travs de


programas de utilidad como:
o
o
o
o
o

Rutinas de carga iniciales (para crear la BD)


Rutinas de reorganizacin (para recuperar espacio ocupado por
datos obsoletos)
Rutinas de registro de sucesos diarios (todo lo que se hace, quin lo
hace y valores anteriores y posteriores)
Rutinas de recuperacin (para restaurar la BD al estado anterior a
un fallo Hw o de programa)
Rutinas de anlisis estadstico (ayudan a controlar el desempeo de
la BD)

24

3. Base de Datos
SGBD:

Es un conjunto coordinado de programas, procedimientos,


lenguajes, etc.. que suministra tanto a los usuarios como al
administrador de la base de datos, los medios necesarios para
describir, manipular y utilizar los datos almacenados en la base,
manteniendo la integridad, confidencialidad y seguridad.

Su objetivo principal es simplificar y facilitar el acceso a datos.

Proporciona la interfaz entre los datos de bajo nivel almacenados en


la base de datos y los programas de aplicacin y consultas hechas al
sistema

25

4. Sistemas gestores de Base de Datos


Objetivos SGBD

Para ser lo ms rpido, eficiente, polivalente y seguro


Se consiguen al proporcionar el SGBD un control centralizado de
los datos de operacin (por el DBA)

1.
2.
3.
4.
5.
6.
7.
8.
9.

Independencia de los datos


Reserva y seguridad
Integridad
Respaldo y recuperacin
Redundancia mnima.
Evitar la inconsistencia de datos
Control de la concurrencia y simultaneidad
Tiempo de respuesta
Cumplir las reglas establecidas

26

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 1. Independencia de los datos

Independencia fsica de datos:


es la capacidad de modificar el esquema fsico sin provocar que se
vuelvan a escribir los programas de aplicacin.

Que se pueda llevar a cabo todo tipo de cambios tecnolgicos y


variaciones en la descripcin de la BD, sin que se deban modificar
los programas de aplicacin ya escritos ni cambiar la forma de
escribir las consultas (o actualizaciones) directas.

Los usuarios y programadores NO necesitan saber nada sobre el


soporte fsico, ni estar al corriente de qu SO se utiliza, qu
ndices hay, la compresin o no compresin de datos, etc

27

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 1. Independencia de los datos

Independencia lgica de datos:


es la capacidad de modificar el esquema conceptual sin provocar
que se vuelvan a escribir los programas de aplicacin.

La independencia lgica de datos es ms difcil de lograr que la


independencia fsica, los programas son dependientes de la
estructura lgica de los datos.

Ejemplo:
El hecho de suprimir el atributo fecha de nacimiento de la

entidad alumno y aadir otra entidad aula no debera


afectar a ninguno de los programas existentes que no
utilicen el atributo fecha de nacimiento.

28

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 1. Independencia de los datos

29

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 2. Reserva y seguridad

Seguridad:
Proteccin de los datos contra el acceso accidental o intencionado
por parte de individuos no autorizados y contra su indebida
alteracin o destruccin

Reserva:
Derecho de los individuos y organismos para determinar por ellos
mismos cundo, cmo y en qu medida y circunstancias se
permitir la comunicacin de tal informacin a terceros.

Para ello el DBA debe:


Asegurar que el nico medio de acceder a una BD sea a travs
de los medios establecidos
Definir controles de autorizacin que aplicarn cada vez que se
intente acceder a los datos

30

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 3. Integridad

Medidas de seguridad empleadas para que los datos de la BD


sean correctos (no haya inconsistencias ni datos errneos)

Los datos no son correctos debido a:

Fallo del Hw
Defectos del Sw
Actualizaciones incompletas (cae el sistema,...)
Insercin de datos no vlidos

El SGBD debe permitir al DBA debe definir los procesos de


validacin que se ejecutarn cada vez que se intente una
operacin de actualizacin (tipos de datos, valor de los datos)
Reglas de integridad del modelo
Reglas de integridad del usuario
31

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 4. Respaldo y recuperacin

Respaldo:
Copias de seguridad regularmente

Recuperacin:
uso de la copia para corregir problemas

32

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 5. Redundancia mnima

La redundancia no se elimina totalmente, pero debe ser mnima y


CONTROLADA para facilitar el acceso a los datos de forma rpida
y eficiente

El SGBD debe permitir que el diseador defina datos redundantes,


pero entonces tendra que ser el mismo SGBD el que hiciese
automticamente la actualizacin de los datos en todos los
lugares donde estuviesen repetidos.

Ejemplos de redundancia: claves ajenas, datos derivados

33

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 6. Evitar la inconsistencia

Es consecuencia de la redundancia.

Si hay redundancia puede haber inconsistencia al actualizar unos


datos y otros no

Redundancia controlada = no inconsistencia

34

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 7. Control de la concurrencia y simultaneidad

La multiprogramacin permite ejecutar concurrentemente dos o


ms programas a la vez, diferentes e independiente, en el mismo
ordenador; y que varios usuarios en distintos terminales
compartan la misma BD

El SGBD debe controlar la interacin entre las transacciones


concurrentes
Transaccin: conjunto de operaciones simples que se ejecutan
como una unidad

Ejemplos: bloqueo, cierre por semforo, bloqueo mutuo

35

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 7. Control de la concurrencia y simultaneidad

Bloqueo:

Instantes
de tiempo

Cliente
Caja 1

t1

El cliente lleva 5 unidades


del prod. X.
Se lee el stock y quedan
100

t2

Se hacen las operaciones de El cliente lleva 10 unidades


clculo
del prod. X.
Se lee el stock y quedan 100

t3

Se anota nuevo stock 95

t4

Cliente
Caja 2

Se hacen las operaciones de


clculo
Se anota nuevo stock 90

Realmente quedan 85 !!
36

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 7. Control de la concurrencia y simultaneidad

Cierre mediante semforo:

Instantes
de tiempo

Cliente
Caja 1

Cliente
Caja 2

t1

El cliente lleva 5 unidades


del prod. X.
Se lee el stock (quedan
100) y se cierra el semforo

t2

Se hacen las operaciones de El cliente lleva 10 unidades


clculo
del prod. X.
Semforo cerrado cola de
espera

t3

Se anota nuevo stock: 95


Se abre el semforo

El proceso sale de la cola y


lee el stock (95 unidades)

t4

Se hacen las operaciones de


clculo

t5

Se anota nuevo stock: 85


37

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 7. Control de la concurrencia y simultaneidad

Problema bloqueo mutuo:

Instantes
de tiempo

Cliente
Caja 1

Cliente
Caja 2

t1

El proceso accede al archivo El proceso accede al archivo


ARTICULOS y se cierra su
CLIENTES y se cierra su
semforo
semforo

t2

Se hacen las operaciones de Se necesita acceder al


clculo
archivo ARTICULOS, pero el
semforo cerrado cola de
espera

t3

Se necesita acceder al
archivo CLIENTES, pero el
semforo cerrado cola de
espera
1.

El SGBD tiene que impedir que esto suceda, algo difcil que afectara al
rendimiento del SGBD

2.

Puede detectarse y dar marcha atrs para corregirlo

SOLUCIONES

38

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 8. Tiempo de respuesta

Conseguir un tiempo de respuesta suficientemente pequeo para


evitar que el usuario se desespere

Tiempo de respuesta=

Tiempo que transcurre desde que el usuario


termina de realizar una peticin al sistema
hasta que empieza a recibir respuesta

39

4. Sistemas gestores de Base de Datos


Objetivos SGBD: 9. Cumplir las reglas establecidas

El DBA debe garantizar que se cumplan las normas establecidas


para la representacin de los datos:

Normas
Normas
Normas
Normas
....

de la empresa
de departamentos
industriales
nacionales o internacionales

40

3. Base de Datos
Arquitectura de SGBD:

Uno de los objetivos de un sistema de gestin de base de datos es


proporcionar a los usuarios una visin abstracta de la informacin,e s decir,
ocultar detalles referentes a la forma en que los datos se almacenan y
mantienen, pero siempre permitiendo una recuperacin eficaz de la
informacin:

Conseguir independencia entre las estructuras lgica y fsica de


datos (para conseguir la independencia entre datos y aplicaciones)

Para alcanzar este objetivo, los SGBD siguen una arquitectura


estndar:
Arquitectura ANSI a tres niveles
41

3. Base de Datos
Arquitectura ANSI a tres niveles:

Nivel Externo

Vista 1

Vista 2

....

Vista n

Nivel conceptual

Nivel interno
42

3. Base de Datos
Arquitectura ANSI a tres niveles:
Nivel interno:
Orientado hacia la mquina: comprende caractersticas de tipo fsico,
(tambin llamado nivel Fsico).
Se describe cmo se almacenan los datos en los dispositivos
fsicos = ESQUEMA INTERNO
Describe en detalle la estructura fsica
nombre, organizacin, ubicacin ....de archivos
Campos, longitud.... de los registros
Mtodos de acceso a los registros (ndices,
encadenamientos,...)
....
Slo hay un esquema interno en la BD
43

3. Base de Datos
Arquitectura ANSI a tres niveles:
Nivel conceptual:
Visin lgica del conjunto de informacin que proviene del mundo real,
de manera independiente de la plataforma de implementacin
computacional.
Se describen que datos y la relacin entre ellos = ESQUEMA
CONCEPTUAL
Describe en detalle la estructura organizacional de los datos
obtenida a partir de los requerimientos de los usuarios
Datos elementales
Datos compuestos
Entidades
Relaciones
Reglas que rigen el funcionamiento del sistema
....
Slo hay un esquema conceptual en la BD
44

3. Base de Datos
Arquitectura ANSI a tres niveles:
Nivel externo:
Orientado hacia el usuario; que comprende las caractersticas lgicas
de los datos para los programas de aplicacin
Se describe la visin que cada usuario o grupo de usuarios tienen
de la BD = ESQUEMA EXTERNO
A cada visin individual se le llama SUBESQUEMA EXTERNO o
VISTA
En un subesquema se pueden mezclar campos de distintos
registros, omitir campos, cambiar el orden de los campos, aadir
campos calculados, ....
Puede haber varios esquemas externos en la BD

45

3. Base de Datos
Arquitectura ANSI a tres niveles:
El SGBD debe garantizar la transferencia de datos desde elformato
correspondiente a un nivel al formato correspondiente a otro nivel
(Reglas de correspondencia o mapeo)
Dos niveles de transformacin
Externa/Conceptual

Permite el paso de la vista externa especfica a la


conceptual y viceversa
Conceptual/Interna

Permite el paso de la vista conceptual a la BD


almacenada y viceversa
46

3. Base de Datos
Arquitectura ANSI a tres niveles: mapeo
Usuario 1

Usuario 2

Vista 1

Usuario 3

Vista 2

Usuario n

....

Vista n
ESQUEMA EXTERNO

Correspondencia EXTERNO/CONCEPTUAL

Esquema conceptual

Correspondencia CONCEPTUAL/INTERNO

Esquema interno

47

3. Base de Datos
Arquitectura ANSI a tres niveles: mapeo
Cuando un usuario emite una solicitud de acceso a la BD (mediante
un lenguaje especfico), el SGBD hace:
1. Inspecciona la solicitud y la interpreta
2. Inspecciona :
a) Esquema externo
b) Transformacin externo/conceptual
c) Esquema conceptual
d) Transformacin conceptual/interno
e) Esquema interno
3. Realiza las operaciones necesaria sobre la BD

48

3. Base de Datos
Arquitectura ANSI a tres niveles: ejemplo
Usuario 1

Usuario n

ESQUEMA EXTERNO

Concepto | Dpto | Cant

....

Nombre | Dpto

...

Empleados

Dni | Nombre | Dpto |

Artculos

N | Concepto | PVP | ...

Ventas

Dni | N | Cantidad | Fecha | ...

ESQUEMA
CONCEPTUAL

Archivo empleados:
Dni: tipo, longitud...., Nombre:.......
ESQUEMA
INTERNO

Indices: Dni,...
Mtodos de acceso:....
......
49

4. Sistemas gestores de Base de Datos


Componentes de un SGBD

El SGBD se divide en mdulos que llevan a cabo sus funciones


asociadas

Diccionario de datos:
Contiene metadatos (descripcin de los objetos de la BD)

Gestin del DD

Lenguajes de definicin (DDL) y de manipulacin (DML)


de datos

Utilidades:
Otros servicios (programadores y usuarios)

Ncleo:
Servicios bsicos (objetivos y funciones del DBA)

50

4. Sistemas gestores de Base de Datos

SGBD: Diccionario de datos

Un directorio o diccionario de datos es un archivo que contiene


metadatos, es decir datos sobre datos

Este archivo se consulta antes de leer o modificar los datos reales


en el sistema de BD.

Contiene:
La descripcin de los tres esquemas
Tablas de usuarios (permisos, programas que utilizan,
operaciones que realizan,...)
Otros recursos implicados en el sistema

51

4. Sistemas gestores de Base de Datos


SGBD: Lenguajes de definicin de datos (DDL)

Un esquema de BD se especifica por medio de un conjunto de


definiciones que se expresan mediante un lenguaje especial
llamado lenguaje de definicin de datos (data definition language
(DDL)).

El resultado de la compilacin de sentencias de DDL es un


conjunto de tablas las cuales se almacenan en un archivo especial
llamado diccionario de datos (o directorio).

La estructura de almacenamiento y los mtodos de acceso usados


por los sistemas de BD (esquema interno) se especifican por
medio de un conjunto de definiciones en un tipo especial de DDL
llamado lenguaje de definicin de almacenamiento de

datos

El resultado de la compilacin de estas definiciones es un


conjunto de instrucciones que especifican los detalles de
implementacin de los esquemas de BD que se esconden la los
usuarios.
52

4. Sistemas gestores de Base de Datos

SGBD: Lenguajes de manipulacin de datos (DML)

Manipular los datos de la BD es:

La
La
La
La

recuperacin de informacin almacenada en la BD.


insercin de informacin nueva en la BD.
supresin de informacin de la BD.
modificacin de datos almacenados en la BD.

A nivel fsico debemos definir algoritmos que permitan acceso


acceso eficiente a los datos,

En los niveles altos, facilidad de uso.

53

4. Sistemas gestores de Base de Datos


SGBD: Lenguajes de manipulacin de datos (DML)

Un lenguaje de manipulacin de datos (data manipulation


language (DML)) es un lenguaje que capacita a los usuarios a
acceder o manipular los datos segn estn organizados por el
modelo de datos adecuado.

Existen dos tipos de DML:

Procedimentales.
No procedimentales.

DML es sinnimo de lenguajes de consultas.

54

4. Sistemas gestores de Base de Datos


SGBD: Lenguajes de manipulacin de datos (DML)
Procedimentales:

Requieren que el usuario especifique qu datos se necesitan y


cmo obtenerlos.
Embebidas en un lenguaje anfitrin

No procedimentales:

requieren que el usuario especifique qu datos se necesitan sin


especificar cmo obtenerlos.

Normalmente son ms sencillos de aprender y usar.

Sin embargo, estos lenguajes pueden generar cdigo que no sea


eficiente como los procedimentales.

SQL, QBE

55

4. Sistemas gestores de Base de Datos


SGBD: Utilidades

Aplicaciones que facilitan el trabajo a usuarios y programadores

Suelen tener una interfaz fcil de entender (a base de mens)

Algunas son:

Generadores de mens
Generadores de informes
Generadores de formularios
Generadores de grficos
Herramientas para importar/exportar datos
....

56

4. Sistemas gestores de Base de Datos


Tipos de SGBD

Existen varios tipos de SGBD, todos con la arquitectura de tres


niveles

El criterio principal de clasificacin es el modelo lgico en que se


basan

stos son:

Modelo jerrquico
Modelo en red
Modelo relacional

57

4. Modelos de SGBD (jerrquico, red, relacional)


REALIDAD

REQUISITOS

MODELO
DISEO CONCEPTUAL

MODELO

CONCEPTUAL
anlisis

CONCEPTUAL

MODELO
DISEO LOGICO

Una vez realizado el


modelo conceptual de
datos hay que traducirlo
a un modelo lgico de
datos (Esquema
Conceptual)

LOGICO

ESQUEMA CONCEPTUAL

Este modelo lgico de


datos puede ser
jerrquico, en red o
relacional

MODELO
DISEO FISICO

ESQUEMA FISICO

FISICO

diseo

58

4. Modelos de SGBD (jerrquico, red, relacional)

Modelo jerrquico
los datos se representan como colecciones de registros
las relaciones entre los datos se representan como conjuntos
cada nodo tiene un nico padre (rbol)

Modelo en red
los datos se representan como colecciones de registros
las relaciones entre los datos se representan como conjuntos
cada nodo puede tener ms de padre (redes)

Modelo relacional
Se basa en el concepto matemtico de Relacin (tablas)

59

4. Modelos de SGBD (jerrquico)


Modelo jerrquico
Primer modelo que se implant
Representacin lgica de los datos mediante rboles
Recorrido del rbol en preorden (RID)
Ejemplo:

LoweryMapleQueens

hodgesSidehill
Brooklin

Shiver North Bronx


556 100000 647 105366

900

55

647 105366 801 10533


60

4. Modelos de SGBD (jerrquico)


Modelo jerrquico
Ejemplo:
EB1

BBVA

EB2

Entidad bancaria

...

Bancaja ...

EB3

CCM

...

sucursal
Suc1
clientes

empleados

Mayor,1

Suc2
Suc3

dni1

Prez ...

...

Ancha, 9

...

Nueva, 6 ...

emp1

Director ...

emp2 Cajero

...

Cada registro de un segmento se identifica por su clave en la secuencia


jerrquica:
Valor compo clave con el n del nodo del rbol en preorden, prefijado
con el valor de la clave de secuencia jerrquica de su padre, si lo
tuviera y as sucesivamente hasta llegar al segmento raz.

Ejemplo: clave en secuencia del director: 1 EB1 2 Suc3 4 Emp1


61

4. Modelos de SGBD (jerrquico)


Modelo jerrquico

Cada NODO = tipo de registro = SEGMENTO = varios CAMPOS

Todas las relaciones son 1:N (ramas del rbol)


redundancia para poder representar relaciones N:M

cliente

1:N

1:N

N:M
cliente

artculo

cliente
artculo

cliente

No se permiten relaciones reflexivas

No se permite ms de una relacin entre dos segmentos dentro del


mismo rbol

Eliminar un nodo - eliminar todos los hijos

Esquema conceptual = una o varias estructuras arborescentes

SGBD jerrquicos: IMS (IBM), SYSTEM 2000 (Intel)

62

4. Modelos de SGBD (red)


Modelo en red
Una ocurrencia de registro especfico puede tener cualquier n de
superiores inmediatos (y de inferiores)
Terminologa de redes
CONJUNTO:
dos tipos de registro que tiene entre s una relacin muchos a
muchos.
Representacin a travs de un registro conector
Caractersticas:
o
o
o
o
o

Propietario: registro padre


Miembro: registro hijo
Un conjunto est formado en un solo reg propietario y uno o ms
registros miembros
Una ocurrencia de conjunto es una coleccin de registros, uno de
ellos es el propietario y los otros los miembros
Una ocurrencia de CONECTOR representa la asociacin entre los dos
tipos de registro, y contiene datos que describen esta asociacin
63

4. Modelos de SGBD (red)


Modelo en red
Ejemplo
cli1

Prez ...

30

art1

cli2

20

libro

...

Prez ...

40

30
art2

cli3

disco

...

Prez ...

50

art3

30

cinta

...

Todas las ocurrencias del conector de un cliente dado se colocan en


una cadena que parte de l y retorna a l

Todas las ocurrencias del conector para un artculo determinado se


colocan en una cadena que parte de l y retorna a l

Cada ocurrencia del conector est en dos cadenas, la del cliente y la


del artculo
64

4. Modelos de SGBD (red)


Modelo en red
Operaciones
cli1

Prez ...

30

art1

cli2

20

libro

...

Prez ...

40

30
art2

cli3

disco

...

Prez ...

50

art3

30

cinta

Insertar: crear una nueva ocurrencia que apunta a s mismo

Suprimir: ajustar la cadena

Actualizar: sin problemas

Complejidad en la estructura de datos y el DML

...

65

4. Modelos de SGBD (relacional)


Modelo relacional

Se basa en dos ramas matemticas:

Teora de conjuntos
Lgica de predicados de primer orden

Esto hace que sea un modelo seguro, fiable, robusto, predecible.

Proporciona, adems los elementos bsicos necesarios para crear


una BD relacional con una buena estructura

Introducido por Codd en 1970.

Sencillez de sus estructura lgica (tablas=filas x columnas)

66

4. Modelos de SGBD (relacional)


Estructura de los datos
Los datos se organizan en RELACIONES (representacin grfica
tabular)

Empleado

Departamento

NIF

Nombre

Edad

Dpto

...

Nombre

Funcin

...

1111A

Juan

55

Dpto1

...

Dpto1

Ventas

...

2222B

Ana

60

Dpto1

...

Dpto2

Estadstica

...

3333C

Eva

47

Dpto2

...

Dpto3

Compras

...

...

...

...

...

67

4. Modelos de SGBD (relacional)


Estructura de los datos

Ejemplo:

la relacin Departamento

Nombre

Funcin

Dpto1

Ventas

Dpto2

Estadstica

Dpto3

Compras

Cabecera: {(Nombre: NOMBRE), (Funcin:FUNCIN)}


Cuerpo: una tupla {(Nombre: Dpto1), (Funcin: Ventas)}

68

4. Modelos de SGBD (relacional)


Estructura de los datos
Propiedades de las relaciones:

Cada R tiene un nombre y ste es distinto del de las dems

Cada R tiene un n fijo de atributos para todas las tuplas

Cada atributo tiene un nico dominio

El orden de los atributos no importa

Dos atributos de una R no tienen el mismo nombre

Los valores de los atributos son atmicos: en cada tupla un atributo


toma un solo valor del dominio

Cada tupla es distinta de las dems. No hay tuplas duplicadas

El orden de las tuplas no importa

69