1. 1. Archivos planos
Una base de datos de archivos planos es una base de datos que almacena los datos en un archivo de texto sin formato.
Cada línea del archivo de texto puede contener un registro, con campos separados por delimitadores, tales como comas o
tabulaciones. Aunque se utiliza una estructura simple, una base de datos de archivo plano no puede contener varias tablas
como una base de datos relacional puede. Afortunadamente, la mayoría de los programas de bases de datos como Microsoft
Access y FileMaker Pro puede importar bases de datos de archivos planos y utilizarlas en una base de datos relacional más
grande.
Archivo plano es también un tipo de equipo de sistema de archivos que almacena todos los datos en un solo directorio. No
existen carpetas o rutas utilizadas organizar los datos. Aunque esta es una manera simple para almacenar archivos, un
sistema de archivos plana se convierte en cada vez más ineficaz como se agregan más datos. El original Macintosh
computadora utilizado este tipo de sistema de archivos, llamado creativamente el sistema de archivos para Macintosh
(SFM). Sin embargo, pronto fue sustituido por el sistema de archivos más eficiente jerárquico (HFS), que se basa en una
estructura de directorios.
a. Características de los archivos planos
1. Los registros se organizan en archivos, registros y campos.
2. Carda aplicación tiene sus propios archivos.
3. El acceso de los usuarios es únicamente por medio de un programa
especializado.
4. Los datos se escriben directamente en el sistema.
5. Para modificar una parte de la base de datos es necesario modificarlo
con un programa especializado
6. Estos archivos utilizan programas de programación comunes para su
edición.
2. b. Desventajas de los archivos planos
1. La redundancia de datos: Esta es una característica de los archivos planos ya que cuentan con un conjunto de
archivos por cada aplicación, muchas veces los mismos datos son almacenados en diversos archivos, lo que provoca
duplicidad de información o lo que también se conoce como redundancia de datos.
Normalmente es perjudicial ya que da lugar a inconsistencia, cuando un dato no se actualiza en todos los lugares
donde aparece. Es el caso
de datos repetidos, que aparecen en varios ficheros, o de datos calculados, que
podrían obtenerse a partir de otros datos
2. Inconsistencia de los datos
Esta duplicidad de información y la falta de control sobre los datos
ingresados al sistema, permiten el aumento de la posibilidad de que los
datos de los registros no se han los mismos en los diversos archivos donde
son almacenados y por supuesto que cada aplicación almacenará la
información de diferente forma. Normalmente es perjudicial ya que da lugar
a inconsistencia, cuando un dato no se actualiza en todos los lugares donde
aparece. Es el caso de datos repetidos, que aparecen en varios ficheros, o
de datos calculados, que podrían obtenerse a partir de otros datos.
3. Dependencia de datos y programas
La información de dónde comienza un campo, dónde acaba, su tipo, etc. está
controlada por el programa; cualquier cambio en la estructura del fichero
implicaría modificación de los programas.
3. 3. ¿Qué es una base de datos?
Una base de datos es una colección de información organizada de forma que un programa de ordenador pueda seleccionar
rápidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrónico. Las bases de
datos tradicionales se organizan por campos, registros y archivos. Un campo es una pieza única de información;
un registro es un sistema completo de campos; y un archivo es una colección de registros. Por ejemplo, una guía de
teléfono es análoga a un archivo. Contiene una lista de registros, cada uno de los cuales consiste en tres campos: nombre,
dirección, y número de teléfono. A veces se utiliza DB, de database en inglés, para referirse a las bases de datos.
4. Sistema administrador de base de datos
Un sistema de administración de bases de datos DBMS (Database
Management System, por sus siglas en inglés) es un sistema
basado en computador (software) que maneja una base de datos,
o una colección de bases de datos o archivos. La persona que
administra un DBMS es conocida como el DBA (Database
Administrator, por sus siglas en ingles).
Un gestor de base de datos o sistema de gestión de base de datos
(SGBD oDBMS) es un software que permite introducir, organizar y
recuperar la información de las bases de datos. Existen distintos
tipos de gestores de bases de datos: relacional, jerárquico, red, ...
El modelo relacional es el utilizado por casi todos los gestores de
bases de datos para PC´s.
4. a) Características de un DBMS
Un SGBD debe permitir:
• Definir una base de datos: especificar tipos, estructuras y restricciones de datos.
• Construir la base de datos: guardar los datos en algún medio controlado por el mismo SGBD
• Manipular la base de datos: realizar consultas, actualizarla, generar informes.
Las características de un Sistema Gestor de Base de Datos SGBD son:
• Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los
datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario.
Así, se definen varios niveles de abstracción.
• Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de
una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella.
• Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida o
redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los
cálculos hace necesaria la aparición de redundancias.
• Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que aquella
información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen
de forma simultánea.
• Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben
garantizar que esta información se encuentra resguardada frente a usuarios malintencionados, que intenten leer
información privilegiada; frente a ataques que deseen manipular o destruir la información; o simplemente ante las
torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de
permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos.
5. • Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir,
se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra
circunstancia capaz de corromper la información almacenada.
• Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de respaldo de la
información almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder.
• Control de la concurrencia. En la mayoría de entornos (excepto quizás el doméstico), lo más habitual es que sean
muchas las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es
también frecuente que dichos accesos se realicen de forma simultánea. Así pues, un SGBD debe controlar este acceso
concurrente a la información, que podría derivar en inconsistencias.
Algunas de las funciones de un DBMS son:
• Definición de la base de datos: como la información va a ser
almacenada y organizada.
• Creación de la base de datos: almacenamiento de datos en una base
de datos definida.
• Recuperación de los datos: consultas y reportes.
• Actualización de los datos: cambiar los contenidos de la base de
datos.
• Programación de aplicaciones de para el desarrollo de software.
• Control de la integridad de la base de datos.
• Monitoreo del comportamiento de la base de datos.
6. b) Ventajas de un DBMS
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.
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. Sin embargo, los SGBD permiten mantener la
seguridad mediante el establecimiento de claves para identificar al personal autorizado a utilizar la base de datos. Las
autorizaciones se pueden realizar a nivel de operaciones, de modo que un usuario puede estar autorizado a consultar
ciertos datos pero no a actualizarlos, por ejemplo.
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.
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. Muchos SGBD también proporcionan un entorno de cuarta generación consistente en un conjunto de
herramientas que simplifican, en gran medida, el desarrollo de las aplicaciones que acceden a la base de datos.
Gracias a estas herramientas, el programador puede ofrecer una mayor productividad en un tiempo menor.
7. Mejora en el mantenimiento gracias a la independencia de datos. 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.
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, incluso, que 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.
Mejora en los servicios de copias de seguridad y de recuperación ante fallos. 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.
8. c) Desventajas de un DBMS
Complejidad: Los SGBD son conjuntos de programas muy complejos con una gran funcionalidad. Es preciso
comprender muy bien esta funcionalidad para poder sacar un buen partido de ellos.
Tamaño. Los SGBD son programas complejos y muy extensos que requieren una gran cantidad de espacio en disco y
de memoria para trabajar de forma eficiente.
Coste económico del SGBD: El coste de un SGBD varía dependiendo del entorno y de la funcionalidad que ofrece.
Por ejemplo, un SGBD para un ordenador personal puede costar 500 dólares, mientras que un SGBD para un sistema
multiusuario que dé servicio a cientos de usuarios puede costar entre 10.000 y 100.000 dólares. Además, hay que
pagar una cuota anual de mantenimiento que suele ser un porcentaje del precio del SGBD.
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.
Coste de la conversión: En algunas ocasiones, el coste del SGBD y el coste del equipo informático que sea necesario
adquirir para su buen funcionamiento, es insignificante comparado al coste de convertir la aplicación actual en un
sistema de bases de datos. Este coste incluye el coste de enseñar a la plantilla a utilizar estos sistemas y,
probablemente, el coste del personal especializado para ayudar a realizar la conversión y poner en marcha el sistema.
Este coste es una de las razones principales por las que algunas empresas y organizaciones se resisten a cambiar su
sistema actual de ficheros por un sistema de bases de datos.
9. Prestaciones: Un sistema de ficheros está escrito para una aplicación específica, por lo que sus prestaciones suelen
ser muy buenas. Sin embargo, los SGBD están escritos para ser más generales y ser útiles en muchas aplicaciones, lo
que puede hacer que algunas de ellas no sean tan rápidas como antes.
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.
10. 6. Administrador de Base de Datos (DBA)
Es la persona encargada de definir y controlar las bases de datos corporativas, que además proporciona asesoría a los
usuarios y ejecutivas que la requieran sus funciones incluyen:
1. Apoyar y asesorar el proceso de adquisición del DBMS, tanto del paquete corporativo como los paquetes que servirán
de herramienta para usuarios finales que deseen crear sus propias bases de datos.
2. Definir la información que contendrá las bases de datos corporativas.
3. Mantener la relación y comunicación estrecha con los especialistas del DBMS, que suelen laborar con el proveedor que
vendió el paquete que maneja las bases de datos.
4. Diseñar las estructuras de almacenamiento y estrategias de acceso a las base de datos.
5. Atender y servir como punto de enlace entre los usuarios de la organización, asegurando que las necesidades de
información delos diferentes usuarios se encuentre contenidas en las bases de datos corporativas.
6. Definir estándares y procedimientos para respaldar y recuperar la información que contienen las base de datos.
7. Proporcionar asesoría técnica a analistas y programadores que se encuentran desarrollando aplicaciones que crean y /
o accedan las bases de datos.