Ventajas del Uso de Bases de Datos
1. Obtener Más Información de la Misma Cantidad de Datos
Las bases de datos facilitan a los usuarios obtener más información debido a la facilidad que provee esta estructura para proveer datos a los usuarios (si se tiene el privilegio). Por ejemplo, al comparar un Centro de Cómputos tradicional en COBOL con uno que utiliza una Base de Datos, se observa una mejora significativa en la accesibilidad y el manejo de la información.
2. Compartir los Datos
Usuarios de distintas oficinas pueden compartir datos si están autorizados. Esto implica que si un dato cambia de contenido, como por ejemplo la dirección de un cliente, todos los usuarios que pueden acceder a ese dato verán inmediatamente el cambio efectuado. En un Centro de Cómputos tradicional con un Sistema Estudiantil que tenga subsistemas de Registro, Asistencia Económica, Estudio y Trabajo, Matrícula, etc., la sincronización de datos era más compleja y propensa a errores.
3. Balance de Requerimientos Conflictivos
Para que la Base de Datos trabaje apropiadamente, necesita de una persona o grupo que se encargue de su funcionamiento. El título para esa posición es Administrador de Base de Datos (DBA) y provee la ventaja de que diseña el sistema tomando en cuenta la necesidad de cada departamento de la empresa. Por lo tanto, se beneficia mayormente la empresa, aunque algunos departamentos podrían tener leves desventajas debido a su idiosincrasia. Tradicionalmente, se diseñaba y programaba según la necesidad de cada departamento por separado. Por ejemplo, en diferentes departamentos se utilizaban diferentes herramientas y estructuras de datos para su sistema particular, lo que afectaba a los otros departamentos.
4. Se Refuerza la Estandarización
Debido a lo que se mencionó previamente, es más fácil estandarizar procesos, formas, nombres de datos, etc.
5. Redundancia Controlada
Debido al sistema tradicional de archivos independientes, los datos se duplicaban constantemente, lo cual creaba mucha duplicidad y problemas de sincronización cuando se actualizaba un dato en un archivo en particular. Por ejemplo, en el sistema de Registro y de Asistencia Económica pasaba mucho eso. El método que utilizaron para resolver el problema fue el de actualizar periódicamente el archivo de Asistencia Económica con el archivo de registraduría (principal). Esto conlleva un uso innecesario de los recursos de la computadora. ¡Ojo!, la redundancia se controla, no se elimina por completo.
6. Consistencia
Al controlarse la redundancia, cuando se actualiza un dato, todos los usuarios autorizados de la Base de Datos pueden ver el cambio, independientemente de que estén trabajando en distintos sistemas.
7. Integridad
La base de datos tiene la capacidad de validar ciertas condiciones cuando los usuarios introducen datos y rechazar entradas que no cumplan con esas condiciones. El DBA es responsable de establecer esas validaciones.
8. Seguridad
El DBA, al tener control central de los datos, puede usar los mecanismos que la Base de Datos le provee para crear niveles de seguridad para distintos tipos de usuarios. En COBOL, esta opción tendría que programarse.
9. Flexibilidad y Rapidez al Obtener Datos
Aquí el usuario puede fácilmente obtener información de la Base de Datos con tan solo escribir unas breves oraciones. Esto evita el antiguo y burocrático proceso de llenar una petición al Centro de Cómputos para poder obtener un informe.
10. Aumenta la Productividad de los Programadores
Debido a que los programadores no se tienen que preocupar por la organización de los datos ni de su validación, se pueden concentrar en resolver otros problemas inmediatos, mejorando de ese modo su productividad.
11. Mejora el Mantenimiento de los Programas
Debido a que los datos son independientes de los programas (a diferencia de COBOL), si ocurre un cambio en la estructura de una tabla (archivo), el código no se afecta. Por ejemplo, en COBOL, un cambio de campo en un archivo, aun con el uso de librerías, puede generar problemas significativos.
12. Independencia de los Datos
Debido a lo que se mencionó previamente, los datos pueden modificarse para, por ejemplo, mejorar el «performance» de la Base de Datos y, como consecuencia, no se tiene que modificar los programas.
Desventajas del Uso de Bases de Datos
1. Tamaño
Al proveer todas las ventajas anteriormente nombradas, el Sistema de Manejo de Base de Datos (DBMS) requiere de mucho espacio en disco duro y también requiere de mucha memoria principal (RAM) para poder correr adecuadamente.
2. Complejidad
Debido a la cantidad de operaciones y a las capacidades del DBMS, se convierte en un producto complejo de entender. Esto requiere que los programadores y los analistas tomen cursos que los adiestren para poder comprender las capacidades y limitaciones del DBMS.
3. Costo
Los productos de Bases de Datos (Oracle, DB2, etc.) son productos caros. Esto sin contar los adiestramientos del personal del centro de cómputos y de los usuarios. Por ejemplo, la implementación de FRS en la Universidad conlleva un costo significativo.
4. Requerimientos Adicionales de Equipo
Adquirir un producto de Base de Datos requiere a su vez adquirir equipo adicional para poder correr ese producto, como por ejemplo, servidores, memoria, discos duros, etc. Si se pretende correr la Base de Datos con el mínimo de requerimientos, esta posiblemente se degrada y el «response time» al usuario se va a afectar grandemente.
5. En Caso de Fallo, el Impacto es Mayor
Si un componente de la Base de Datos sufre un desperfecto, se detienen las operaciones del producto por completo. En el caso de un ambiente no centralizado en COBOL, el impacto casi siempre afecta al departamento en donde ocurrió el problema únicamente.
6. Complejidad en la Recuperación de Datos
En caso de un accidente que corrompa la Base de Datos, el proceso de recuperación y de devolver a la Base de Datos su estado anterior al problema es mucho más complejo de ejecutar que en sistemas tradicionales.