1
Capítulo
Introducción al procesamiento
de bases de datos
2
Introducción al procesamiento de bases de
datos
La expansión de Internet y el desarrollo de la tecnología
en las bases de datos, permite que las aplicaciones de
Internet sean mucho mas que un simple folleto publicitario
que caracterizó a las primeras aplicaciones.
“ El diseño y desarrollo de bases de datos implica arte e
ingeniería”
Ya que la comprensión de los requerimientos del usuario y
su traducción en diseños de bases de datos eficaces es un
proceso artístico, y trasformar esos diseños en bases de
datos físicas con plena funcionalidad y de alto
rendimiento, es un proceso de ingeniería.
3
Propósito de una base de datos
El propósito es ayudar a las personas a dar
seguimiento en sus actividades.
Las aplicaciones clásicas de una base de
datos se refiere al seguimiento de artículos
como por ejemplo: ordenes, clientes,
facturas, empleados, llamadas telefónicas, o
cualquier otro aspecto de interés para las
personas de negocios.
4
Definición de una BD
Una Base de Datos es un conjunto autodescriptivo de registros integrados
Es decir que contiene una descripción de su
propia estructura. Llamada diccionario de
datos (directorio de datos o metadatos)
5
Una Base de Datos es un conjunto autodescriptivo de registros integrados
Una BD = archivos+ metadatos+
índices + metadatos de aplicaciones
Definición de una BD
6
Datos que contiene la Base de Datos
Datos del Usuario (archivos)
Metadatos
Índices
Metadatos de Aplicación.
7
Datos de Usuario
8
Metadatos
Los metadatos son simplemente datos sobre datos, es decir,
información estructurada que describe a otra información y que nos
permite encontrarla, gestionarla, controlarla, entenderla y preservarla en
el tiempo.
9
Son datos que describen otros datos. El metadato
puede ser texto, voz o imagen. El metadato ayuda
a clarificar y encontrar datos.
Por ejemplo, el metadato podría documentar
atributos (nombre, tamaño, tipo de dato, etc), las
estructuras de los datos (longitud, columnas,
campos, etc), y datos sobre datos (donde está
localizado, cómo está asociado, etc).
Un ejemplo de metadato es lo que se guarda en los sistemas de archivo. Para cada archivo
informático almacenado se guardan los siguientes metadatos: fecha y hora de creación,
fecha y hora de modificación, última vez que fue accedido, etc.
Metadatos
10
Índices
Un índice es una estructura de datos definida sobre una
columna de tabla (o varias) y que permite localizar de forma
rápida las filas de la tabla en base a su contenido en la
columna indexada además de permitir recuperar las filas de
la tabla ordenadas por esa misma columna.
Funciona de forma parecida al índice de un libro donde
tenemos el título del capítulo y la página donde empieza
dicho capítulo, en un índice definido sobre una determinada
columna tenemos el contenido de la columna y la posición
de la fila que contiene dicho valor dentro de la tabla.
11
Índices
12
Metadatos de Aplicación
13
Comparación de aplicaciones de bases de
datos
Tipo Número típico de Usuarios
concurrentes
Tamaño común de la base
de datos
Personal 1 Menos de 10 Megabytes
Grupo de trabajo Menos de 25 Menos de 100 Megabytes
Organizacional Cientos a miles Mas de 1 Trillón de bytes
Internet Cientos a miles Ilimitado
14
Definición de base de datos
Una base de datos es un conjunto autodescriptivo de
registros integrados.
“Es autodescriptiva porque contiene además de los datos
fuente del usuario, una descripción de su propia
estructura” (Diccionario de datos o Directorio de datos o
Metadatos)
La característica autodescriptiva es importante, ya que
fomentan la independencia de los datos / programas.
15
BASE DE
DATOS
Aparecen en los inicios
de los 60´s, para
expresar un conjunto de
datos relacionados entre
si, los cuales están
estructurados de tal
forma que sea fácil
acceder a ellos
automáticamente, y a la
ves son independientes
de los programas que los
gestionan.
Datos
PROGRAMAS
Información
Registro
Campo
Tabla /oArchivo
DBMS
Una base de datos
es un conjunto de
registros integrados.
Base de Datos
16
BASE DE DATOS
Tabla
Registro
Campo Caracteres
Base de Datos
17
Componentes principales de un sistema de
base de datos
Datos: son la base de datos propiamente dicha. Una base de datos se
constituye con datos almacenados y utilizados por los sistemas de una
organización particular.
Hardware: se refiere a los dispositivos de almacenamiento en donde reside
la base de datos.
Software: es un conjunto de programas que se conoce como un sistema
manejador de base de datos (DBMS). Este sistema maneja todas las
solicitudes formuladas por los usuarios a la base de datos.
Usuarios: las personas que crean, administran y hacen uso de la base de
datos que existen.
18
Clases de usuarios en la base de datos
1- El programador de aplicaciones: quien crea
programas de aplicación que utilizan la base
de datos.
2- El usuario final: quien accede a la base de
datos por medio de un lenguaje de consulta
o programas de aplicación.
3- Administrador de la base de datos (DBA):
Quien es responsable del desarrollo,
operación y mantenimiento de la base de
datos y de sus aplicaciones.
19
Administrador de la base de datos
Es quien se encarga de definir y controlar las bases de datos corporativas, que
además proporciona asesoría a los usuarios y ejecutivos que la requieran.
Algunas funciones incluyen:
✓ Administración de la base de datos
✓ Control de procesos repetitivos
✓ Administración de los derechos y responsabilidades del procesamiento
✓ Desarrollo de seguridad de la base de datos
✓ Servicios de recuperación de la base de datos
✓ Administración del DBMS
✓ Mantenimiento
✓ Apoyar y asesorar durante el proceso de adquisición del DBMS
✓ Proporcionar asesoría técnica a analistas y programadores que desarrollan
aplicaciones para la bases de datos.
20
Que es un sistema de Base de Datos
Es básicamente un sistema computarizado para
guardar registros, en donde su finalidad general
es almacenar datos y permitir a los usuarios crear,
recuperar y actualizar información con base en
peticiones.
Comprende los
cuatro
componentes
principales
21
Componente: Datos
Los sistemas de bases de datos están disponibles
en maquinas que van desde las computadoras
personales más pequeños hasta las computadoras
mainframe más grandes.
Procesamiento de Archivos
Integración de los Datos
Monousuario
Multiusuario
22
En general los datos de la base de datos en un
sistema grande serán tanto integrados como
compartidos.
Componente: Datos
23
Sistemas de Procesamiento de Archivos
Los primeros Sistemas de Información
comerciales almacenaban grupos de
registros en archivos separados y eran
llamados Sistemas de Procesamiento de
Archivos.
24
Relación de los Programas de Aplicaciones y los
Archivos
Archivo de
X
Aplicación del
Proceso
XUsuario
25
Sistemas de Procesamiento de
ArchivosEstos sistemas representaban una significativa
mejora sobre los sistemas manuales de registro, pero tienen las siguientes limitaciones:
Datos separados y aislados
Duplicación de datos
Dependencia del programa de aplicación
Archivos incompatibles
Dificultad de representar los datos como los ve el usuario
26
Procesamiento
de
Clientes
Archivo
de
Clientes
Procesamiento
de
Préstamos
Archivo
de
Préstamos
Usuario del
Archivo de Clientes
Usuario del
Archivo de Préstamos
Por cada préstamo se guarda la información
del cliente correspondiente: Redundancia
Un poco de historia …
27
Sistema de Procesamiento de Bases de
Datos
La tecnología de las Bases de Datos se desarrollópara superar las limitaciones de los Sistemas deProcesamiento de Archivos.
Los programas de procesamiento de archivosacuden a los archivos de los datos almacenados.
Los programas de procesamiento de base dedatos acuden al DBMS para acceder los datosalmacenados.
28
Relación de los Programas de
aplicaciones y los DBMS
29
… Antes
EmpleadosClientes
Inventario
Ventas Cuentas
Dpto. Personal Dpto. VentasDpto. Contabilidad
BASE DE DATOS
DBMSEmpleados
ClientesVentas
InventarioCuentas
… Ahora
AplicaciónDe personal
AplicaciónVentas
AplicaciónContabilidad
Comparación…..
PROCESAMIENTO DE ARCHIVOS
30
Sistemas de Procesamiento de Bases de
Datos
Tiene las siguientes características:
Datos integrados
Menos duplicación de datos
Independencia programa/datos
Fácil representación de la vista de datos de los
usuarios
31
Sistema Administrador de la base de datos
(DBMS)
32
33
Los sistemas de gestión de bases de datos ( SGBD o
DBMS ) organizan y estructuran los datos de tal modo que
puedan ser recuperados y manipulados por usuarios y
programas de aplicación.
ACCESS
DBMS
1. Jerárquica
2. Red
3. Relacional
4. Orientada a Objetos
5. Objetos Relacional
Estructura de la base de datos
34
Tipos de base de datos
Jerárquicas: En ellas se organiza la información se organiza
con un jerarquía en la que la relación entre las
entidades de este modelo siempre es del tipo
padre / hijo. De esta forma hay una serie de
nodos que contendrán atributos y que se
relacionarán con nodos hijos de forma que
puede haber más de un hijo para el mismo
padre (pero un hijo sólo tiene un padre).
Las entidades de este modelo se llaman
segmentos y los atributos campos. La forma
visual de este modelo es de árbol invertido, en
la parte superior están los padres y en la
inferior los hijos
35
Tipos de base de datos
En red:Se trata de un modelo que se utilizó durante mucho
tiempo. Organiza la información en registros y enlaces.
Los registros representan las entidades del modelo
entidad / relación. En los registros se almacenan los datos
utilizando atributos. Los enlaces permiten relacionar los
registros de la base de datos.
El modelo en red más aceptado es el llamado codasyl, que
durante mucho tiempo se ha convertido en un estándar.
Las bases de datos en red son parecidas a las jerárquicas
sólo que en ellas puede haber más de un padre. En este
modelo se pueden representar perfectamente relaciones
varios a varios. Pero su dificultad de manejo y complejidad
hace que se estén abandonando
completamente.
36
Tipos de base de datos
Relacionales
Los datos se muestran en
forma de tablas y
relaciones. Este es el
modelo que se comenta en
el presente documento. De
hecho es el claramente más
popular.
37
Tipos de base de datos
Orientadas a objetos: Desde la aparición de la programación orientada a objetos (POO u OOP) se
empezó a pensar en bases de datos adaptadas a estos lenguajes. En estos
lenguajes los datos y los procedimientos se almacenan juntos. Esta es la idea de
las bases de datos orientadas a objetos.
A través de esta idea se intenta que estas bases de datos consiguen arreglar las
limitaciones de las relacionales. Por ejemplo el problema de la herencia, tipos
definidos por el usuario, disparadores almacenables en la base de datos, soporte
multimedia...
Se supone que son las bases de datos de tercera generación (la primera fue las
bases de datos en red y la segunda las relacionales), lo que significa que el
futuro parece estar a favor de estas bases de datos. Pero siguen sin reemplazar a
las relacionales (aunque cada vez hay más).
Su modelo conceptual se suele diseñar en UML y el lógico en ODMG 3.0
38
Estructura Orientada a Objetos
Se considera como una de las
tecnologías claves de una nueva
generación de aplicaciones
multimedia que se basan en la Web.
39
Tipos de base de datos
Objeto Relacionales Tratan de ser un híbrido entre el modelo relacional y el orientado a objetos. El problema de las
bases de datos orientadas a objetos es que requieren reinvertir de nuevo para convertir las bases de
datos. En las bases de datos objeto relacionales se intenta conseguir una compatibilidad relacional
dando la posibilidad de integrar mejoras de la orientación a objetos.
Estas bases de datos se basan en el estándar SQL 99 que dictó las normas para estas bases de datos.
En ese estándar se añade a las bases relacionales la posibilidad de almacenar procedimientos de
usuario, triggers, tipos definidos por el usuario, consultas recursivas, bases de datos OLAP,...
Las últimas versiones de la mayoría de las grandes bases de datos relacionales (Oracle, SQL Server,
Informix, ...) son objeto relacionales.
40
Una Base de Datos es un modelo de un modelo
Es decir, es un modelo del modelo del usuario
Varían en su nivel de detalle
El grado de detalle que debe incorporarse en una BD depende de la información deseada, y el criterio principal para definir el nivel de detalle es el nivel de detalle que imagina el usuario
41
Historia del Procesamiento de Bases de Datos
Contexto organizacional
Sistemas de procesamiento de archivos (limitaciones)
Incremento en el volúmen de datos
La tecnología de BD ofrece la promesa de solución a tales problemas
Pero inicialmente tenía muchas fallas: las aplicaciones eran dificiles de desarrollar, eran lentas y poco confiables, vulnerabilidad
De modo gradual la situación mejoró
42
El Modelo Relacional
En 1970, E. F. Codd publicó un artículo en el que
aplicaba los conceptos de el álgebra relacional a
los problemas de almacenar enormes cantidades
de datos.
En muy pocos años condujo a la definición de las
Bases de Datos Relacionales
43
Ventajas del modelo Relacional
Los datos se almacenan como tablas y las relaciones entre las filas y las tablas son visibles en los datos
Permite a los usuarios obtener información de las BD sin asistencia de sistemas profesionales de administración de información
En los anteriores productos de DBMS almacenaban las relaciones en datos de sistemas como son los índices
En los modelos relacionales el usuario sólo debe especificar cuáles registros quiere procesar. En los anteriores dependía mucho de los profesionales de sistemas
44
Resistencia al Modelo Relacional
Requieren más recursos (costoso, lento)
Este modelo les parecía extraño a los
programadores
45
Productos DBMS para Microcomputadoras
En 1979 Ashton-Tate introdujo el dBase II y lo denominó un DBMS relacional. Fue comprado por Borland y desarrollaron el dBase III Plus que es un auténtico DBMS y el dBase IV que es un DBMS Relacional
Oracle, Focus e Ingres empezaron a trasladar sus productos de las macro a las microcomputadoras
DBMS desarrollados especialmente para micros: Paradox, Revelation, MDNS, Helix
Productos con interfaces gráficas de usuario agradables: Access de MS y Paradox de Borland
46
Aplicaciones de BD Cliente/Servidor
Con una Macro o Minicomputadora, solo el CPU
participa en el procesamiento de las aplicaciones
De mediados a finales de los 80 se desarrollan las redes
LAN donde pueden contribuir simultáneamente varios
CPU
Esto condujo a un nuevo estilo de procesamiento de BD
multiusuario llamado aquitectura de base de datos
Cliente/Servidor
47
Aplicaciones de BD Cliente/Servidor
La aquitectura de base de datos Cliente/Servidor
48
Procesamiento distribuido de Bases de
Datos
Las bases de datos distribuidas permiten que las
Bases de Datos personales, de grupos de trabajo y
de organizaciones se combinen en sistemas
integrados pero distribuidos, sin embargo se
tienen varios problemas aún no resueltos
(seguridad y control)
49
Procesamiento distribuido de Bases de
Datos
La esencia de las BD distribuidas es que todos los datos de la organización están dispersos en varias computadoras: micros, Servidores LAN y macrocomputadoras, que se comunican a medida que procesan la BD
El objetivo de los sistemas distribuidos de BD son hacer que cada usuario sienta que es el único usuario de los datos de la organización y proporcionar la misma consistencia, precisión y oportunidad que tendría si nadie más estuviera usando la BD distribuida.
50
La base de datos distribuida sirve para compartir información,
las cuales no están almacenada totalmente en un solo lugar
físico y se comunican por enlaces de comunicaciones a través de
una red de computadoras dispersas geográficamente. La base de
distribuidas se utilizan cada vez mas en la misma medida en que
se usan las arquitecturas de cliente- servidor.
Existen dos modalidades para crear base de datos distribuidos
➢ Fragmentar la base de datos: consiste en instalar en cada
computadora solo la parte que se usara con mas frecuencia en
la zona geográfica y el resto de los datos deberán ser
transportados por la red de comunicación.
➢ Replica de base de datos: consiste en realizar una copia total
e instalar en cada una de las computadoras de la organización.
51
Procesamiento distribuido de Bases de
Datos
52
Los DBMS orientados a objetos ODBMS
A finales de los 80 empezó a usarse un nuevo
estilo de programación llamado programación
orientada a objetos (OOP)
Como consecuencia evolucionó una nueva
categoría de productos DBMS denominada
Sistemas de Base de Datos Orientados a Objetos
(OODBMS)
53
Conclusión
Los componentes de una aplicación de Base de datos son:
La Base de Datos
Los Sistemas de Administración de la Base de Datos (DBMS)
Los programas de aplicación
Las partes de una Base de Datos son:
Los Datos del usuario
El Diccionario de Datos
Los datos significativos
Los Datos de la aplicación
54
Globalización de la información: permite a losdiferentes usuarios considerar la información comoun recurso corporativo que carece de dueñosespecíficos.
Eliminación de información redundante: confrecuencia los sistemas de aplicación desarrollados através de archivos convencionales son dueños de suspropios archivos, de tal suerte que si dos sistemas deaplicación requieren la misma información es muyposible que ésta se duplique.
55
Eliminación de información incongruente:
este efecto tiene relación con el concepto
anterior. Si existen dos o más archivos con la
misma información, los cambios que se hagan
a éstos deberán hacerse a todas la copias.
Permite compartir información: esta
característica es una consecuencia de lo antes
expuesto, ya que varios sistemas o usuarios
pueden utilizar la misma entidad.
56
Permite mantener la integridad de la información:
la integridad de la información es una de las
cualidades altamente deseable y tiene por objeto que
sólo se almacene la información correcta.
Independencia de datos: implica una división entre
programas y datos; es decir, se pueden hacer
cambios a la información que contiene la base de
datos o tener acceso a la base de datos de diferente
manera, sin hacer cambios en las aplicaciones o en
los programas.
57
Es el software o conjunto de programas que
permiten crear y operar una base de datos; un
conjunto de programas que se encargan de manejar
la creación y todos los accesos a las bases de datos.
Mediante el DBMS se hace la definición de los datos,
es decir, se especifican los tipos de datos a
almacenar; también se efectúa la carga de
información e incluye mo9dulos para realizar
consultas, actualizar y generar informes.
Sistema Administrador de Base de Datos
(DBMS)
58
Creación y definición de la
estructura lógica de la base de
datos.
Consultar y
actualizaciones
de la
información.
Diseño de
aplicaciones
para el usuario.
Mecanismos de seguridad y control
de usuarios e
información.
Definición de
datos
Manipulación
de datos
Generador de
aplicación
Administración
de datos
Base
de
datos
M
O
T
OR
D
B
MS
Sistema Administrador de Base de Datos
(DBMS)