Sistema
de Gestión de Base de Datos (SGBD)
Los Sistemas de Gestión de Base de
Datos (en inglés DataBase Management System) son un tipo de software muy
específico, dedicado a servir de interfaz entre la base de datos, el usuario y
las aplicaciones que la utilizan. Se compone de un lenguaje de definición de
datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.
Ventajas
de las bases de datos
1. Control
sobre la redundancia de datos:
Los sistemas de ficheros almacenan
varias copias de los mismos datos en ficheros distintos. Esto hace que se
desperdicie espacio de almacenamiento, además de provocar la falta de
consistencia de datos.
En los sistemas de bases de datos
todos estos ficheros están integrados, por lo que no se almacenan varias copias
de los mismos datos. Sin embargo, en una base de datos no se puede eliminar la
redundancia completamente, ya que en ocasiones es necesaria para modelar las
relaciones entre los datos.
2. Consistencia
de datos:
Eliminando o controlando las
redundancias de datos se reduce en gran medida el riesgo de que haya
inconsistencias. Si un dato está almacenado una sola vez, cualquier
actualización se debe realizar sólo una vez, y está disponible para todos los
usuarios inmediatamente. Si un dato está duplicado y el sistema conoce esta
redundancia, el propio sistema puede encargarse de garantizar que todas las
copias se mantienen consistentes.
3. Compartición
de datos:
En los sistemas de ficheros, los
ficheros pertenecen a las personas o a los departamentos que los utilizan. Pero
en los sistemas de bases de datos, la base de datos pertenece a la empresa y
puede ser compartida por todos los usuarios que estén autorizados.
4. Mantenimiento
de estándares:
Gracias a la integración es más
fácil respetar los estándares necesarios, tanto los establecidos a nivel de la
empresa como los nacionales e internacionales. Estos estándares pueden
establecerse sobre el formato de los datos para facilitar su intercambio,
pueden ser estándares de documentación, procedimientos de actualización y
también reglas de acceso.
5. Mejora
en la integridad de datos:
La integridad de la base de datos se
refiere a la validez y la consistencia de los datos almacenados. Normalmente,
la integridad se expresa mediante restricciones o reglas que no se pueden
violar. Estas restricciones se pueden aplicar tanto a los datos, como a sus
relaciones, y es el SGBD quien se debe encargar de mantenerlas.
6. Mejora
en la seguridad:
La seguridad de la base de datos es
la protección de la base de datos frente a usuarios no autorizados. Sin unas
buenas medidas de seguridad, la integración de datos en los sistemas de bases
de datos hace que éstos sean más vulnerables que en los sistemas de ficheros.
7. Mejora
en la accesibilidad a los datos:
Muchos SGBD proporcionan lenguajes
de consultas o generadores de informes que permiten al usuario hacer cualquier
tipo de consulta sobre los datos, sin que sea necesario que un programador
escriba una aplicación que realice tal tarea.
8. Mejora
en la productividad:
El SGBD proporciona muchas de las
funciones estándar que el programador necesita escribir en un sistema de
ficheros. A nivel básico, el SGBD proporciona todas las rutinas de manejo de
ficheros típicas de los programas de aplicación.
El
hecho de disponer de estas funciones permite al programador centrarse mejor en
la función específica requerida por los usuarios, sin tener que preocuparse de
los detalles de implementación de bajo nivel.
9. Mejora
en el mantenimiento:
En los sistemas de ficheros, las
descripciones de los datos se encuentran inmersas en los programas de
aplicación que los manejan.
Esto hace que los programas sean
dependientes de los datos, de modo que un cambio en su estructura, o un cambio
en el modo en que se almacena en disco, requiere cambios importantes en los
programas cuyos datos se ven afectados.
Sin embargo, los SGBD separan las descripciones
de los datos de las aplicaciones. Esto es lo que se conoce como independencia
de datos, gracias a la cual se simplifica el mantenimiento de las aplicaciones
que acceden a la base de datos.
10. Aumento
de la concurrencia:
En algunos sistemas de ficheros, si
hay varios usuarios que pueden acceder simultáneamente a un mismo fichero, es
posible que el acceso interfiera entre ellos de modo que se pierda información
o se pierda la integridad. La mayoría de los SGBD gestionan el acceso
concurrente a la base de datos y garantizan que no ocurran problemas de este
tipo.
11. Mejora
en los servicios de copias de seguridad:
Muchos sistemas de ficheros dejan
que sea el usuario quien proporcione las medidas necesarias para proteger los
datos ante fallos en el sistema o en las aplicaciones. Los usuarios tienen que
hacer copias de seguridad cada día, y si se produce algún fallo, utilizar estas
copias para restaurarlos.
En este caso, todo el trabajo
realizado sobre los datos desde que se hizo la última copia de seguridad se
pierde y se tiene que volver a realizar. Sin embargo, los SGBD actuales
funcionan de modo que se minimiza la cantidad de trabajo perdido cuando se
produce un fallo.
Desventajas
de las bases de datos
1. Complejidad:
Los SGBD son conjuntos de programas que
pueden llegar a ser complejos con una gran funcionalidad. Es preciso comprender
muy bien esta funcionalidad para poder realizar un buen uso de ellos.
2. Coste
del equipamiento adicional:
Tanto el SGBD, como la propia base
de datos, pueden hacer que sea necesario adquirir más espacio de
almacenamiento. Además, para alcanzar las prestaciones deseadas, es posible que
sea necesario adquirir una máquina más grande o una máquina que se dedique
solamente al SGBD. Todo esto hará que la implantación de un sistema de bases de
datos sea más cara.
3. Vulnerable
a los fallos:
El hecho de que todo esté
centralizado en el SGBD hace que el sistema sea más vulnerable ante los fallos
que puedan producirse. Es por ello que deben tenerse copias de seguridad
(Backup).
No hay comentarios:
Publicar un comentario