Objetivos y funcionalidad de los SGBD.
Sistema Gestor de Base de Datos
Índice de la
Unidad
1. Definición de un
SGBD
2. Objetivos de los
SGBD
3. Componentes de los
SGBD
4. Funciones de los
SGBD
5. Clasificación de los
SGBD
1.
Definición de un SGBD
Son programas que se
ocupan de acceder y actualizar las DBS. Actúan como interfase entre el programa
de aplicación y la DB. Por ejemplo, cuando un programa debe actualizar una
información en el DB, no lo hace directamente, si no que le pide al DBMS para
hacerlo, pues este es quien conoce como es el DB por dentro. Un sistema de
gestión de base de datos es una forma de almacenar la información de tal manera
que se eviten la duplicación de datos. Las bases de datos relacionales son aquellas
que guardan la información en modo de tablas.
2. Objetivos
de los SGBD
Las funciones de los
S.G.B.D. son:
• Debe permitir la
definición de todos los datos.
• Debe permitir
manipular datos.
• Debe establecer
controles para la seguridad de estos.
• Debe permitir los
accesos concurrentes.
• Definición de datos:
(modifica la estructura o añade campos). La misión del L.D.D. es describir y
definir todos los esquemas que participen en la base de datos. Esto consiste en
la descripción de los objetos que vamos a representar. La descripción de todas
las
estructuras que formen
nuestra base de datos.
• Definición de vista:
es una visión parcial de la tabla. <<cuando en una tabla alguna parte de
esta no quiero que tenga derecho a manipularla nadie>>
• Manipulación de
datos: L.M.D. recoge toda la operación de intercambio de datos entre las
tablas, estas operaciones pueden ser de consulta o de puesta al día (inserción,
modificación, supresión) estas operaciones se realizan con la ayuda del
denominado L.M.D.
• consultas
• operaciones
• insertar datos
• puesto al día –
modificar datos
• suprimir datos
• Debe establecer
controles de seguridad de los datos: dentro de los controles de seguridad están
la restricción en el acceso a datos, permisos, configuración de estos
permisos.
• Debe permitir los
accesos concurrentes: El principal objetivo de la implantación de una base
de datos es poner a disposición de un gran número de usuarios en conjunto integrado
de datos, estos datos podrán ser manipulados por los diferentes usuarios y es ahora
cuando se debe garantizar la coherencia de los datos después de las diversas
manipulaciones. Esto se garantiza con la ayuda del concepto de transacción
<<se define como transacción a una unida lógica de tratamiento que aplicada
a un estado coherente de una base de datos restituye un nuevo estado coherente
de la base de datos pero con estos modificados, únicamente puede ser modificada
completamente anulado>>.
3.
Componentes de los SGBD
Los SGBD
son paquetes de software muy complejo y sofisticado que deben proporcionar los
servicios comentados en la sección anterior. No se puede generalizar sobre los
elementos que componen un SGBD ya que varían mucho unos de otros. Sin embargo,
es muy útil conocer sus componentes y cómo se relacionan cuando se trata de
comprender lo que es un sistema de bases de datos. Un SGBD tiene varios
módulos, cada uno de los cuales realiza una función específica. El sistema
operativo proporciona servicios básicos al SGBD, que es construido sobre él. El
procesador de consultas es el componente principal de un SGBD. Transforma las consultas
en un conjunto de instrucciones de bajo nivel que se dirigen al gestor de la
base de datos. El gestor de la base de datos es la interfase con los programas
de aplicación y las consultas de los usuarios. El gestor de la base de datos acepta
consultas y examina los esquemas externo y conceptual para determinar qué registros
se requieren para satisfacer la petición. El gestor del diccionario controla
los accesos al diccionario de datos y se encarga de mantenerlo. La mayoría de
los componentes del SGBD acceden al diccionario de datos. Los principales
componentes del gestor de la base de datos son los siguientes:
• Control
de autorización. Este módulo comprueba que el usuario tiene los permisos
necesarios para llevar a cabo la operación que solicita.
• Procesador
de comandos. Una vez que el sistema ha comprobado los permisos del usuario, se
pasa el control al procesador de comandos.
• Control
de la integridad. Cuando una operación cambia los datos de la base de datos,
este módulo debe comprobar que la operación a realizar satisface todas las restricciones
de integridad necesarias.
•
Optimizador de consultas. Este módulo determina la estrategia óptima para la ejecución
de las consultas.
• Gestor de
transacciones. Este módulo realiza el procesamiento de las transacciones.
•
Planificador (scheduler). Este módulo es el responsable de asegurar que las operaciones
que se realizan concurrentemente sobre la base de datos tienen lugar sin
conflictos.
• Gestor de
recuperación. Este módulo garantiza que la base de datos permanece en un estado
consistente en caso de que se produzca algún fallo.
• Gestor de
buffers. Este módulo es el responsable de transferir los datos entre memoria
principal y los dispositivos de almacenamiento secundario. A este módulo también
se le denomina gestor de datos. Normalmente, un diccionario de datos almacena:
• Nombre,
tipo y tamaño de los datos.
• Nombre de
las relaciones entre los datos.
•
Restricciones de integridad sobre los datos.
• Nombre de
los usuarios autorizados a acceder a la base de datos.
• Un SGBD
debe proporcionar un mecanismo que garantice que todas las actualizaciones correspondientes
a una determinada transacción se realicen, o que no se realice ninguna. Una
transacción es un conjunto de acciones que cambian el contenido de la base de
datos. Una transacción en el sistema informático de la empresa inmobiliaria
sería dar de alta a un empleado o eliminar un inmueble.
4. Funciones
de los SGBD
Una transacción un poco
más complicada sería eliminar un empleado y reasignar sus inmuebles a otro
empleado. En este caso hay que realizar varios cambios sobre la base de datos.
Si la transacción falla durante su realización, por ejemplo, porque falla el
hardware, la base de datos quedará en un estado inconsistente. Algunos de los
cambios se habrán hecho y otros no, por lo tanto, los cambios realizados
deberán ser deshechos para devolver la base de datos a un estado consistente.
Un SGBD debe
proporcionar un mecanismo que asegure que la base de datos se actualice correctamente
cuando varios usuarios la están actualizando concurrentemente.
El SGBD se debe
encargar de que estas interferencias no se produzcan en el acceso simultáneo.
Un SGBD debe
proporcionar un mecanismo capaz de recuperar la base de datos en caso de que ocurra
algún suceso que la dañe.
• Un SGBD debe permitir
que se mantenga la independencia entre los programas y la estructura de la base
de datos.
• Un SGBD debe
proporcionar una serie de herramientas que permitan administrar la base de
datos de modo efectivo. Algunas herramientas trabajan a nivel externo, por lo que
habrán sido producidas por el administrador de la base de datos. Las
herramientas que trabajan a nivel interno deben ser proporcionadas por el
distribuidor del SGBD. Algunas de ellas son:
• Herramientas para
importar y exportar datos.
• Herramientas para
monitorizar el uso y el
funcionamiento de la
base de datos.
• Programas de análisis
estadístico para
examinar las
prestaciones o las estadísticas
de utilización.
• Herramientas para
reorganización de índices.
• Herramientas para
aprovechar el espacio
dejado en el
almacenamiento físico por los
registros borrados y
que consoliden el espacio
liberado para
reutilizarlo cuando sea
necesario.
5.
Clasificación de los SGBD
El criterio principal
que se utiliza para clasificar los SGBD es el modelo lógico en que se basan. Los
modelos lógicos empleados con mayor frecuencia en los SGBD comerciales actuales
son el relacional, el de red y el jerárquico. Algunos SGBD más modernos se
basan en modelos orientados a objetos. El modelo orientado a objetos define una
base de datos en términos de objetos, sus propiedades y sus operaciones.
Los sistemas
monousuarios sólo atienden a un usuario a la vez, y su principal uso se da en los
ordenadores personales. Los sistemas multiusuario, entre los que se encuentran
la mayor parte de los SGBD, atienden a varios usuarios al mismo tiempo.
En los SGBD
distribuidos la base de datos real y el propio software del SGBD pueden estar distribuidos
en varios sitios conectados por una red. Los SGBD distribuidos homogéneos utilizan
el mismo SGBD en múltiples sitios.
Una tendencia reciente
consiste en crear software para tener acceso a varias bases de datos autónomos
preexistentes almacenadas en SGBD distribuidos heterogéneos.
Esto da lugar a los
SGBD federados o sistemas multibase de datos en los que los SGBD participantes
tienen cierto grado de autonomía local. Muchos SGBD distribuidos emplean una arquitectura
cliente-servidor.
Un cuarto criterio es
el coste del SGBD. La mayor parte de los paquetes de SGBD cuestan entre 10.000
y 100.000 dólares. Los sistemas monousuario más económicos para microcomputadores
cuestan entre 100 y 3.000 dólares. En el otro extremo, los paquetes más completos
cuestan más de 100.000 dólares.
Por último, los SGBD
pueden ser de propósito general o de propósito específico. Cuando el rendimiento
es fundamental, se puede diseñar y construir un SGBD de propósito especial para
una aplicación específica, y este sistema no sirve para otras aplicaciones.
Comments
Post a Comment