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
Bien plus que des documents.
Découvrez tout ce que Scribd a à offrir, dont les livres et les livres audio des principaux éditeurs.
Annulez à tout moment.