2. Introducción
Para diseñar una base de datos
debemos establecer un proceso
partiendo del mundo real, de manera
que sea posible plasmarlo mediante una
serie de datos. La imagen que
obtenemos del mundo real se denomina
modelo conceptual y consiste en una
serie de elementos que definen lo que
queremos plasmar del mundo real en la
base de datos. La definición de este
modelo se denomina esquema
conceptual. Una base de datos es una
recopilación de información relativa a
un asunto o propósito particular, como
el seguimiento de pedidos de clientes o
el mantenimiento de una colección de
videos, etc.
3. Sistema Tradicional de
Almacenamiento
Problemas
Los sistemas computacionales se utilizaron inicialmente en los negocios para funciones de
contabilidad y, como eran funciones imprescindibles, el alto costo de los computadores
era fácil de justificar.
A estos primeros sistemas se les llamó sistemas de procesamiento de datos y trataban de
imitar los procedimientos manuales existentes.
Al principio, la mayoría de los archivos se almacenaban en cinta magnética, ya que el
almacenamiento en disco era todavía caro, y se accedía a los datos de forma secuencial,
lo que significa que cada registro puede leerse únicamente después de haber sido leídos
todos los que le preceden. Estos archivos se procesaban por lotes, es decir, todos los
registros de un archivo se procesaban al mismo tiempo.
Los archivos se empleaban en distintas aplicaciones. Un programa que realiza una tarea
específica es un programa de aplicación y un conjunto de programas que trabajan en
tareas relacionadas entre sí se llama sistema de aplicación.
4. Archivos Secuenciales
Los archivos secuenciales
servían para producir
facturas e informes una o
dos veces al mes pero
para tareas rutinarias se
necesitaba acceso directo
a los datos (procesar
directamente un registro
dado). Los operadores
debían introducir datos
redundantes, lo que
requería esfuerzo adicional
y aumentaba la
probabilidad de error.
5. Archivos Directos
Estos problemas se resolvieron
parcialmente con la introducción
de los archivos de acceso directo,
particularmente los archivos
secuenciales indexados (ISAM), que
permitían la recuperación de
registros aleatoriamente. Este tipo
de archivos permiten utilizar uno o
más campos para identificar un
registro.
A finales de los sesenta se produjo
la transición del procesamiento de
los datos al procesamiento de la
información. Se hace una distinción
entre datos e información. Por
datos se entienden hechos
aislados, mientras que información
son datos procesados.
6. Deficiencias de los Archivos
Directos
Redundancia de datos. Como muchas aplicaciones utilizaban sus propios
archivos, había algunos datos redundantes, lo que ocasionaba el aumento
de introducción de datos y las probabilidades de inconsistencia entre
diversas versiones de los mismos.
Pobre control de datos. El mismo elemento de los datos podía tener diversos
nombres según el archivo en que se encontrara, lo cual creaba confusiones.
Capacidades inadecuadas de manipulación de datos. Los archivos
secuenciales indexados permitían tener acceso a un registro particular pero
no a un conjunto de registros interrelacionados.
Esfuerzo de programación excesivo. Frecuentemente, un nuevo programa
requería nuevas definiciones de los archivos que el programador tenía que
recodificar, creando así una interdependencia muy fuerte entre los
programas y los datos.
7. Bases de Datos
Una base de datos
es un conjunto de
datos almacenados
de manera
estructurada en
algún soporte
magnético.
Diferentes
programas y usuarios
pueden utilizar estos
datos.
8. Objetivos
Los objetivos fundamentales de una base de
datos son:
Los datos deben estar compartidos. Hay diversas
formas que se verán más adelante.
El uso de los datos debe ser controlado. De esta
tarea se encarga el sistema de gestión de base
de datos (SGBD).
Los datos se integran de una forma lógica,
eliminando redundancias, resolviendo
ambigüedades en la definición y manteniendo la
consistencia interna entre los mismos.
10. Hardware
Es el conjunto de dispositivos físicos
sobre los que reside una base de
datos. Pueden usarse mainframes o
minicomputadoras para soportar
acceso a varios usuarios, o
computadoras personales que se
utilizan con bases de datos
autónomas controladas por un
usuario único. Hay que señalar
también que las unidades de disco
son el mecanismo de
almacenamiento principal para las
bases de datos.
Debido al avance y el
abaratamiento de la alta
tecnología, los sistemas de bases
de datos se han difundido
considerablemente.
11. Software
Hay dos tipos de software:
el sistema de gestión de
bases de datos (SGBD) y el
software de aplicación
(que usa las facilidades del
SGBD para manipular las
bases de datos. Este último
suele ser desarrollado por
los empleados de la
compañía para resolver un
problema específico,
mientras que el SGBD debe
brindar varios servicios que
se describirán más tarde
12. Datos
Los
datos tienen
que ser cuidadosa
y lógicamente
estructurados y
deben
almacenarse de
manera precisa en
el diccionario de
datos.
13. Personas
Personas. Pueden ser:
usuarios (que necesitan
información de la base
de datos para
desarrollar su
responsabilidad en el
negocio) o
profesionales de la
computación (que su
responsabilidad reside
en el diseño y
mantenimiento del
sistema de la base de
datos).
14. Independencia Física de
Datos
En una base de datos hay que lograr la
independencia entre las estructuras
lógica y física de los datos, lo que
significa distinguir entre datos y
aplicaciones.
El concepto de independencia de los
datos implica la separación entre el
almacenamiento y la organización
lógica de los datos tal como éstos se
contemplan por los distintos programas
de aplicación que hacen uso de la base,
con lo que se consigue que unos mismos
datos se puedan presentar de distintas
formas según las necesidades y, por otra
parte, que el almacenamiento de los
datos, su estructura lógica y los
programas de aplicación sean
independientes unos de otros.
15. Integridad
La integridad de los datos
consiste en mantener la precisión
y consistencia de los valores de
los datos. Los mecanismos de
seguridad protegen la integridad
de los datos. También se pueden
mantener en el diccionario de
datos restricciones sobre los
valores, aunque es una tarea
que resulta complicada.
Por último, resaltar que los
mecanismos de copias de
seguridad y restauración
soportados por el SGBD deben
preservar los datos de cualquier
fallo del sistema.
16. Seguridad
Los ABDs (administradores de la base
de datos) pueden restringir el acceso a
los usuarios sólo para recuperación o
permitir acceso y actualización. La
información relativa a los derechos de
acceso se almacena en el diccionario
de datos.
El acceso a la base de datos también
es controlado por un mecanismo de
contraseñas; un usuario que quiera
acceder al sistema debe dar una
contraseña y que el sistema la valide.
El encargado de la asignación de
contraseñas también es el ABD.
17. Redundancia Mínima
Para que una base de datos
sea efectiva hace falta
eliminar en la medida de lo
posible las redundancias, es
decir, las repeticiones que
puedan llevar a error, como el
llamar a un mismo campo de
distinta manera en varios
archivos, ya que si no existe el
riesgo de inconsistencia entre
las distintas versiones de los
mismos datos.
18. Compartir Datos
Quizás la diferencia
más importante
entre un sistema
basado en archivos
y un sistema de base
de datos es que los
datos se comparten.
Hay 3 formas de
compartir
19. Entre
unidades funcionales. El combinar
los datos en una base de datos produce
que los datos combinados tengan más
valor que la suma de los datos en los
archivos por separado. A este concepto
de combinar los datos para un uso
común se le llama integración de datos.
20. Entre
diferentes niveles de usuarios. Se
pueden distinguir 3 niveles de usuarios:
personal, mandos intermedios y
ejecutivos. Estos niveles se corresponden
con los 3 diferentes tipos de
automatización de los sistemas de
negocios: procesamiento electrónico de
datos (PED), sistemas de información de
gestión (MIS) y sistemas de apoyo a la
toma de decisiones (STD).
21.
Entre diferentes localidades. Una base de datos
centralizada es una base de datos que está
físicamente situada en un único lugar, controlado
por una sola computadora. La mayoría de las
funciones se llevan a cabo más fácilmente si la
base de datos está centralizada. Sin embargo, un
sistema de base de datos distribuida (compuesto
de varios sistemas de bases de datos operando
en los sitios locales y conectados por líneas de
comunicación), hace posible que los datos
residan donde se necesitan con más frecuencia,
mientras que al mismo tiempo puedan acceder a
los mismos otros usuarios no locales.
22. Concurrencia
Gracias al SGBD existe la
posibilidad de que varios
usuarios tengan acceso de
forma rápida y eficiente a los
datos de la base. Al centralizar
los datos en una base de
datos, aumentan las
probabilidades de que se dé
este caso. Si el SGBD permite
esto, seguramente el trabajo
realizado por los usuarios se
vería dañado, por eso el SGBD
debe proteger los datos de la
actualización simultánea por
otro usuario; para ello utiliza
mecanismos sofisticados de
bloqueo.
25. Desventajas
Instalación
costosa:
Personal especializado
Implantación larga y difícil
Falta de rentabilidad a corto plazo
Ausencia real de normas
Desfase entre la teoría y la práctica
26. Arquitectura de una BD
Nivel conceptual: consiste en el análisis de las necesidades
de los usuarios y la definición de las clases de los datos.
Como resultado se obtiene un esquema conceptual con
todos los elementos de los datos y sus relaciones.
Nivel externo: es la colección de las vistas de distintos
grupos de usuarios sobre la base de datos, las cuales
describen los elementos de los datos y sus relaciones.
Nivel interno: está compuesto por la vista física de la base
de datos (discos, direcciones, punteros...). Este nivel es
responsabilidad de los diseñadores de la base de datos y
no de los usuarios.
La implementación de estos 3 niveles requiere que el SGBD
haga corresponder cada nivel con el otro.
27. Bases de Datos Distribuidas
BDD
Un SGBD es un sistema computacional de
propósito general que manipula la base de
datos. A continuación se describen los
diferentes servicios que ofrece.
El diccionario de datos/directorio (DD/D)
almacena las definiciones de todos los
elementos de los datos en la base de
datos, así como las interrelaciones que
existen entre las diversas estructuras de datos.
A esto se le llaman metadatos o datos sobre
los datos.
28. Sistema de Gestión de Bases
de Datos (SGBD)
SGBD limita el acceso al personal autorizado y también lo
restringe a ciertos datos. La integridad y la consistencia de
la base de datos se protegen por medio de restricciones
sobre los valores que pueden tomar los elementos de los
datos y por las capacidades de recuperación y respaldo
suministradas por el SGBD.
El SGBD proporciona los mecanismos físicos que permiten a
varios usuarios tener acceso de forma rápida y eficiente a
diferentes datos relacionados. También utiliza mecanismos
de bloqueo para que la actualización de más de un
usuario simultáneamente no afecte a los datos.
Se debe permitir a los usuarios formular sus consultas y pedir
informes únicos directamente de la base de datos.
Por último, el SGBD ofrece al programador una serie de
herramientas que facilitan la creación de software de
aplicación.
29. BASES DE DATOS DISTRIBUIDAS
(BDD)
CONCEPTO DE DISTRIBUCIÓN
Un sistema de base de datos distribuida consiste en varios sistemas
de bases de datos operando en los sitios locales y conectados por
líneas de comunicación.
PROCESAMIENTO DISTRIBUIDO
Una consulta o una actualización deja de ser un proceso simple
controlado por un único módulo de software, se convierte en
varios procesos cooperando entre sí controlado por varios módulos
independientes. Pero para que funcione con efectividad, deben
estar disponibles tecnologías adecuadas de comunicación y los
SGBDs deben poder comunicarse entre sí.
30. Ventajas y desventajas
VENTAJAS E INCONVENIENTES
Una clara ventaja es que es posible
ubicar los datos en lugares donde se
necesitan con más frecuencia, aunque
también al mismo tiempo se permita a
usuarios no locales acceder a los datos
según sus necesidades. Esto mejora la
relación costo-efectividad y la autonomía
local.
31. PLATAFORMAS CLIENTESERVIDOR
Las plataformas cliente/servidor son sistemas abiertos, lo que
significa que tratan de lograr la interoperabilidad entre dos o más
sistemas, es decir que se comuniquen y contribuyan cada uno a
alguna parte del trabajo común.
Los ordenadores clientes están interconectados a un servidor, así,
un cliente que necesite hacer una consulta o actualización en la
base de datos, envía una petición al servidor de la base de datos
y este le devuelve los datos solicitados.
Al principio los servidores se instalaron para controlar la impresión y
el acceso a los archivos, pero hoy la mayoría son servidores de
base de datos, mientras los clientes son los que manipulan al
Interfaz Gráfica del Usuario (GUI).