You are on page 1of 25

1.

Sistemas de bases de
datos
Contenidos
1.1 Bases de datos y sus usuarios
1.2 Conceptos y arquitectura del sistema de bases de
datos
1.3 Estructura general del sistema de bases de datos
Anexos
1. Clasificacin de los SGBD

Tema 1. Sistemas de bases de


datos

1.2 Conceptos y arquitectura del


sistema de bases de datos
Modelos de datos, esquemas e instancias
Objetivo del enfoque de BD: Visin abstracta de datos

Ocultar detalles de almacenamiento y mantenimiento


Modelos de datos para conseguir abstraccin

Modelo de Datos: conjunto de conceptos


Sirve para describir la estructura de la BD:
Tipos de los datos
Relaciones entre los datos
Restricciones que deben cumplir los datos
Incluye operaciones bsicas para especificar

lectura/modificacin
Tipos de modelos de datos
Segn conceptos que ofrecen para describir la estructura de la
Tema 1. Sistemas de bases de
BD
2
datos

1.2 Conceptos y arquitectura del


SBD
Modelos de datos de alto nivel o conceptuales
Mundo
Real

Modelo
CONCEPTUA
L de Datos

Esquema
Conceptua
l

Conceptos cercanos a cmo el usuario percibe la realidad


(minimundo)

Realidad descrita como entidades que se relacionan entre s


Entidad: cosa | objeto | concepto del minimundo
Atributo: propiedad interesante de alguna entidad
Relacin: asociacin | vnculo | interaccin entre entidades

Modelo Entidad/Relacin, MER (ERM, entity-relationship model)


Modelos Orientados a Objetos (UML, Unified Modeling Language)
Tema 1. Sistemas de bases de
datos

1.2 Conceptos y arquitectura del


SBD
Modelos de datos de representacin o lgicos (1)
Permiten describir la estructura lgica global: descripcin de
la implementacin
Conceptos entendibles por usuarios finales, pero no lejos de
organizacin fsica de datos
Ocultan detalles de implementacin, pero conceptos
implementables directamente en el sistema
Los ms utilizados en los SGBD comerciales actuales (ORACLE)
Modelos basados en registros
Relacional, Red, Jerrquico
Modelos orientados a objetos
Modelos lgicos prximos a los conceptuales
Tema 1. Sistemas de bases de
datos

1.2 Conceptos y arquitectura del


SBD
Modelos de datos de representacin o lgicos (y 2)
MODELO RELACIONAL

CUENTA

Cada cliente slo puede


tener una cuenta a su
nombre.
Una cuenta puede tener ms
de un cliente como titular.
CLIENTE

nmero saldo ..
.
200

35

505

40

821

50

nombre

direccin

ciudad

...
cuenta

Garca, A

Gran Va, 6

Murcia

200

Lpez, B

Ronda Norte, 3

Murcia

821

Azorn, C

Paseo Nuevo, 9

Valencia

505

Prez, C

Plaza Mayor, 2

Valencia

505

...

Tema 1. Sistemas de bases de


datos

1.2 Conceptos y arquitectura del


SBD
Modelos de datos de bajo nivel o fsicos
Conceptos que describen detalles de almacenamiento de los
datos
Dirigidos a usuarios especialistas en informtica
Describen la estructura fsica de la base de datos:
- Formato y ordenamiento de registros en los ficheros de datos
- Tamaos de pgina, de bloque,...
- Caminos (o estructuras) de acceso a los datos (ficheros ndices,
etc.)

...

Tema 1. Sistemas de bases de


datos

1.2 Conceptos y arquitectura del


SBD
Esquemas, instancias y estado de la base de datos
Esquema = Descripcin

Especificado en el diseo de la BD y rara vez modificado


Metainformacin o metadatos
Diagrama del Esquema de la BD

Representacin del esquema, en un modelo de datos


Compuesto de esquemas de tipos de registro (elementos del
esquema)
LIBRO
PRESTAMO
...

isbn titulo apAutor nomEdit ao


idPer idLib fecha

Otra posible representacin:


LIBRO ( isbn, titulo, apAutor, nomEdit, ao )
PRESTAMO ( idPer, idLib, fecha )
...
Tema 1. Sistemas de bases de
datos

Un diagrama de
esquema slo
visualiza algunos
aspectos del esquema,
pero no muestra
muchos otros: tipos de
datos, relaciones entre
elementos del
7
esquema,...

1.2 Conceptos y arquitectura del


SBD
Esquemas, instancias y estado de la base de datos
Una base de datos es un conjunto de datos reales relacionados que
cambian continuamente
Estado de la base de datos

Conjunto de datos que contiene la BD en un momento


concreto
Conjunto de instancias de los elementos del esquema de BD
1 esquema N estados

Estado Consistente (ok!!)

Satisface estructura y restricciones especificadas en


esquema
SGBD asegura que todo estado de la BD sea consistente
Nomenclatura: Esquema = Intensin ; Estado = Extensin
Tema 1. Sistemas de bases de
datos

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas de un SGBD
Recuperacin eficiente de datos estructuras de datos complejas
para representar la informacin en la BD
Complejidad oculta a travs de niveles de abstraccin

Arquitectura ANSI/X3/SPARC
...
...

Ayuda a conseguir

Separacin entre
programas y
datos
Mltiples vistas
Nivel Conceptual de usuario
Nivel
Externo
(vistas)

Nivel Interno
Tema 1. Sistemas de bases de
datos

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (1)
Nivel Interno

Descrito mediante el Esquema Interno, el cual...


Define la estructura fsica de almacenamiento de toda
la BD

Tipos de registros almacenados,


Secuencia fsica de los registros,
Estructuras de almacenamiento (hashing,...),
Estructuras de acceso (indexacin,...)
etc.

Escrito utilizando un Modelo de Datos Fsico


Muy cercano al nivel fsico pero no trata con registros
fsicos (bloques, pginas, ) ni con unidades como
cilindros o pistas.
Tema 1. Sistemas de bases de
datos

10

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (2)
Nivel Conceptual o Lgico

Descrito mediante el Esquema Conceptual o Lgico...


Define la estructura lgica de toda la BD
Entidades, Tipos de datos,
Relaciones,
Restricciones (integridad, seguridad,...)

Oculta detalles fsicos


Escrito usando un Modelo de Datos Conceptual o Lgico
Actualmente se considera el uso de dos esquemas en este
nivel:
Esquema Conceptual: organizativo, cercano al usuario
Esquema Lgico: cercano al SGBD
Tema 1. Sistemas de bases de
datos

11

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (3)
Nivel Externo o de Vistas

Descrito mediante Esquemas Externos


Cada Esquema Externo o Vista...
Define la porcin de la BD que interesa a un usuario
Para el usuario, esa porcin es la base de datos
Pueden existir mltiples vistas del mismo esquema
conceptual
Varias vistas pueden solaparse entre s
Escrito usando Modelo de Datos Conceptual o Lgico

Tema 1. Sistemas de bases de


datos

12

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (4)
SGBD comerciales no distinguen del todo los 3 niveles

Algunos incluyen detalles fsicos en el Esquema Conceptual


(Lgico)
Usan el mismo modelo de datos para especificar
Esquemas Externos (vistas) y
Esquema Conceptual (lgico)
Los 3 niveles son descripciones de datos

Los datos reales slo estn en el nivel fsico


Correspondencia entre esquemas SGBD (el ABD)

Externo Conceptual
Conceptual Interno
Tema 1. Sistemas de bases de
datos

13

1.2 Conceptos y arquitectura del


SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (y 5)
Nivel Externo (Lenguaje de Programacin tipo Pascal)
tipo empleado = registro
(no acceso al salario)
n_empleado: cadena(6);
n_depto: cadena(4);
fin;
Nivel Conceptual (Lenguaje de definicin de datos, LDD)
EMPLEADO (
NUMERO_EMPLEADO
CARACTER(6) CLAVE PRINCIPAL,
NUMERO_DEPARTAMENTO
CARACTER(4) NO NULO,
SALARIO
NUMERICO(5) NO NULO )

Nivel Interno
EMP_ALMACENADO
PREFIJO
EMP#
DEPTO#
PAGA

LONGITUD=20
TIPO=BYTE(6), DESPLAZAMIENTO=0
TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMP
TIPO=BYTE(4), DESPLAZAMIENTO=12
TIPO=PALABRA, DESPLAZAMIENTO=16

Tema 1. Sistemas de bases de


datos

14

1.2 Conceptos y arquitectura del


SBD
Independencia de datos (1)
Capacidad de modificar el esquema de un nivel sin
tener que cambiar el esquema del nivel inmediato
superior
Independencia lgica de datos

Capacidad de modificar el esquema conceptual...


ampliar / reducir la BD
modificar restricciones

... sin alterar


esquemas externos
programas de aplicacin
difcil de conseguir
Tema 1. Sistemas de bases de
datos

15

1.2 Conceptos y arquitectura del


SBD
Independencia de datos (2)
Independencia fsica de datos

Capacidad de modificar el esquema interno...


reestructurar alguna estructura de almacenamiento
crear nuevas estructuras de acceso, etc.

mejorar rendimiento de la obtencin/actualizacin


... sin alterar
esquema conceptual
programas de aplicacin
es ms fcil de lograr

Tema 1. Sistemas de bases de


datos

16

1.2 Conceptos y arquitectura del


SBD
Independencia de datos (y 3)
Pero... cmo conseguir la independencia de datos?
El Catlogo de SGBD incluye informacin
sobre correspondencias entre esquemas

Modificacin del esquema de un nivel implica...


cambios en la correspondencia entre niveles,
y el esquema del nivel superior no vara

gracias a la Arquitectura de Tres Niveles

OK !!

Mantenimiento de las correspondencias entre niveles...


gasto extra en compilacin / ejecucin de programas
menor eficiencia del SGBD
Pocos SGBD implementan Arquit. de Tres Niveles
completa
Tema 1. Sistemas de bases de
datos

17

1.2 Conceptos y arquitectura del


SBD
Lenguajes e interfaces de bases de datos
Lenguajes del SGBD (1)
LDD: lenguaje de definicin de datos

Usado por ABD y diseadores para especificar...


Esquema Conceptual
Esquema Interno
si SGBD sin separacin estricta de niveles conceptual e
interno

Correspondencias entre los anteriores


Compilador de LDD: procesa sentencias escritas en LDD,
para
identificar descripciones de elementos del esquema
y
de bases de
almacenarlasTema
en1.elSistemas
catlogo
del SGBD
18
datos

1.2 Conceptos y arquitectura del


SBD e interfaces de bases de datos
Lenguajes
Lenguajes del SGBD (2)
LDD: lenguaje de definicin de datos (cont.)
CREATE TABLE Libro (
isbn
CHAR(10)
titulo
VARCHAR(60)
apAutor VARCHAR(15)
nomEdit VARCHAR(15)
ao
NUMERIC(4)
... );

PRIMARY KEY,
NOT NULL UNIQUE,
NOT NULL,
NOT NULL,

Tema 1. Sistemas de bases de


datos

19

1.2 Conceptos y arquitectura del


SBD
Lenguajes del SGBD (3)
LDA: lenguaje de definicin de almacenamiento

En SGBD que distinguen entre niveles conceptual e interno,


se usa...
LDA para especificar Esquema Interno
detalles de implementacin de estructuras de almacenamiento y de acceso
LDD para especificar el Esquema Conceptual
entidades + relaciones + restricciones
LDD o LDA para definir Correspondencias entre los
anteriores

Tema 1. Sistemas de bases de


datos

20

1.2 Conceptos y arquitectura del


SBD
Lenguajes del SGBD (4)
LDV: lenguaje de definicin de vistas

Para conseguir Arquitectura de Tres Esquemas verdadera


Usado para especificar
Esquemas Externos (o Vistas de usuario)
Correspondencias entre Vistas y el Esquema
Conceptual
No obstante, la mayora de SGBD utilizan LDD para definir
vistas
CREATE VIEW PrestamoLibro AS
SELECT R.fecha, L.titulo, P.nombre
FROM PRESTAMO R, LIBRO L, PERSONA P
WHERE R.idLib = L.isbn AND R.idPer = P.id;
Tema 1. Sistemas de bases de
datos

21

1.2 Conceptos y arquitectura del


SBD
Lenguajes del SGBD (5)
LMD: lenguaje de manipulacin de datos

Obtencin, Insercin, Eliminacin y Modificacin de datos


Dos tipos de DML: procedimental y declarativo
LMD procedimental, o de bajo nivel

Qu datos obtener/manipular y cmo


obtenerlos/manipularlos
Siempre debe estar empotrado en un LP
Es un LMD orientado a registros:
Obtiene un solo registro y lo procesa por separado
Necesita usar elementos del LP (ej. bucles) para...
obtener registro a registro y
procesarlos individualmente
Tema 1. Sistemas de bases de
datos

22

1.2 Conceptos y arquitectura del


SBD
Lenguajes del SGBD (y 6)
LMD declarativo, o de alto nivel

Qu datos obtener para manipular y no cmo


manipularlos
Usado para realizar operaciones complejas de BD...
- Interactivamente -- Lenguaje de Consulta
- Incorporado en un LP anfitrin (host) -- LMD Empotrado
Es un LMD orientado a conjuntos:
Obtiene/Actualiza muchos registros con una nica
sentencia
SELECT titulo, nomEdit, ao FROM Libro WHERE apAutor = Tolkien;
INSERT INTO Autor VALUES (Jorge Lus, Borges);
DELETE FROM Prestamo WHERE idLib = 8420464988;
UPDATE Persona SET telefono = 555111222 WHERE id = 1;
SGBD comerciales actuales ofrecen nico lenguaje integrado, mezcla
de LDD, LDA, LDV y LMD (como
Tema SQL)
1. Sistemas de bases de
23
datos

1.2 Conceptos y arquitectura del


SBD
un apunte: acceso a BD desde programas de aplicacin
Programas escritos en un lenguaje (C++, Java, ...) anfitrin
Dos modos de ejecutar instrucciones LMD desde el lenguaje anfitrin:

Usar Interfaz de Programa de Aplicacin

(conjunto de

procedimientos)

ODBC, Open Data Base Connectivity (definido por Microsoft para C),
JDBC, Java Data Base Connectivity

Extender la sintaxis del lenguaje anfitrin para incorporar


llamadas LMD dentro de los programas
Instrucciones LMD precedidas de un carcter especial
El preprocesador de LMD convertir estas instrucciones en
llamadas a procedimientos normales del lenguaje anfitrin

Tema 1. Sistemas de bases de


datos

24

1.2 Conceptos y arquitectura del


SBD
Interfaces del SGBD
Basadas en mens
Basadas en formularios
Grficas
De lenguaje natural
Para usuarios paramtricos
Para el ABD (rdenes privilegiadas)

Crear/eliminar cuentas de usuario y establecer


autorizaciones
Establecer parmetros de ajuste del rendimiento del sistema
Modificacin de esquemas y correspondencias
Acceso al catlogo
Reorganizar estructura de almacenamiento de la BD
Realizar/restaurar copias de seguridad
...
Tema 1. Sistemas de bases de
datos

25

You might also like