Está en la página 1de 28

Introduccin a las Bases de Datos

Fuentes http://www-db.stanford.edu/~ullman/fcdb.html

Qu es una base de datos


Coleccin informacin Permamente perodo de tiempo Base de datos: coleccin de datos gestionados por un SGBD Permite usuario especificar nuevos esquemas bd: LMD Recuperar datos ( consultar) Actualizar datos: LMD

Qu es una base de datos

Soportar almacenamiento de grandes cantidades de datos Seguridad: accidentes y acceso no autorizado Acceso y actualizacin eficiente mediante lenguaje Control de acceso a datos mltiples usuarios (concurrencia)

BD vs. Archivos

SGBD comerciales 1960 Evolucin sistema de archivos Archivos


Almacenamiento de datos en el tiempo Redundancia Inconsistencia Acceso poco eficiente Integridad, Concurrencia, Seguridad Lenguaje de consulta no soportado

BD vs. Archivos

Archivos
Definicin datos con programas Acceso y manipulacin datos dependiente programas

Bases de datos
Definicin integrada Almacenamiento datos y descripcin Datos compartidos

Aplicaciones Clsicas

Sistema de Reservaciones en Aerolneas


Pasajeros, vuelos, itinerarios, sillas, precios tiquetes, disponibilidad

Sistemas Bancarios
Clientes, cuentas, prstamos, balances de cuentas, retiros, consignaciones

Registros corporativos
Ventas, cuentas, empleados, descuentos, ascensos, despidos

Sistemas de Gestin de Bases de Datos SGBD

Aplicacin que permite usuario


Definir Crear Mantener Acceder Controlar

una base de datos

Arquitectura de un SGBD

Lgica Perspectiva de usuario Basada Arquitectura ANSI/SPARC Tres niveles de abstraccin Fsico Conceptual Externo

SGBD: Arquitectura Lgica


Tomada de www.dbmaker.com.tw/.../tutorial/tutorial-2.gif
Nivel de Vista o Externo

Vista de usuario

Vista de usuario

Vista de usuario

Administrador Sistema

Nivel Conceptual

Administrador Base de Datos

Nivel interno o fisico

Base de Datos Fisica

Arquitectura de un SGBD

Fsica
Componentes de Soft de gestin de datos Back-end
Gestin fsica Soporte niveles

Front-end
Aplicacin soportada en SGBD Comunicacin usuario

Arquitectura Fsica SGBD


http://www.dbmaker.com.tw/reference/manuals/tutorial/tutorial-3.gif
Usuario final Utilidades Base de Datos Aplicaciones Usuario

Front End

API

Procesador de lenguaje de consultas Analizador Optimizador

Motor DBMS

Back End
Gestor de Transacciones Gestor de Archivos

Base de Datos Fisica

Funcionalidades SGBD
Almacenamiento

y acceso a datos Actualizacin de datos Descripcin datos: catlogo Gestin de transacciones Concurrencia Seguridad Recuperacin

Tipos de Aplicaciones de BD Actuales


Convencionales:

OLTP

Multimedia
GIS Data

Warehouses Bases de datos en tiempo real Soporte WEB (Motores de Bsqueda, consultas Amazon, eBay, etc.)

CONCEPTOS BASICOS

Datos
Datos Base

de datos Metadatos - catlogo Principio de Independencia Vistas Modelo de datos

Ambiente de un SGBD
Usuarios/Programadores Sistema Base de Datos DBMS Software Aplicacion Programas/Consultas

Software de Proceso Consultas/Programas Software de Acceso Almacenamiento de datos

Almacenamiento Base de Datos Definicin (Meta-Data)

Almacenamiento Base de Datos

Ejemplo simple de un catlogo


RELACIONES
Nombre Relacin Estudiante Curso Seccion Reporte_ Grado No de Columnas 4 4 5 3 2 Nombre Numero _de_estudiante Clase Enfasis Nombre_de_curso Numero_de_curso ... ... Numero_prerrequisito Character (30) Character (4) Integer (5) tipo_enfasis Character (10) XXXX-NNNN ... ... XXXXNNNN

COLUMNAS
Nombre Relacin Tipo_de_dato Relacin a la que pertenece ESTUDIANTE ESTUDIANTE ESTUDIANTE ESTUDIANTE CURSO CURSO ... ... PREREQUISITO

Prerrequisito

Tipos de Usuario
Administrador

de bd

Autoriza acceso Monitorea bd Controla recursos soft y hard Monitorea desempeo

Diseador

de bd

Define contenido, estructura, restricciones, transacciones Interacta con usuarios

Usuarios

Usuario

final

Consultan y recuperan datos Generan reportes Actualizan contenido de bd

MODELOS DE DATOS EVOLUCIN

Evolucin

Modelos de datos para describir estructura de datos en bd


Basados en rboles: Modelo Jerrquico Basados en grafos: Modelo de Red
Estandarizado en los 60s
CODASYL (Committee on Data Systems and Languages)

No soportaban lenguajes de consulta de alto nivel.

Evolucin

Sistemas de Bases de Datos Relacionales


Propuesto por Codd en 1970 Datos organizados (usuario) en tablas: relaciones Usuario: no conocimiento estructuras de almacenamiento Expresin de consultas: lenguaje de alto nivel Incremento eficiencia

Arquitectura ANSI/SPARC

Arquitectura ANSI/SPARC
Modelos o Vistas externas ES1 ES2 ES3 ES4 Nivel Externo

Modelo Conceptual

Nivel Conceptual

IS1

IS2

Nivel Fsico

Modelos Fsicos

Componentes de un SGBD
Tomada de http://infolab.stanford.edu/~ullman/fcdb/ch1.pdf
Usuario /Aplicacin
Actualizacin de Consultas

Comandos de Transaccin

Administrador Base de datos


Comandos DDL

Compilador de consultas
Plan de consultas Estadsticas de Metadatos

Manejador Transacciones

Compilador DDL

Metadatos

Motor de ejecucin
Solicitudes Indice/archivo/registro

Logging y recuperacin

Control de Concurrencia

Administrador Indice/archivo/registro
Pginas Comandos Datos, metadatos, indices

Pginas de Log

Tabla de Bloqueos

Administrador Buffer
Pginas Lectura/escritura

Buffers

Administrador de Almacenamiento

Almacenamiento

Funcionalidades

Gestin de almacenamiento secundario. Persistencia. Control de concurrencia. Proteccin de datos. Interfaces humano-mquina. Distribucin. Compilacin y optimizacin.

SGBD

SGBD es el mediador usuario-dispositivo Usuario concentrado en la representacin lgica de datos. (Separacin lgico-fsica. Principio de Independencia) SGBD
Procesador Consultas
Administrador de Transacciones

Prog 1 Prog 2

BD

Prog 3

...

Independencia de Datos
Capacidad de cambiar esquema bd sin tener que hacerlo en el siguiente nivel ms alto.
Esquema Vista
Independencia lgica de datos Esquema Lgico Independencia fsica de datos Administrador de Transacciones