Un Sistema de Bases
de Datos (SBD) es una serie de recursos para manejar grandes volúmenes de
información, sin embargo no todos los sistemas que manejan información son
bases de datos.
·
Versatilidad para representar la información: Ofrecer diferentes
visiones de la información que se almacena en la BD.
·
Desempeño: Debe dar respuesta en un tiempo
adecuado, permitiendo el acceso simultáneo al mismo o diferente datos.
·
Mínima redundancia.
·
Capacidad de acceso: Debe responder en
tiempo adecuado a consultas previstas e imprevistas.
·
Simplicidad: Cambios en los requerimientos no
deben suponer grandes cambios en el modelo de datos.
·
Seguridad: Capacidad para proteger los datos
contra perdidad totales y/o parciales,
o Contra destrucción causada
por el entorno (fuego, inundación, ...)
o Contra destrucción
causada por fallos del sistema
o Contra accesos no
autorizados a la BD
o Contra accesos
indebidos a los datos
·
Privacidad: Debe reservar la información de accesos
de personas no autorizadas.
·
Afinación: Organización de datos afines para
obtener buenos tiempos de respuesta.
·
Integridad: Que los datos sean correctos y se
correspondan a los requerimientos del dominio.
o Integridad frente a
fallos Hw o Sw o de acceso concurrente
o Integridad asegurando
que los datos se ajustan a los requerimientos del problema.
Un sistema de base de datos es algo más que simples datos o que un
conjunto de datos en combinación con unos programas de gestión. Un sistema de
base de datos está formado por los siguientes componentes:
Datos: las características más importantes de la
información en estos sistemas es que va a estar integrada y compartida.
·
Integrada: La Base de datos puede considerarse como una
unificación de varios ficheros de datos, que son tratados como uno solo, y en
el que se ha eliminado totalmente, o en parte, la redundancia de datos.
·
Compartida: Los datos pueden compartirse entre varios usuarios
distintos. Es posible que varios de estos usuarios accedan al mismo tiempo al
mismo elemento de información (acceso concurrente).
Equipo (HARDWARE): conjunto de dispositivos físicos utilizados para
almacenar y procesar los datos.
·
Ordenadores, utilizados para procesar los datos de la Base de
datos: pueden ser mainframe, miniordenador u ordenador personal. El mainframe y
los miniordenadores fueron utilizados tradicionalmente para soportar el acceso
de varios usuarios a una base de datos común. Los ordenadores personales eran
empleados, inicialmente, para manejar bases de datos autónomas controladas y
manipuladas por un usuario único. No obstante, actualmente, también pueden
conectarse a una red cliente/servidor, garantizando el
acceso de varios usuarios a una base de datos común almacenada en unidades de
disco y controladas por un ordenador servidor. El servidor puede ser otro
ordenador personal más potente, o bien, un miniordenador o un
mainframe.
·
Volúmenes de
almacenamiento. Generalmente
son unidades de disco que constituyen el mecanismo de almacenamiento principal
para las bases de datos.
·
Otros
dispositivos, como unidades
de cinta, terminales, impresoras, etc.
·
El software
de propósito general, para la gestión de la base de datos, comunmente
llamado Sistema Gestor de Bases de Datos (S. G.B.D., o también D. B. M
S, en inglés). El S.G.B.D maneja todas las solicitudes de acceso a la
base de datos formuladas por los usuarios y los programas de aplicación.
·
El software
de aplicación, que usa las facilidades del S.G.B.D para
manipular la base de datos con el fin de llevar a cabo una función específica
en la gestión de la empresa (por ejemplo: la gestión de almacén). Puede estar
desarrollado en un lenguaje de programación estándar, tal como COBOL o C, o en
un lenguaje propio de los S.G.B.D denominado lenguaje de cuarta generación
(4GL).
Personal: En un sistema de base de datos intervienen un
número importante de usuarios, que podemos clasificar en tres grupos:
·
Administrador
de la base de datos (A.B.D.). Son los encargados de diseñar la estructura de la base de datos y los
responsables de que el sistema funcione correctamente. El A.B.D. se encarga de
autorizar el acceso a la base de datos, de coordinar y vigilar su utilización y
de adquirir los recursos necesarios de software y hardware. El A.B.D. es el responsable
cuando surgen problemas como violaciones de seguridad o una respuesta lenta del
sistema. El A.B.D. tiene, entre otras, las ‑siguientes funciones:
·
Definición
del esquema: Decidir el contenido de la base de datos, eligiendo cuales son los
datos que interesa tener almacenados y organizarlos de la mejor forma posible,
creando el esquema conceptual, que se escribirá mediante un lenguaje de
definición de datos (DDL).
·
Definición de
las estructuras de almacenamiento y método de acceso: Debe decidir sobre la
forma en que se van a almacenar los datos sobre los soportes físicos en los que
se grabará la base de datos y la correspondencia entre esta estructura de
almacenamiento y el esquema conceptual.
·
Modificación
del esquema y de la organización física si los requerimientos
cambian.
·
Decidir los
controles de autorizaciones para el acceso a los datos: Es el que concede
diferentes tipos de autorizaciones al resto de los usuarios de la base de
datos.
·
Especificar
las restricciones de integridad: Debe definir los procedimientos de validación
que habrán de ejecutarse cada vez que se actualiza la base de datos. Estas
restricciones son consultadas por el SGBD cada vez que se realiza una
actualización de los datos.
·
Programadores
de aplicaciones, que se
encargan de desarrollar las aplicaciones que manejan datos de la base de datos.
Estas aplicaciones contendrán solicitudes de datos al S.G.B.D que luego serán
procesados por los programas de la aplicación que tendrán como finalidad
resolver problemas específicos de la empresa.
·
Usuarios
finales, que son personas que no
tienen por que tener conocimientos informáticos y que pueden manipular los
datos (examinarlos y actualizarlos) con la ayuda de las aplicaciones, o bien de
lenguajes de consulta no procedimentales (no es necesario indicar el algoritmo
de acceso a los datos), tipo SQL, o bien, mediante herramientas basadas en
sistemas de menús. Se distinguen tres tripos de usuarios finales:
·
Usuarios
especializados: Aquellos que son capaces de escribir ciertas aplicaciones para
la BD, para su uso propio.
·
Usuarios
casuales: Aquellos que realizan consultas a través de un procesador de
consultas. Esas consultas pueden ser creadas por ellos mismos o por otras
personas.
·
Usuarios
ingenuos: Aquellos que solo acceden a través de aplicaciones previamente
escritas por otros usuarios.
·
Gestor de ficheros: Se encarga de las
estructuras de datos que se emplean para representar la información almacenada
en disco. Además es el encargado de asignar espacio en disco.
·
Gestor de BD: Es el interface entre
los datos de bajo nivel almacenados en la BD y los programas de aplicaciones y
consultas de datos.
·
Procesador de consultas: traduce las
proposiciones del lenguaje de consultas a instrucciones de bajo nivel para que
las entienda el gestor de BD. Además el procesador de consultas trata de
traducir una petición del usuario a otra equivalente pero más eficiente.
·
Compilador DDL: Convierte las proposiciones DDL
en un conjunto de tablas que contienen metadatos.
·
Ficheros de datos: Almacenan la
información (los datos).
·
Diccionario de datos: Almacena
información referida a la estructura de la BD. Se usa continuamente. Se debe
poner un gran énfasis en un buen diseño y una implementación adecuada del
diccionario de datos.