Del+enfoque+tradicional+a+los+sistemas+de+bases+de+datos

 =Tema 2=

=3. DE LOS SISTEMAS TRADICIONALES DE FICHEROS A LAS BASES DE DATOS=

Sistemas tradicionales de Ficheros
Los sistemas informáticos tradicionales han sido llamados por algunos autores sistemas orientados hacia el proceso, debido a que en ellos se pone el énfasis en los tratamientos que reciben los datos, los cuales se almacenan en ficheros diseñados para una determinada aplicación. Las aplicaciones se analizan e implantan con entera independencia unas de otras, y los datos no se suelen transferir entre ellas, sino que se duplican siempre que los correspondientes trabajos los necesitan.

Este planteamiento produce, además de una ocupación inútil de memoria secundaria, un aumento de los tiempos de proceso, al repetirse los mismos controles y operaciones en los distintos ficheros. Pero más graves todavía son las inconsistencias que a menudo se presentan en estos sistemas, debido a que la actualización de los mismos datos, cuando se encuentran en más de un fichero, no se suele realizar de forma simultánea en todos los ficheros. Los problemas son aún más acusados cuando se presentan demandas inesperadas de información.

PROBLEMAS DE LOS FICHEROS

 * Redundancia e inconsistencia de los datos


 * Dificultad de acceso a los datos: Existen aplicaciones particulares para cada tipo de acceso a los datos.


 * Aislamiento de los datos: Los datos están en archivos con diferentes formatos, por lo tanto resultan difíciles de utilizar en nuevos programas.


 * Variedad de usuarios: Si varios usuarios actualizan a la vez se puede llegar a tener información inconsistente


 * Problemas de seguridad: Es dificil restringir el acceso a registros de un fichero.


 * Problemas de integridad de los datos.

De este análisis se deduce claramente la necesidad de una gestión más racional del conjunto de datos, por lo que la solución de los problemas asociados al tratamiento de los datos en los sistemas tradicionales lleva a un cambio radical en el enfoque del sistema de información.

CONCEPTO DE BASE DE DATOS
Una base de datos es un conjunto, colección o depósito de datos almacenados en un soporte informático de acceso directo. Los datos deben estar interrelacionados estructurados.Es imprescindible que la base de datos sea capaz de almacenar éstas interrelaciones, al igual que hace con otros elementos (como las entidades y atributos), siendo ésta una diferencia esencial respecto a los ficheros donde no se almacenan las interrelaciones.

La redundancia de los datos debe ser controlada, de forma que no existan duplicidades perjudiciales ni innecesarias, y que las redundancias físicas, convenientes muchas veces a fin de responder a objetivos de eficiencia, sean tratadas por el mismo sistema, de modo que no puedan producirse incoherencias. Por tanto, un dato se actualizará lógicamente por el usuario de forma única, y el sistema se preocupará de cambiar físicamente todos aquellos campos en los que el dato estuviese repetido, en caso de existir redundancia física.

La actualización y recuperación en las bases de datos debe realizarse mediante procesos bien determinados, incluidos en un conjunto de programas que se encargan de la gestión de la base de datos y que se denominan sistemas gestores de bases de datos (S.G.B.D)

VENTAJAS DE LAS BASES DE DATOS FRENTE A LOS FICHEROS CLÁSICOS

 * __**Independencia de los datos respecto a los tratamientos y viceversa:**__

La mutua independencia de datos y tratamientos lleva a que un cambio de los programas no implican tener que cambiar el diseño lógico y/o físico de la base de datos. Por otra parte, la inclusión de nuevas informaciones, desaparición de otras, cambios en la estructura física o en los caminos de acceso, etc., no deben obligar a alterar los programas. Esta independencia de los tratamientos frente a la estructura de la base de datos, evita el importante esfuerzo que origina la reprogramación de las aplicaciones cuando se producen cambios en los datos.
 * __**Coherencia de los resultados:**__

Debido a que la información de la base de datos se recoge y almacena una sola vez. En todos los programas se utilizan los mismos datos, por lo que los resultados de todos ellos son coherentes y perfectamente comparables. Además, al no existir (o al menos disminuir en gran medida) la redundancia en los datos, desaparece el problema que se presentaba en el enfoque clásico, de que el cambio de un dato obligaba a actualizar una serie de ficheros.
 * __**Mejor disponibilidad de los datos para el conjunto, de los usuarios:**__

En las bases de datos, cada usuario ya no es propietario de los datos, puesto que éstos se comparten entre el conjunto de aplicaciones, existiendo una mejor disponibilidad de los datos para todos los que tienen necesidad de ellos, siempre que estén autorizados para su acceso.
 * __**Mayor eficiencia en la recogida, validación entrada de los datos al sistema:**__

Al no existir apenas redundancias, los datos se recogen y validan una sola vez, aumentando así el rendimiento de todo el proceso previo al almacenamiento.
 * __**Reducción del espacio de almacenamiento:**__

La desaparición (o disminución) de las redundancias, así como la aplicación de técnicas de compactación, lleva en los sistemas de bases de datos a una menor ocupación de almacenamiento secundario

INCONVENIENTES DE LAS BASES DE DATOS

 * __**Instalación costosa:**__

La implantación de un sistema de bases de datos puede llevar consigo un coste elevado, tanto en equipo físico (nuevas instalaciones o ampliaciones), como en el lógico (sistemas operativos, programas, compiladores, etc... necesarios para su uso).
 * __**Personal especializado:**__

Los conocimientos, que resultan imprescindibles para una utilización correcta y eficaz y sobre todo para la administración de las bases de datos, implican una necesidad de personal especializado que resulta difícil de encontrar, y de formar. El problema de la contratación y formación de este tipo de personal es clave a la hora de crear un sistema de base de datos.
 * __**Implantación larga y difícil:**__

La implantación de una base de datos puede convertirse en una tarea larga y laboriosa. Las dificultades que van apareciendo a lo largo de su desarrollo llevan en general a que se superen ampliamente los plazos inicialmente previstos.
 * __**Falta de rentabilidad a corto plazo:**__

La implantación de un sistema de bases de datos, tanto por su coste en personal y en equipos como por el tiempo que tarda en estar operativo, no resulta rentable a corto plazo. Puede calcularse que para un sistema de dimensiones medias la rentabilidad sólo puede empezar a apreciarse después de bastantes meses de la iniciación de los trabajos; en instalaciones grandes o muy grandes el plazo puede llegar a ser de años.
 * __**Ausencia real de normas:**__

Un problema muy importante que se pone de manifiesto en el momento de la creación de una base de datos, es la ausencia real de una estandarización que facilite a los usuarios el manejo de los sistemas de bases de datos. Empieza, sin embargo, a observarse ya una preocupación por este tema y van apareciendo algunos estándares, sobre todo en el campo de las bases de datos relacionales como el SQL.

CARACTERÍSTICA DESEABLES DE LAS BD

 * 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 simultaneo al mismo o diferente datos.


 * Mínima redundacia.


 * 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.

· Contra destrucción causada por el entorno (fuego, inundación, ...) · Contra destrucción causada por fallos del sistema · Contra accesos no autorizados a la BD  · Contra accesos indebidos a los datos
 * Seguridad: Capacidad para proteger los datos contra perdidad totales y/o parciales,
 * 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 frente a fallos Hw o Sw o de acceso concurrente · Integridad asegurando que los datos se ajustan a los requerimientos del problema.
 * Integridad: Que los datos sean correctos y se correspondan a los requerimientos del dominio.