You are on page 1of 14

Sistemas Gestores de Bases de Datos.

Introduccin (captulo 1):


Definicin
Objetivo de los SGBD (o por que los SGBD son
importantes)
Principales implementaciones
Nodos, rboles
Relacional
Orientada a objetos
SQL
Resumen: Principales ventajas derivadas del uso de un
SGBD
Resumen: Principales inconvenientes derivadas del uso
de un SGBD

Database System Concepts 1.1


Definicin de Sistemas Gestores de Bases de
Datos
Coleccin de datos interrelacionados y estructurados
y
Un conjunto de programas para acceder/organizar estos datos
En definitiva:
Proporciona un entorno en el que manejar de forma eficiente
grandes volmenes de datos.
Aplicaciones tpicas:
Bancos: gestin de cuentas, prestamos,
Lneas reas: reservas, horarios,
Universidades: matrculas, expedientes
Ventas: clientes, productos, inventarios,
Recursos Humanos: fichas de empleados, salarios,

Database System Concepts 1.2


Objetivo de las BB.DD.

Originalmente las aplicaciones relacionadas con el manejo de


datos se construan sobre un conjunto de ficheros.
Problemas originados por esta aproximacin:
Redundancia e Inconsistencia en los datos (consistencia)
Acceso a los datos ineficiente:
Formatos variados y duplicacin de informacin en diferentes
ficheros
Hay que escribir un programa nuevo para cada nueva
funcionalidad que se desee aadir (abstraccin)
Los datos no estn aislados (hay que modificar todos los
programas si se vara la estructura de los datos)(abstraccin)
Problemas de Integridad
Las restricciones tienen que ser reforzadas en cada programa
y no por la base de datos (edad >0)
Es difcil aadir nuevas restricciones o variar las que se
establecieron inicialmente
Database System Concepts 1.3
Objetivo de las BB.DD. puja

Atomicidad de las modificaciones difcil de asegurar


La base puede quedarse en un estado inconsistente
por ejemplo: transferencia de dinero de una cuenta a otra

Acceso simultneo por varios usuarios (transacciones)


Se debe permitir el acceso simultaneo para ganar velocidad de
proceso
Pero, como asegurarse de que dos actualizaciones no son conflictivas
por ejemplo dos personas sacando dinero de la misma cuenta
simultneamente
Seguridad
Como restringir el acceso parcialmente a los datos
Facilitar el proceso de abstraccin de los datos (ms en las
diapositivas siguientes)

Database System Concepts 1.4


Database System Concepts 1.8
Modelo Entidad Relacin

El mundo (o un subconjunto de este) se describe usando:


Entidades (objetos, cosas)
por ejemplo clientes, cuentas
Relaciones entre entidades
p.e La cuenta A-101 pertenece al cliente Pedro Prez
La relacin (Relationship set) cliente-cuenta. Relaciona clientes
con cuentas
Este modelo es MUY popular en el diseo de bases de datos
Es muy sencillo convertir este diseo lgico al modelo relacional el
cual es entendido cas directamente por las bases de datros
relacionales

Database System Concepts 1.9


Modelo Relacional
Atributo
En el modelo relacional el mundo se representa mediante un
conjunto de tablas:
id nombre domicilio ciudad
cliente cliente cliente

192-83-7465 Johnson
Alma Palo Alto

019-28-3746 Smith
North Rye

192-83-7465 Johnson
Alma Palo Alto
321-12-3123 Jones
Main Harrison

019-28-3746 Smith
North Rye

Database System Concepts 1.10


Una base relacional:
id nombre_cliente calle_cliente ciudad_cliente

tabla cliente

numero_cuenta saldo cliente_id numero_cuenta

tabla cuenta
tabla cliente_cuenta
Database System Concepts 1.11
Lenguaje de Definicin de Datos (DDL)

Lenguaje para definir el esquema de la base de datos


p.e.
create table cuenta (
numero_cuenta char(10),
saldo integer);
Toda modificacin de los datos debe estar de acuerdo con el
esquema: restricciones.

Database System Concepts 1.12


Lenguaje de Manipulacin de Datos (DML)

Lenguaje que permite acceder al contenido de la la base y


manipular los datos almacenados.
DML se conoce tambien como lenguaje de consultas
SQL (con diversas extensiones) es el lenguaje de consulta ms
popular

Database System Concepts 1.13


SQL realtest

SQL: lenguaje no-procedural


p.e. clientes cuyo identificador (id) es 888-88-8888
p.e. saldo de las cuentas pertenecientes al cliente con
identificador 192-83-7465
select saldo
from cliente_cuenta, cuenta
where cliente_cuenta.cliente_id = 888-88-8888 and
cliente_cuenta.numbero_cuenta =
cuenta.numero_cuenta;
Las aplicaciones normalmente acceden a las bases de datos:
mediante SQL embebido
API (e.g. ODBC/JDBC) que permiten enviar al a base instrucciones
SQL

Database System Concepts 1.14


Resumen: Principales ventajas

Almacenamiento centralizado de datos vs conjunto ficheros


Abstraccin de datos
Independencia entre interfaz de usuario y datos
Supresin de informacin redundante e incoherencias
Privilegios: restriccin de acceso
Acceso simultaneo: transacciones
Reforzamiento de restricciones de integridad
Backup

Database System Concepts 1.15


Resumen: Otras Ventajas

Refuerza Standards
Reduce el tiempo de desarollo
Incrementa la flexibilidad
Posibilidad de tener informacin siembre actualizada

Database System Concepts 1.16


Desventajas de las BB.DD.
Su instalacin y mantenimiento requiere:
Personal especializado
tiempo
Conocimientos tcnicos
En entornos con altas de mandas computacionales el overhead
introducido por la base de datos puede ser significativo.

Database System Concepts 1.17

You might also like