Está en la página 1de 60

UNIVERSIDAD NACIONAL DE CONCEPCIÓN

FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS


CARRERA – INGENIERÍA EN INFORMÁTICA EMPRESARIAL

Introducción a la Informática

Prof. MSc. Alcides Javier Torres Gutt.


Sitio virtual http://aulav.concepcion.com.py/
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. Clasificación de los SGBD

Tema 1. Sistemas de bases de datos 2


1. Sistemas de bases de datos
Bibliografía
[EN 2002] Elmasri, R.; Navathe, S.B. Fundamentos de Sistemas de
Bases de Datos. 3ª Edición. Addison-Wesley. (Cap. 1 y 2)
[EN 1997] Elmasri, R.; Navathe, S.B.: Sistemas de bases de datos. Conceptos
fundamentales. 2ª Edición. Addison-Wesley Iberoameric. (Cap. 1 y 2)
[MPM 1999] De Miguel, A.; Piattini, M.; Marcos, E. Diseño de bases de datos
relacionales. Ra-Ma. (Cap. 1 y 2)
[MP 1993] De Miguel, A.; Piattini, M.: Concepción y diseño de bases de datos: del
Modelo E/R al Modelo Relacional. Ra-Ma.
[SKS 1998] Korth, H; Silberschatz, A., Sudarshan, S.:Fundamentos de bases de
datos. 3ª Edición. McGraw-Hill. (Cap. 1)
[SKS 2002] Silberschatz, A.; Korth, H.F.; Sudarshan, S. “Fundamentos de Bases de
Datos”. 4ª edición. Madrid, McGraw-Hill, 2002. (Cap. 1)
[CBS 1998] Connolly, T.; Begg C.; Strachan, A. Database Systems: A Practical
Approach to Design, Implementation and Management. 2nd edition.
Addison-Wesley. (Cap. 1 y 2)
[CCM 2003] Celma, M.; Casamayor, JC.; Mota, L. “Bases de datos relacionales”.
Pearson Educación, 2003. (Cap. 1, 2 y parte del 6)

Tema 1. Sistemas de bases de datos 3


1.1 Bases de datos y sus usuarios
• Base de Datos (BD)
”Conjunto de datos relacionados entre sí”  demasiado general

Dato= algo conocido que quiere registrarse

¿Por qué esta transparencia no es una BD? Porque se tienen unas


propiedades implícitas:
Conjunto de datos persistentes lógicamente coherente, con significado
implícito
Representa aspectos del mundo real Los cambios en el minimundo se
(minimundo, universo de discurso) “reflejan” en la BD
Se DISEÑA, se CREA y se CARGA,
para conseguir objetivos Datos ALMACENADOS para “algo”
determinados
Datos INTERESANTES para
Dirigida a un grupo de usuarios
“alguien”
Tema 1. Sistemas de bases de datos 4
1.1 Bases de datos y sus usuarios
Un ejemplo EDITORIAL AUTOR PERSONA
de una base nombre ... nombre apellidos ... id nombre teléfono
de datos Obelisco ... Paulo Coelho ... 2 Julia Ibáñez 55512345
6
personal Alfaguara ... Oscar Wilde ...
10 Eva Andrés 55565432
Planeta ... Michael Ende ... 1
Alianza ... ... ... ... ... ... ...
... ... 3 Cristina Prats 55598765
LIBRO 4
isbn titulo apAutor nomEdit año1 Ginés Soriano 55522112
PRESTAMO 2
842046498 Momo Ende Alfaguara 1982
8 idPer idLib fecha
840804900 El retrato de Dorian Gray Wilde Planeta 2003 10 840804900 23/9/03
3 3

847720530 El alquimista Coelho Obelisco 1996 3 840804878 1/10/03


2 3

842043226 La historia interminable Ende Alfaguara 1998 10 842046498 2/3/03


1 8
842061652
Tema El fantasma
1. Sistemas dedatos
de bases de Canterville Wilde Alianza 1996 1 842043226 10/8/02 5
1.1 Bases de datos y sus usuarios

Sistema de Gestión de Base de Datos (SGBD - DBMS)


”Conjunto de programas que permite DEFINIR, CONSTRUIR y
MANIPULAR bases de datos para diversas aplicaciones”

– Definir una BD es especificar...


• estructura de datos,
• tipos de datos y
• restricciones de los datos
– Construir una BD es...
• almacenar datos en algún medio de almacenamiento controlado por el SGBD
– Manipular la BD es...
• consultar datos
• introducir/modificar/eliminar datos, para reflejar cambios en el minimundo
• generar informes a partir de los datos almacenados

Sistema de Base de Datos


SBD = BD + SGBD + Software de Aplicación/Consultas
Tema 1. Sistemas de bases de datos 6
Entorno simplificado de un
Sistema de Base de Datos Usuarios / Programadores

SISTEMA DE BASE DE DATOS


Programas de Aplicación / Consultas

SOFTWARE DEL SGBD

Software para procesar


Consultas / Programas

Software para tener acceso


a los datos almacenados

Definición de la Base de Datos


BD (Metadatos) almacenada

Tema 1. Sistemas de bases de datos 7


1.1 Bases de datos y sus usuarios
Características del enfoque de Bases de Datos (1)

 Naturaleza autodescriptiva
 Procesamiento de ficheros
• Los programas de aplicación acceden a datos específicos, cuya
estructura se describe en el propio código

Sistemas de bases de datos


• SGBD = Sistema software de propósito general
BD = DATOS + METADATOS
• El Catálogo del Sistema ...
– Contiene metadatos: descripción de la estructura de la BD
 El SGBD “sabrá” acceder a datos de cualquier aplicación
– Usado por el SGBD (a veces por usuarios)

Tema 1. Sistemas de bases de datos 8


1.1 Bases de datos y sus usuarios
Características del enfoque de Bases de Datos (2)

 Separación entre programas y datos


 Procesamiento de ficheros
• Definición de datos forma parte de los programas de aplicación
• Cambios en la estructura de ficheros de la BD
 modificación de programas que acceden a tales ficheros

Sistemas de bases de datos


• Descripción de estructura y organización de ficheros almacenada en
Catálogo, separada de los programas
 Independencia entre programas y datos
( posible gracias a la abstracción de datos proporcionada por SGBD, que
veremos más adelante )

Tema 1. Sistemas de bases de datos 9


1.1 Bases de datos y sus usuarios
Características del enfoque de Bases de Datos (y 3)
 Datos compartidos y procesamiento de transacciones
multiusuario
• Acceso simultáneo a datos sin interferencias ni inconsistencias
• Control de concurrencia por el SGBD

 Múltiples vistas de los datos


• Cada usuario sólo interesado en ver la parte de la información que
necesita  vista de la BD
• Vista = [ Subconjunto de ] BD [+ datos virtuales]
• SGBD proporciona mecanismos de definición de vistas

SBD
Bibliotecario BD BIBLIOTECA Lector

Tema 1. Sistemas de bases de datos 10


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos (1)

 Administrador de la base de datos (ABD)


– Responsable de administrar los recursos del SBD (nivel técnico):
BD + SGBD + Otro Software (aplicaciones/programas de acceso)
– Las funciones del ABD incluyen:
• Definir/Modificar la estructura de la BD y restricciones de los datos
• Crear/Modificar estructuras de almacenamiento y métodos de acceso
• Conceder/Denegar permisos de acceso y controlar dicho acceso a
datos (seguridad de la BD)
• Definir planes de copias de seguridad de los datos de la BD
• Garantizar el funcionamiento correcto del sistema y proporcionar
servicio técnico al usuario (respuesta lenta del sistema...)
• Adquirir los recursos software y hardware necesarios

Tema 1. Sistemas de bases de datos 11


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos (2)

 Diseñadores de la base de datos


Antes de implementar la BD, interactúan con sus futuros usuarios
– Recogen y comprenden sus necesidades y objetivos --- Requisitos
– Identifican datos que almacenar en la base de datos
– Eligen estructuras para representar y almacenar los datos
– Construyen...
• Vista que satisface requisitos de cada grupo de usuarios
• Diseño final de BD que satisface necesidades de todos los
usuarios (resultado de la integración de las diferentes vistas)

Tema 1. Sistemas de bases de datos 12


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos (3)

 Usuarios finales
– Ocasionales o Sofisticados
• Acceso esporádico y distinto cada vez; usan lenguaje de consulta
– Paramétricos o Normales
• Accesos constantes, repetitivos
• Usan “transacciones programadas” para ellos
– Avanzados o Especializados
• Implementan sus propias aplicaciones especializadas para cumplir sus
complejos requisitos
• Ingenieros, científicos, analistas de empresa, ...
– Autónomos
• Usan BD personales, a través de aplicación/paquete comercial específico

Tema 1. Sistemas de bases de datos 13


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos (4)

 Ingenieros de software
(Analistas de sistemas y Programadores de aplicaciones)
– Conocen perfectamente capacidades y recursos del SGBD
– Analistas
• Determinan necesidades de procesamiento de los usuarios finales
(especialmente los paramétricos)
• Especifican conjuntos de operaciones que satisfacen esas
necesidades
– Programadores
• Implementan estas especificaciones  Programas de aplicación
• Prueba, depuración, documentación y mantenimiento de programas

Tema 1. Sistemas de bases de datos 14


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos (5)
 Los siguientes son los encargados del diseño, creación y operación del
software y entorno del sistema
 No están interesados en el contenido de la base de datos

 Diseñadores e Implementadores del SGBD


– Diseñan e Implementan los Módulos e Interfaces del SGBD

 Operadores y Personal de mantenimiento


– del Entorno hardware y software del sistema de BD

Tema 1. Sistemas de bases de datos 15


1.1 Bases de datos y sus usuarios
Actores en un sistema de base de datos ( y 6)

 Desarrolladores de herramientas
– Diseñan e Implementan paquetes software que:
• Facilitan diseño y uso de los SBD, y
• Permiten aumentar el rendimiento de los SBD
– Herramientas para
• Diseño de BD, de aplicaciones de BD, de interfaces de usuario...
• Creación de prototipos de aplicaciones de BD
• Realizar simulaciones y generar datos de prueba
• Supervisión de rendimiento del sistema
• ...

Tema 1. Sistemas de bases de datos 16


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (1)

• Disminución y control de la redundancia de datos


– Procesamiento de ficheros  varias copias de la misma información
– Problemas debidos a la redundancia de datos
• Duplicación del trabajo
• Desperdicio de espacio de almacenamiento
• Obligación de evitar las inconsistencias de datos

• Evitar inconsistencias en los datos


– Sólo si existe redundancia y
– se modifica un dato, actualizando algunas copias

– Soluciones:
• Eliminación de Redundancia,
• Redundancia Controlada y Propagación de Actualizaciones Automática

Tema 1. Sistemas de bases de datos 17


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (2)

• Mantener la integridad
– Asegurar que la información es correcta=refleja fielmente el minimundo
– ¿Cuándo se viola la integridad (no existe)?
• Si existe inconsistencia
• Si existe información imposible fecha = 40 / MAYO / 1972
• Si existe información que no se ajusta a la realidad, es decir falsa o errónea
Nº de teléfono de la policía = 063
– ¿Cómo se evitan estas situaciones?
• Si los datos cumplen las Restricciones de Integridad ( RI )
– Restricciones sobre tipos de datos
« el nombre de una persona es una cadena de hasta 30 caracteres »
– Restricciones semánticas
« todo libro tiene una editorial »
« cada libro tiene un título diferente del resto »
« ningún libro puede prestarse a más de una persona al mismo tiempo »
Tema 1. Sistemas de bases de datos 18
1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (3)

• Mantener la integridad (cont.)


– Las RI son identificadas durante el diseño de la BD
– Control de la Integridad: fundamental en SBD Multiusuario
– Verificación de Restricciones de Integridad en cada actualización de datos
• Automática por el SGBD
fecha = 40 / MAYO / 1972
• Mediante programas específicos
 El SGBD debe permitir
- Definir (crear) las RI,
- Crear y ejecutar los programas de verificación

– A veces se puede almacenar información falsa sin violar restricciones de


integridad:
título de libro = “El señor de los aniyos”

Tema 1. Sistemas de bases de datos 19


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (4)

• Aplicación de restricciones de seguridad ( RS )


– No todos los usuarios deberían poder acceder a toda la BD
– Objetivo: control de acceso selectivo
1. Sólo usuarios autorizados
2. Sólo a ciertas partes de la base de datos
3. Sólo para realizar ciertas operaciones con los datos
– SGBD dispone de Subsistema de Seguridad y Autorización
• Cuentas de usuario protegidas con contraseña (ok objetivo 1)
• Restricciones de seguridad para cada cuenta (ok objetivos 2 y 3)
– SGBD fuerza el cumplimiento de las RS
– Otros controles de la seguridad serían:
• Sólo el ABD usa el software de administración y monitorización del SBD
• Un usuario paramétrico sólo accede a la BD a través del programa que usa
• ...

Tema 1. Sistemas de bases de datos 20


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (5)

• Suministro de múltiples interfaces de usuario


– Usuarios con diferentes niveles de conocimientos técnicos
– El SGBD debe ofrecer interfaces para todos ellos:

Lenguajes de consulta usuarios ocasionales


Interfaces de lenguajes de programadores de
programación aplicaciones
usuarios
Formularios y comandos
paramétricos
Interfaces controladas por
usuarios autónomos
menú y de lenguaje natural

– Interfaces controladas por menú y de formularios = GUI


– Acceso a bases de datos a través de la web

Tema 1. Sistemas de bases de datos 21


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (6)

• Representación de relaciones complejas entre datos


– Datos relacionados entre sí de diversas maneras
• « El registro (Planeta, ...) del fichero EDITORIAL se relaciona con 2 registros
del fichero LIBRO: (..., El retrato de Dorian Gray, ...) y (..., Once minutos, ...) »
• « Cada registro de PRESTAMO se relaciona con un registro de PERSONA y
con un registro de LIBRO »
• « Cada registro de AUTOR se relaciona con varios registros de LIBRO »

– SGBD debe permitir ...


• Representar relaciones entre los datos
• Obtener y Actualizar datos relacionados
« Obtener los títulos y editorial de los libros escritos por “Arthur Conan Doyle” »
« Obtener nombres y teléfonos de personas con libros prestados más de cinco meses »

Tema 1. Sistemas de bases de datos 22


1.1 Bases de datos y sus usuarios
Ventajas del uso de un SGBD (y 7)
• Respaldo y Recuperación
– Recuperación del sistema tras fallos del hardware o software
– Subsistema del SGBD encargado de respaldo y recuperación

Programa de BD KO !!
ACTUALIZACIÓN
de datos Estado
Estado
INICIAL  FINAL

BD ok BD
ok
XOR
Restauración de la BD Continuación y
SGBD Finalización Correcta
“Deshacer” toda actualización
del programa
de datos
hecha por el programa

Tema 1. Sistemas de bases de datos 23


1.1 Bases de datos y sus usuarios
Otras ventajas del enfoque de bases de datos (1)

• Datos compartidos actualizados


– Datos disponibles para todos los usuarios
– El cambio de datos por un usuario es visto inmediatamente por el resto
– Subsistemas de control de concurrencia y recuperación del SGBD

• Flexibilidad Nuevas
Cambios en Necesidades de
Requisitos datos

modificaciones en
estructura de la BD

– SGBD permite cambios en la estructura de BD, sin afectar...


• Datos almacenados
• Programas de aplicación existentes
Tema 1. Sistemas de bases de datos 24
1.1 Bases de datos y sus usuarios
Otras ventajas del enfoque de bases de datos (y 2)

• Rápida creación de nuevas aplicaciones APL-1

Diseño e
implementación
inicial costosos APL-3
APL-2

• Cumplimiento de reglas, normas o políticas de empresa


– ABD establece normas para usuarios de la base de datos
• Intercambio de información y cooperación entre departamentos, proyectos...
– Estándares para
• nombres y formatos de elementos de datos
• documentación, formularios, informes ...

Tema 1. Sistemas de bases de datos 25


1.1 Bases de datos y sus usuarios
Cuándo NO usar un SGBD

• Hay situaciones en las que emplear un SGBD puede generar costes


innecesarios, evitables con el procesamiento de ficheros
– Costes adicionales debidos a...
• Gran inversión inicial en equipo, software y formación
• Generalidad ofrecida por el SGBD para definir y procesar datos
• Funciones de seguridad, control de concurrencia, recuperación, integridad
– Problemas adicionales si...
• Diseñadores o ABD no han diseñado la base de datos apropiadamente
• La implementación de las aplicaciones no es correcta
• Conviene utilizar procesamiento de ficheros si...
– BD y aplicaciones son simples, bien definidas y no se espera que cambien
– Requisitos de tiempo real que no se cumplirían por el coste extra del SGBD
– No se necesita acceso multiusuario a los datos

Tema 1. Sistemas de bases de datos 26


1.2 Conceptos y arquitectura del sistema de
bases de datos
Modelos de datos, esquemas e instancias

• Objetivo del enfoque de BD: Visión abstracta de datos


– Ocultar detalles de almacenamiento y mantenimiento
• Modelos de datos para conseguir abstracción
– 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 básicas para especificar lectura/modificación

– Tipos de modelos de datos


• Según conceptos que ofrecen para describir la estructura de la BD

Tema 1. Sistemas de bases de datos 27


1.2 Conceptos y arquitectura del SBD
 Modelos de datos de alto nivel o conceptuales

Mundo Esquema
Real Modelo Conceptual
CONCEPTU
AL de Datos

• Conceptos cercanos a cómo 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
– Relación: asociación | vínculo | interacción entre entidades

» Modelo Entidad/Relación, MER (ERM, entity-relationship model)


» Modelos Orientados a Objetos (UML, Unified Modeling Language)

Tema 1. Sistemas de bases de datos 28


1.2 Conceptos y arquitectura del SBD
 Modelos de datos de representación o lógicos (1)

• Permiten describir la estructura lógica global: descripción de la


implementación
• Conceptos entendibles por usuarios finales, pero no lejos de
organización física de datos
• Ocultan detalles de implementación, pero conceptos implementables
directamente en el sistema
• Los más utilizados en los SGBD comerciales actuales (ORACLE)

» Modelos basados en registros


Relacional, Red, Jerárquico
» Modelos orientados a objetos
– Modelos lógicos próximos a los conceptuales

Tema 1. Sistemas de bases de datos 29


1.2 Conceptos y arquitectura del SBD
 Modelos de datos de representación o lógicos (y 2)

MODELO RELACIONAL
CUENTA número saldo ...
Cada cliente sólo puede tener
200 35
una cuenta a su nombre.
Una cuenta puede tener más de 505 40
un cliente como titular. 821 50
...

CLIENTE nombre dirección ciudad cuenta


García, A Gran Vía, 6 Murcia 200
López, B Ronda Norte, 3 Murcia 821
Azorín, C Paseo Nuevo, 9 Valencia 505
Pérez, C Plaza Mayor, 2 Valencia 505
...
Tema 1. Sistemas de bases de datos 30
1.2 Conceptos y arquitectura del SBD
 Modelos de datos de bajo nivel o físicos

• Conceptos que describen detalles de almacenamiento de los datos


• Dirigidos a usuarios especialistas en informática

• Describen la estructura física de la base de datos:


- Formato y ordenamiento de registros en los ficheros de datos
- Tamaños de página, de bloque,...
- Caminos (o estructuras) de acceso a los datos (ficheros índices, etc.)
...

Tema 1. Sistemas de bases de datos 31


1.2 Conceptos y arquitectura del SBD
Esquemas, instancias y estado de la base de datos

Esquema = Descripción
– Especificado en el diseño de la BD y rara vez modificado
– Metainformación o metadatos
Diagrama del Esquema de la BD
– Representación del esquema, en un modelo de datos
– Compuesto de esquemas de tipos de registro (elementos del esquema)
LIBRO isbn titulo apAutor nomEdit año
 Un diagrama de
PRESTAMO idPer idLib fecha esquema sólo visualiza
... algunos aspectos del
esquema, pero no muestra
Otra posible representación:
muchos otros: tipos de
LIBRO ( isbn, titulo, apAutor, nomEdit, año ) datos, relaciones entre
PRESTAMO ( idPer, idLib, fecha ) elementos del esquema,...
...
Tema 1. Sistemas de bases de datos 32
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 = Intensión ; Estado = Extensión

Tema 1. Sistemas de bases de datos 33


1.2 Conceptos y arquitectura del SBD
Arquitectura de tres esquemas de un SGBD

• Recuperación eficiente de datos  estructuras de datos


complejas para representar la información en la BD
• Complejidad oculta a través de niveles de abstracción

Arquitectura ANSI/X3/SPARC Ayuda a conseguir


Nivel Externo – Separación entre
... programas y datos
(vistas)
... – Múltiples vistas de
usuario
Nivel Conceptual

Nivel Interno

Tema 1. Sistemas de bases de datos 34


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 física de almacenamiento de toda la BD
– Tipos de registros almacenados,
– Secuencia física de los registros,
– Estructuras de almacenamiento (hashing,...),
– Estructuras de acceso (indexación,...)
– etc.
• Escrito utilizando un Modelo de Datos Físico
• Muy cercano al nivel físico pero no trata con registros físicos
(bloques, páginas, …) ni con unidades como cilindros o pistas.

Tema 1. Sistemas de bases de datos 35


1.2 Conceptos y arquitectura del SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (2)

• Nivel Conceptual o Lógico

– Descrito mediante el Esquema Conceptual o Lógico...


• Define la estructura lógica de toda la BD
– Entidades, Tipos de datos,
– Relaciones,
– Restricciones (integridad, seguridad,...)
• Oculta detalles físicos
• Escrito usando un Modelo de Datos Conceptual o Lógico
– Actualmente se considera el uso de dos esquemas en este nivel:
• Esquema Conceptual: organizativo, cercano al usuario
• Esquema Lógico: cercano al SGBD

Tema 1. Sistemas de bases de datos 36


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 porción de la BD que interesa a un usuario
• Para el usuario, esa porción es la base de datos
• Pueden existir múltiples vistas del mismo esquema conceptual
• Varias vistas pueden solaparse entre sí
• Escrito usando Modelo de Datos Conceptual o Lógico

Tema 1. Sistemas de bases de datos 37


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 físicos en el Esquema Conceptual
(Lógico)
– Usan el mismo modelo de datos para especificar
• Esquemas Externos (vistas) y
• Esquema Conceptual (lógico)

• Los 3 niveles son descripciones de datos


– Los datos reales sólo están en el nivel físico

• Correspondencia entre esquemas  SGBD (el ABD)


– Externo  Conceptual
– Conceptual  Interno

Tema 1. Sistemas de bases de datos 38


1.2 Conceptos y arquitectura del SBD
Arquitectura de tres esquemas ANSI/X3/SPARC (y 5)
• Nivel Externo (Lenguaje de Programación “tipo Pascal”)
tipo empleado = registro (no acceso al salario)
n_empleado: cadena(6);
n_depto: cadena(4);
fin;
• Nivel Conceptual (Lenguaje de definición 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 LONGITUD=20
PREFIJO TIPO=BYTE(6), DESPLAZAMIENTO=0
EMP# TIPO=BYTE(6), DESPLAZAMIENTO=6, INDICE=IEMP
DEPTO# TIPO=BYTE(4), DESPLAZAMIENTO=12
PAGA TIPO=PALABRA, DESPLAZAMIENTO=16
Tema 1. Sistemas de bases de datos 39
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 lógica de datos

– Capacidad de modificar el esquema conceptual...


• ampliar / reducir la BD
• modificar restricciones
– ... sin alterar
• esquemas externos
• programas de aplicación
difícil de conseguir…

Tema 1. Sistemas de bases de datos 40


1.2 Conceptos y arquitectura del SBD
Independencia de datos (2)

• Independencia física de datos

– Capacidad de modificar el esquema interno...


• reestructurar alguna estructura de almacenamiento
• crear nuevas estructuras de acceso, etc.
 mejorar rendimiento de la obtención/actualización
– ... sin alterar
• esquema conceptual
• programas de aplicación
es más fácil de lograr

Tema 1. Sistemas de bases de datos 41


1.2 Conceptos y arquitectura del SBD
Independencia de datos (y 3)
Pero... ¿cómo conseguir la independencia de datos?

• El Catálogo de SGBD incluye información


sobre correspondencias entre esquemas
 Modificación del esquema de un nivel implica...
• cambios en la correspondencia entre niveles,
• y el esquema del nivel superior no varía
OK !!
 gracias a la Arquitectura de Tres Niveles
– Mantenimiento de las correspondencias entre niveles...
• gasto extra en compilación / ejecución de programas
• menor eficiencia del SGBD
» Pocos SGBD implementan Arquit. de Tres Niveles completa

Tema 1. Sistemas de bases de datos 42


1.2 Conceptos y arquitectura del SBD
Lenguajes e interfaces de bases de datos
Lenguajes del SGBD (1)

• LDD: lenguaje de definición de datos


– Usado por ABD y diseñadores para especificar...
• Esquema Conceptual
• Esquema Interno
– si SGBD sin separación 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
• almacenarlas en el catálogo del SGBD

Tema 1. Sistemas de bases de datos 43


1.2 Conceptos y arquitectura del SBD
Lenguajes e interfaces de bases de datos
Lenguajes del SGBD (2)

• LDD: lenguaje de definición de datos (cont.)

CREATE TABLE Libro (


isbn CHAR(10) PRIMARY KEY,
titulo VARCHAR(60) NOT NULL UNIQUE,
apAutor VARCHAR(15) NOT NULL,
nomEdit VARCHAR(15) NOT NULL,
año NUMERIC(4)
... );

Tema 1. Sistemas de bases de datos 44


1.2 Conceptos y arquitectura del SBD
Lenguajes del SGBD (3)

• LDA: lenguaje de definición de almacenamiento


– En SGBD que distinguen entre niveles conceptual e interno, se usa...
• LDA para especificar Esquema Interno
detalles de implementación 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 45


1.2 Conceptos y arquitectura del SBD
Lenguajes del SGBD (4)

• LDV: lenguaje de definición 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 mayoría 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 46


1.2 Conceptos y arquitectura del SBD
Lenguajes del SGBD (5)

• LMD: lenguaje de manipulación de datos


– Obtención, Inserción, Eliminación y Modificación de datos
– Dos tipos de DML: procedimental y declarativo

LMD procedimental, o de bajo nivel


 Qué datos obtener/manipular y cómo 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 47


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 cómo manipularlos
 Usado para realizar operaciones complejas de BD...
- Interactivamente -- Lenguaje de Consulta
- Incorporado en un LP anfitrión (host) -- LMD Empotrado
 Es un LMD orientado a conjuntos:
Obtiene/Actualiza muchos registros con una única sentencia

SELECT titulo, nomEdit, año FROM Libro WHERE apAutor = “Tolkien”;


INSERT INTO Autor VALUES (“Jorge Luís”, “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 SQL)
Tema 1. Sistemas de bases de datos 48
1.2 Conceptos y arquitectura del SBD
un apunte: acceso a BD desde programas de aplicación

• Programas escritos en un lenguaje (C++, Java, ...) anfitrión


• Dos modos de ejecutar instrucciones LMD desde el lenguaje
anfitrión:
– Usar Interfaz de Programa de Aplicación (conjunto de procedimientos)
• ODBC, Open Data Base Connectivity (definido por Microsoft para C),
• JDBC, Java Data Base Connectivity
– Extender la sintaxis del lenguaje anfitrión para incorporar llamadas
LMD dentro de los programas
• Instrucciones LMD precedidas de un carácter especial
• El preprocesador de LMD convertirá estas instrucciones en
llamadas a procedimientos normales del lenguaje anfitrión

Tema 1. Sistemas de bases de datos 49


1.2 Conceptos y arquitectura del SBD
Interfaces del SGBD

• Basadas en menús
• Basadas en formularios
• Gráficas
• De lenguaje natural
• Para usuarios paramétricos
• Para el ABD (órdenes privilegiadas)
– Crear/eliminar cuentas de usuario y establecer autorizaciones
– Establecer parámetros de ajuste del rendimiento del sistema
– Modificación de esquemas y correspondencias
– Acceso al catálogo
– Reorganizar estructura de almacenamiento de la BD
– Realizar/restaurar copias de seguridad
– ...
Tema 1. Sistemas de bases de datos 50
1.3 Estructura general del sistema de
bases de datos
Módulos componentes de un SGBD (1)

Arquitectura de los paquetes software de SGBD •SGBD


• Los actuales tienen un diseño modular, según una •BD
arquitectura cliente-servidor (dos capas)
SERVIDOR
• Terminal
USUARIOS
• Estación de
trabajo
• PC CLIENTE

• Programas de
aplicación - Red de larga distancia (WAN)
• Interfaces (GUI) - Red de área local (LAN)
de acceso a BD - Líneas telefónicas
- Dispositivos de comunicación
Tema 1. Sistemas de bases de datos por satélite 51
1.3 Estructura general del sistema de
bases de datos
Módulos componentes de un SGBD (2)

 Compilador de Consultas
Sentencias
LMD
interactivas
Compilador de
Análisis Sintáctico
Consultas Optimización

Procesador de
Consultas

Tema 1. Sistemas de bases de datos 52


1.3 Estructura general del SBD
Módulos componentes de un SGBD (3)
 Precompilador y Programa escrito en
compilador de LMD LP HOST + LMD
embebido
Precompilador
Sentencias LMD Sentencias LP
de LMD
Compilador Compilador del
de LMD LP HOST

Código Código
Objeto (del Objeto (del
LMD) LP)

Enlazador

Transacción
programada Procesador de
ejecutable Consultas

Tema 1. Sistemas de bases de datos 53


1.3 Estructura general del SBD
Módulos componentes de un SGBD (4)
 Compilador de LDD
– Procesa definiciones de esquemas escritas en LDD
– Almacena descripciones de los esquemas en el catálogo
– Otros módulos del SGBD necesitan conocer estos metadatos

Definición de Esquema
de BD escrito en LDD

Compilador de
LDD

BD
SO

Tema 1. Sistemas de bases de datos 54


1.3 Estructura general del SBD
Módulos componentes de un SGBD (5)
 Procesador de Consultas
Solicitudes de
RECUPERACIÓN y
ACTUALIZACIÓN
Procesador de
Consultas

Gestor de Datos
Almacenados

BD
SO
Tema 1. Sistemas de bases de datos 55
1.3 Estructura general del SBD
Módulos componentes de un SGBD (6)
Subsistemas de control de...
 Concurrencia y Recuperación - Gestor de transacciones
• Asegurar consistencia y coherencia de datos frente actualizaciones
simultáneas de datos por múltiples usuarios
• Detectar fallos o caídas del sistema
• y Restaurar la BD a un estado consistente

 Integridad y Seguridad
¿Son correctas las actualizaciones de los datos?
• Detectar violación de Restricciones de Integridad
• y realizar acción de recuperación de la integridad de datos

¿Se cumplen las restricciones de seguridad de acceso?


• Comprobar las autorizaciones de acceso al SBD y a los datos

Tema 1. Sistemas de bases de datos 56


1.3 Estructura general del SBD
Módulos componentes de un SGBD (7)
 Gestor de datos almacenados y memoria intermedia
– Control de acceso a información almacenada (datos y metadatos)
– Puede emplear servicios básicos del SO para la transferencia de
datos a bajo nivel: disco  memoria principal
– Maneja los buffers de memoria (almacenam. intermedio)

Gestor de Datos
Almacenados

BD
SO

Tema 1. Sistemas de bases de datos 57


1.3 Estructura general del SBD
Módulos componentes de un SGBD (y 8)

• Estructuras de Datos
BD
– Ficheros de datos en disco SO

– Catálogo: metadatos acerca de...


Estructura de BD, Restricciones de Integridad y de Autorización, etc.
• Acceso Continuo por diferentes módulos del SGBD
 Necesario buen diseño e implementación  eficiencia

– Estructuras de acceso (agilizan el acceso a los datos)

– Datos estadísticos sobre los datos en la BD


• Usados para optimización de consultas
• Suele considerarse contenidos en el catálogo

Tema 1. Sistemas de bases de datos 58


1.3 Estructura general del SBD
Utilidades del sistema de bases de datos

SGBD = componente software más importante


¡ pero no es el único !
• Carga de datos
– Intercambio de información entre BD de diferente tipo ( Oracle  Access )
• Respaldo
• Reorganización de ficheros de la BD
– Para mejorar rendimiento del sistema
• Monitorización
– Vigilancia del funcionamiento del sistema y su rendimiento
– Datos estadísticos que el ABD usa para tomar decisiones de ajuste y mejora
del sistema
• Control de Accesos de usuario
• Acceso al Diccionario de datos
• Otras utilidades
– ordenamiento, compresión de ficheros, etc...
Tema 1. Sistemas de bases de datos 59
Anexo 1. CLASIFICACIÓN DE LOS SGBD

• Según el Modelo de Datos en el que está basado


– Relacional, Red, Jerárquico,
– Orientado a Objetos,
– Objeto/Relacional, ...
• Según el nº de usuarios simultáneos
– Monousuario
– Multiusuario
• Según el nº de lugares en que se almacenan datos
– Centralizado
– Distribuido (SGBDD)
• SGBDD homogéneo: mismo software de SGBD en todos los sitios
• SGBDD heterogéneo (ej. Multi-Base de Datos o BD Federadas)

• Según su propósito
– de propósito General
– de propósito Específico: construido para un tipo concreto de aplicaciones

Tema 1. Sistemas de bases de datos 60

También podría gustarte