Está en la página 1de 30

Sistemas de Computación I

Unidad III

UNIDAD III

ARCHIVOS
INTRODUCCION:

Todo lo que las computadoras hacen es procesar datos (aceptan datos, los procesan y
comunican resultados). Normalmente, los datos que los ordenadores manejan están
organizados en agrupaciones lógicas (diferentes niveles) para que los procesos sean
efectivos y los resultados obtenidos sean útiles
La utilización de la computadora en la administración de las empresas ha supuesto
una revolución respecto al almacenamiento y gestión de sus datos, dando lugar al uso de los
denominados archivos informativos y bases de datos
Siempre que se procesen datos, se necesitarán “ARCHIVOS” que contengan los datos
necesarios que necesita una empresa para funcionar.
Por ejemplo, archivos que contengan los datos para llevar el control de Stock o para
calcular los Sueldos de los empleados de una empresa.
En los procesos de informática son tan importantes los archivos como los cálculos
que puedan realizarse.
Para que los datos puedan ser utilizados por el ordenador ande pasar de los soportes
externos de almacenamiento a la memoria interna del propio ordenador. Toda la
información que circule de soportes a memoria y viceversa, tiene que tener una
determinada estructura. Dicha estructura se denomina REGISTRO y el almacén de los
REGISTROS se llama FICHERO.

CARÁCTER: (CHARACTER), es aquello susceptible de ser representado por un


código de registración, puede ser una letra, un número, un símbolo, etc.
Es el elemento más pequeño de un archivo.
CAMPO: (FIELD) es un grupo de caracteres relacionados que se tratan como una
sola unidad. Existen dos tipos de campo según su longitud.
CAMPO DE LONGITUD FIJA: son aquellos que mantienen inalterada su
amplitud. Ejemplo: CODIGO POSTAL.
CAMPOS DE LONGITUS VARIABLE: Son aquellos en los cuales la amplitud del
campo corresponden estrictamente al número de caracteres que constituyen el dato.
Ejemplo: APELLIDO Y NOMBRE.
La definición de la amplitud o longitud de cada campo queda a criterio del
programador, acorde al dato que se almacenará en cada caso.

REGISTRO:(RECORD) es un conjunto o grupo de campos unidos, que contiene los


datos necesarios sobre algún objeto y constituye la unidad lógica a los efectos de la
Programación.
Existen dos tipos de registros según su longitud:
REGISTRO DE LONGITUD FIJA: si todos sus campos son de longitud fija.
REGISTRO DE LONGITUD VARIABLE: si contiene al menos un campo de
longitud variable o un número variables de campos.

Pág: 64
Sistemas de Computación I
Unidad III

TIPO DE REGISTROS
REGISTRO LÓGICO Y REGISTRO FÍSICO, el registro LÓGICO está enfocado al
problema (SOFTWARE) y el registro físico a la máquina (HARDWARE).

REGISTRO LÓGICO
Es cada uno de los componentes del archivo, conteniendo el conjunto de
informaciones que se acceden y se tratan de manera unitaria. Esta constituido por uno o
mas elementos denominado campos, que pueden ser de diferente tipos y que a su vez
pueden estar compuesto por subcampos.
Cada registro de un archivo se identifica por medio de una CLAVE o LLAVE, esta
debe ser un valor único e irrepetible para cada registro dentro del archivo. La clave es un
campo que diferencia los registros unos de los otros. Puede suceder que un archivo no tenga
campo clave en sus registros o por el contrario, que tenga varios, denominándose a la
principal clave primaria y a las demás secundarias. SI un archivo contiene la infamación de
un conjunto de individuos u objetos, sus registros contienen la información de cada uno de
ellos y los campos los diferentes datos que la componen.
Por ejemplo: el archivo de personal de una empresa, cada registro contiene la
información de un empleado y los campos contienen su numero de DNI, nombre, dirección,
fecha de ingreso, etc. La calle en que vive será un subcampo y el campo clave puede ser su
numero de DNI.

NUMERO DNI 10.184.171


NOMBRE LUIS FERNÁNDEZ
DIRECCION SAN MARTÍN 1200
LOCALIDAD RECONQUISTA
FECHA DE INGRESO 10 05 2000

REGISTRO DE PERSONAL

REGISTRO FÍSICO O BLOQUE

Corresponde a la cantidad de información que se transfiere en cada operación de


acceso (lectura o escritura) sobre el exterior.
Conviene separar claramente los conceptos de registro físico y registro lógico,
diferenciándose en que el tamaño y formato del registro lógico los define el programador,
mientras que el tamaño del registro físico viene dado por las características físicas de la
computadora utilizada.

Pág: 65
Sistemas de Computación I
Unidad III
En general un registro físico o bloque tendrá capacidad para contener uno o mas
registros lógicos, pero también puede ocurrir que un registro lógico ocupe mas de un
bloque. En el primer caso se habla de registros bloqueados, denominándose factor de
bloque a la cantidad de registros lógicos que contiene cada registro físico, y se denominan
registros expandidos a aquellos que ocupan mas de un bloque.
Una lectura de un archivo con registros bloqueados transfiere a la memoria central
varios registros a la vez, pero para leer un registro expandido serán necesarios realizar mas
de un acceso.

Bloque (Factor de Bloque = 3)


o Registro Fisico

Registro 1 Registro 2 Registro 3

Campo Campo Campo


1 2 3 Subcampo Subcampo
1 2

Campo
Esquema lógico de un archivo

ACLARACIONES:
- Cada registro está formado por 3 campos, cada uno de los cuales contiene un dato
necesario, por ejemplo, para una liquidación de sueldo.
- El número total de registro del archivo es igual al número de empleados.
- El conjunto de campos forman un REGISTRO LÓGICO (tendremos un registro lógico
por cada empleado).
- Con las longitudes de campos tendríamos un REGISTRO LÓGICO de 59 caracteres.
Por lo tanto en un REGISTRO FÍSICO de 128 bytes pueden entrar 2 registros lógico
enteros (128/59=2).

Pág: 66
Sistemas de Computación I
Unidad III
ARCHIVO CONCEPTO: Es una colección de registros relacionados que se tratan
como unidad.
Los registros guardan entre si una relación lógica, contienen datos homogéneos y
poseen atributos comunes.
Así podemos distinguirlos:
ARCHIVOS FÍSICOS: consiste en el soporte que se utiliza para almacenar los
registros.
ARCHIVOS LÓGICOS: contienen todos los registros, toda la información referida
a un mismo procedimiento, una misma aplicación, un mismo trabajo, etc.
EL ARCHIVO FÍSICO va a estar constituido por un conjunto de soportes, por
ejemplo: una cinta magnética, un conjunto de diskettes, etc.
EL ARCHIVO LÓGICO puede estar conteniendo a uno o más archivos físicos.

TIPOS DE FICHEROS SEGÚN SU FUNCIÓN O


UTILIZACIÓN.
Según la función que pueden desempeñar los ficheros en los diferentes procesos que
intervengan, estos se pueden clasificar en:
1- Ficheros permanentes o maestros (master files):
a) Ficheros de constantes.
b) Ficheros de tabla.
c) Ficheros de situación.
d) Ficheros históricos.
1- Ficheros de movimientos o transacciones (transaction files).
2- Ficheros de maniobra o trabajo (work file).
3- Fichero de informes.
4- Ficheros de respaldo.

FICHEROS PERMANENTES O MAESTROS.


Son aquellos en los que sus registros permanecen inalterables (o casi inalterables) a
través de los distintos procesos en los que intervienen. Así pues, un fichero que se procese
realizando una sola operación de consulta se pude considerar como ARCHIVO
PERMANENTE.
Dentro de estos ficheros puede hacer una subdivisión, según la frecuencia de
producción.

a) FICHEROS DE CONSTANTES: los datos de este tipo de fichero no sufren


habitualmente casi ninguna modificación, aunque a veces ocurra que forzosamente
tengan que ser actualizados. En general, los registros que compongan estos ficheros
consta de una serie de campos. Unos perennes y otros susceptible de ser modificados.
Toda la información contenida en esos ficheros, es información de consulta y nunca
contienen resultados.
Por ejemplo, un archivo con los datos de los empleados de una empresa figurando en el
fichero campos como NOMBRE, DNI, etc.

Pág: 67
Sistemas de Computación I
Unidad III
Hay algunos incluso en los que el contenido será fijo. Este tipo de ficheros son aquellos
que contienen información inalterable, como tablas matemáticas, tablas periódicas, etc.

b) FICHEROS DE TABLA: son archivos que contienen datos de referencia utilizados


cuando las transacciones se procesan, se actualizan archivos maestros o se producen
salidas de impresoras. En muchos sistemas se incluye un tipo especial de archivo
maestro para cubrir requerimientos especiales de procesamiento, donde los datos se
deben utilizar en forma repetitiva.

c) FICHEROS DE SITUACIÓN: son los que tienen registros que se actualizan con más
frecuencia. Contienen la situación actual a la información susceptible a sufrir
frecuentes modificaciones o alteraciones. Las modificaciones de la información
contenida en los ficheros se hacen en tiempo real, es decir, en el instante en que ocurren
los cambios. La puesta al día de estos ficheros se realiza frecuentemente. Se les llama a
veces ficheros “en línea” debido a que el proceso de actualización tiene que hacerse de
forma instantánea. Un ejemplo de este tipo de ficheros: maestro de cuentas corrientes de
un banco, sufre continuas modificaciones, en el instante en que se producen los
cambios. Otro ejemplo, existencias de stock, reserva de pasajes.

d) Ficheros Históricos: son aquellos cuyos registros contienen información referente a


resultados de operaciones. En general, se utilizan para confeccionar estadísticas y
preparar informes. El contenido de estos ficheros puede ser de información ya resumida
y directamente utilizable, o información detallada de la cual se tiene que confeccionar el
resultado final. Ejemplo: archivo que contenga todas las incidencias ocurridas en un
determinado período de tiempo en una empresa de ferrocarril, desvíos de trenes, salidas
aplazadas, llegadas puntuales, etc. con el único fin de elaborar estadísticas.

FICHEROS DE MOVIMIENTO O TRANSACCIONES


(DE NOVEDADES)
En este archivo van a estar contenidas todas las operaciones periódicas que se
realicen; contiene información relativamente transitoria. Se procesa junto con un archivo
maestro, siendo utilizados los detalles del fichero de transacciones para actualizar el
archivo maestro.
La vida de estos ficheros es corta, ya que contendrán información el tiempo que dure
el proceso de actualización, cuando el proceso termina, no tiene ningún sentido mantenerlos
activos. La descripción puede ocurrir en el mismo momento de terminar la actualización del
archivo maestro, o cuando haya otro nuevo fichero de movimientos que intervengan en el
proceso.
Por ejemplo, supongamos un fichero maestro con los datos de los empleados de una
empresa. El archivo movimientos puede ser el que contenga todas las variaciones sufridas
por esos empleados, tales como cambio de categoría, de domicilio, número de hijos, etc.

Pág: 68
Sistemas de Computación I
Unidad III

FICHEROS DE MANIOBRA O TRABAJO


(TRANSITORIO O TEMPORAL)
Son aquellos cuyos registros contienen información referente a resultados
intermedios, resultados definitivos, o bien sirven para suministrar información a otros
procesos.
Una vez utilizados, en la mayoría de los casos estos ficheros desaparecen.

FICHEROS DE INFORMES
Muy a menudo en los centros de cómputos, los operadores encuentran que la CPU
produce muchos mas datos de salida de lo que la impresora puede imprimir, por lo tanto, al
seguir la secuencia normal de los hechos, la CPU se demoraría mientras que los resultados
se producen en la impresora.
Dado que la CPU es la parte mas poderosa y cara de la mayor parte de los centros de
cómputos, se desea obtener el máximo provecho de ella.
Los archivos de informes son el contenido recolectado de los informes de salida
producido por el sistema, los crea el sistema donde de producen muchos informes pero no
hay tiempo de impresión.
En conclusión, el archivo de INFORMES contiene los datos de salida no impresos.

FICHEROS DE RESPALDO
Es una copia de un archivo MAESTRO o de TRANSACCIONES u otro que se
obtiene para asegurar que esté disponible una copia si algo le sucede al original
(BACKUP).

TIPOS DE ARCHIVOS SEGÚN SU FORMA DE


UTILIZACIÓN:

ARCHIVOS DE ENTRADA: (O DE ORIGEN)


Son aquellos que se utilizan para introducir en la memoria del ordenador la
información que contienen.
Son leídos por un programa. Ejemplo: un archivo cuyo contenido será impreso en un
listado.
PROCESO
LISTADO

(MEMORIA)
ARCHIVO

Pág: 69
Sistemas de Computación I
Unidad III

ARCHIVOS DE SALIDAS: (O DE DESTINO)


Se utilizan para almacenar información extraída de la memoria interna del ordenador.
Ejemplo: hacer una copia de un archivo.

PROCESO

(MEMORIA) ARCHIVO
ARCHIVO
DE SALIDA

ARCHIVO DE ENTRADA/SALIDA:
Se emplean tanto como archivo de entrada o en funciones de archivos de salida
cuando se cambian los datos de un archivo para reflejar en él, las nuevas informaciones que
se producen, se realiza una ACTUALIZACIÓN DE ARCHIVOS (A,B, y M).

PROGRAMA

ARCHIVO
ENTRADA/SALIDA

OPERACIONES A REALIZAR SOBRE LOS FICHEROS:


Sea cual fuere la estructura interna con la que esté organizado un fichero, se podrán
realizar una serie de operaciones básicas, que implican la utilización de la mayoría de sus
registros.

a) CREACION DE FICHEROS:
Consiste en introducir los datos de los registros en el archivo.

b) ACTUALIZACIÓN O MANTENIMIENTO:
Consiste en renovar los registros del fichero realizando cualquier operación
de:
. INSERCIÓN (ALTAS)
. ELIMINACIÓN (BAJAS)
. MODIFICACIÓN

Pág: 70
Sistemas de Computación I
Unidad III
La actualización también consiste en modificar el valor de alguno de los
campos de los registros por valores nuevos o actuales.

c) CONSULTA:
Permite acceder a uno o más registros del archivo, mediante la clave de
registro.

d) EXTRACCIÓN:
Consiste en consultar varios o la mayoría de los registros de un fichero con
el objeto de que sean copiados sobre otro fichero.

ORGANIZACIÓN DE ARCHIVOS
El diseño de un Sistema debe estar orientado a satisfacer las necesidades de
información de los usuarios. Antes de detallar la entrada, el proceso y la salida, los datos
que serán procesados deben primero ser organizados o agrupados con algún arreglo lógico.
Al seleccionar el tipo de organización de un archivo es de fundamental importancia
considerar el dispositivo de almacenamiento en que serán grabados los datos ya que por
ejemplo: un archivo grabado en cinta magnética es una lista lineal de registros lógicos
grabados uno tras otro, por lo tanto su organización es secuencial. En el caso de los discos
(flexibles o rígidos) es posible seleccionar otro tipo de organización además de la
secuencial como puede ser directo o secuencial indexada.
Básicamente los dos modos en que se pueden organizar los ficheros son:

1. ORGANIZACIÓN SECUENCIAL
2. ORGANIZACIÓN DIRECTA
3. SECUENCIAL INDEXADA

Cualquiera que sea el tipo de organización utilizada, cada registro que forme parte del
mismo fichero siempre tendrá un campo, sub-campo, conjunto de campos o conjunto de
sub-campos que identifiquen a ese registro frente a los demás del fichero. Este campo ha
ser común a todos los registros del archivo y se llamará IDENTIFICATIVO o CLAVE.
Independiente de la organización que se utilice, hay que saber que:

SECUENCIA LÓGICA: indica de que forma se almacenan los registros atendiendo


al valor de alguno de sus campos, es decir, dependiendo del contenido.

SECUENCIA FÍSICA: indica el orden que siguen los registros dentro del soporte,
es decir, las posiciones en las que están almacenados.

Pág: 71
Sistemas de Computación I
Unidad III

Organización Secuencial
Esta es la forma más sencilla para almacenar y consultar registros dentro de un
archivo.
Los registros se almacenan uno detrás de otro, sin importar el valor real de los datos
en los registros.
El primer registro almacenado se coloca al principio del archivo, el segundo a
continuación (no queda posición sin utilizarse), el tercero después del segundo y así
sucesivamente.
Para leer un archivo secuencial, el sistema comienza siempre desde el principio del
archivo. Si el registro que se busca está en algún lugar dentro del archivo, el Sistema lee
todo el archivo hasta encontrarlo, de registro en registro. Por ejemplo, si sucede que un
registro en particular está en el décimo lugar dentro de un archivo, el sistema comienza con
el primero y lee un registro después de otro hasta alcanzar el décimo. No puede ir
directamente al décimo registro sin pasar antes por los otros nueve.

EJEMPLO: la chequera con cheques en blanco es un archivo secuencial, en donde los


cheques están colocados con un orden, basándose en el número de cheque (clave de
registro).
Si se almacena registros en un fichero en este tipo de organización, tendríamos que
tener en cuenta que el fichero, una vez grabado, no tiene por que quedar ordenado. Si el
fichero quedase ordenado sería porque el propio usuario controla que la secuencia lógica de
grabación del fichero se efectúa de forma ordenada.
El usuario no tiene porqué preocuparse de la secuencia física de almacenamiento, ya
que esta se realiza en posiciones físicas contiguas.
En este tipo de organización, el identificador o clave solamente indicará cual será el
campo clave por el que accederemos al registro una vez que deseemos consultarlo pero no
necesariamente indicará el orden del registro dentro del fichero. El orden de los registros,
será secuencial, uno detrás de otro.
El fichero podrá ordenarse después de creado, mediante un programa que realice el
propio usuario, o un programa de utilidad SORT.
Si se quiere consultar una gran parte del fichero, la organización secuencial presenta
una ventaja es la rapidez con la que se puede acceder a registros colocados en posiciones
físicamente contiguas.
Por otra parte, si se quiere consultar unos pocos registros, esta organización no es la
más idónea, ya que habría que consultar secuencialmente todos los registros situados en
posiciones anteriores al o los registros buscados.

ORGANIZACIÓN DIRECTA O ALEATORIA:

Caracterizada porque el almacenamiento físico de los registros se hace a través de una


CLAVE, que indicará la posición del registro dentro del fichero. La dirección o posición
del registro se la obtiene de dos formas:

Pág: 72
Sistemas de Computación I
Unidad III

1- DIRECCIÓN DE ALMACENAMIENTO DIRECTO: La dirección de


almacenamiento es indicada directamente por el valor de la clave. Esta debe ser
numérica, caso contrario, sería necesario aplicar un algoritmo de transformación
de clave alfabética/alfanumérica a numérica.

Dirección de Claves
Almacenamiento
1
2 2 DATOS REGISTRO A
3
4 4 DATOS REGISTRO B
5 5 DATOS REGISTRO C
6
7
8
9
10 10 DATOS REGISTRO D
11 11 DATOS REGISTRO E
12 12 DATOS REGISTRO F
13

ACLARACIONES:
- La secuencia lógica de almacenamiento y la secuencia física COINCIDEN debido a que
las posiciones físicas en las que se ubica cada registro coinciden con el valor de la
CLAVE.
- No hay más de un registro clave.

2- DIRECCIÓN DE ALMACENAMIENTO INDIRECTO: La dirección de


almacenamiento se obtiene de la CLAVE, pero después de haber sufrido una
transformación que se denomina ALGORITMO y que suele ser de tipo
matemático. Ejemplo: suponer que el algoritmo de transformación a utilizar va a
ser si de dividir 11 al valor de la CLAVE, se toma el RESTO de la división como
dirección de almacenamiento.

Pág: 73
Sistemas de Computación I
Unidad III

Dirección de Claves ALGORITMO


Almacenamiento
1 12 DATOS REGISTRO A
2 12 11
3 1 1
4 15 DATOS REGISTRO B 15 11
5 27 DATOS REGISTRO C 4 1
6 28 DATOS REGISTRO D
7
8
9 86 DATOS REGISTRO F 86 11
10 9 7
11
12

27 11 59 11
59 DATOS REGISTRO E 5 2 4 5
ZONA
DE SINONIMOS

ACLARACIONES:

- La secuencia física y la lógica no coinciden.


- Puede ocurrir que registros con distinto número de CLAVE obtengan la misma
dirección de almacenamiento. Si ocurre esto se produce un SINONIMO o una
COLISIÓN. Es el caso de la CLAVE 59 y 15. Obtienen la misma dirección 4. El
registro 59 se almacena en otra parte del fichero (generalmente la última) que está
destinada a SINONIMOS.

VENTAJAS DESVENTAJAS
Es posible el acceso inmediato a los registros Se requieren recursos de hardware un poco
para consulta y actualización. más caros que para los archivos secuenciales

No es necesario ordenar el fichero. Deja muchos huecos dentro del fichero


debido a que las posiciones de
almacenamiento no son contiguas.

Las operaciones de A. B. Y M se realizan de Implica un desaprovechamiento del


forma inmediata. hardware.

Pág: 74
Sistemas de Computación I
Unidad III
ORGANIZACIÓN SECUENCIAL INDEXADA:

Este tipo de organización aprovecha la mejor de la organización secuencial


(tratamiento de grandes volúmenes de información) y la mejor de la organización directa
(acceso rápido y directo a registros).
En este tipo de ficheros, hay dos partes fundamentales:
1- archivos de datos como tal
2- archivos de índices (cada registro contiene la CLAVE del registro y una
dirección de almacenamiento)

Archivo Archivo
Índice de datos
Clave Dirección Dirección Clave Datos del Archivo
AB 1021 991 BD xxxxxxxxxxxxxxx
AC 1022 1014 BC xxxxxxxxxxxxxxx
AD 1018 1018 AD xxxxxxxxxxxxxxx
BC 1014 1021 AB xxxxxxxxxxxxxxx
BD 991 1022 AC xxxxxxxxxxxxxxx

La BUSQUEDA se realiza ingresando la CLAVE.


Se rastrea secuencialmente el archivo de índices hasta encontrar la CLAVE buscada.
Se localiza la dirección y se accede al archivo de datos directamente según la dirección.
Ejemplo: búsqueda de un NÚMERO de TELÉFONO en una guía telefónica.

CARACTERÍSTICAS: Los índices ocupan espacio extra, pero proporcionan un


método más rápido de localizar los registros, aún así son más lentos que los archivos
directos. En estos archivos se puede acceder en forma secuencial directa.

Pág: 75
Sistemas de Computación I
Unidad III
Bases de Datos

Introducción

Las bases de datos relacionales, se empezaron a usar cuando existió la necesidad de


crear un enlace entre datos de distintas bases, ya fuere por la necesidad de disminuir el
espacio que ocupasen dos bases de datos con relación entre ellas o bien por la necesaria
relación de datos entre dichas bases.
Para hacerlo más fácil, haremos una comparación muy sencilla, supongamos una
tienda de productos de alimentación, en el momento en que los ordenadores entraron a
formar parte de dichos comercios, toda la información se fue guardando en dichos
ordenadores, y entonces tenemos por ejemplo productos que vendemos al público y a su
vez tenemos proveedores que nos venden a nosotros.
Dado lo anterior tenemos por ejemplo 40 o 50 o incluso más productos que vienen
de un mismo proveedor, por lo que en realidad ya existe una clara relación entre los
productos y el proveedor que los vende, pero como hacemos esta relación efectiva en el
ordenador, pues tenemos que tener en cuenta que las bases de datos de los productos y de
los proveedores son distintas, y si por necesidad quisiéramos saber todos los productos de
un mismo proveedor, tendríamos que ir mirando ficha a ficha cada producto para ver quien
es el proveedor, en éste supuesto es donde entran las bases de datos relaciónales.
Aunque el campo principal de actuación y utilidad de la bases de datos relacionales
es la gestión, también podríamos si fuera necesario adaptarlo a nuestras propias
necesidades.

Las Bases de Datos

En las Bases de Datos la información se almacena en campos, o sea, podemos


almacenar El nombre y el Apellido de las personas de modo separado, de esta forma
podemos sacar del fichero todos los nombres o todos los apellidos, tanto de forma separada
como de forma conjunta.
Normalmente el número de campos que podemos tener en una base varía según las
necesidades que tengamos en cuanto a separación de datos, de forma que después podamos
sacar la información de forma ordenada y separada, aunque el resto de la información sigue
almacenada y guardada en la base de datos.
Aunque en realidad hemos de tener en cuenta, que una base de datos, tal y como la
conocemos, no es solo el fichero en donde guardamos los datos, si no que en dicho fichero
se encuentra la estructura de los datos, o sea, para saber que longitud tiene cada campo,
debemos saber como se llama el campo y que longitud en caracteres tiene, así como el tipo
de datos que almacenamos en dicho campo, por que podemos guardar desde letras a
números o incluso otros datos más sofisticados, dependiendo de la estructura de la base y
del sistema que tengamos para saber cual es dicha estructura.
En realidad aparte de los datos en si mismo que son almacenados en el archivo,
también tenemos una serie de datos, en los cuales se informa del tipo de campo, los campos
y la longitud de cada campo, es lo que podremos llamar Gestor de datos, dicho gestor nos
permite saber que cada registro (un registro es una suma de campos, por ejemplo tenemos a
José Antonio LOPEZ, José Antonio lo guardamos en el campo Nombre y LOPEZ en el

Pág: 76
Sistemas de Computación I
Unidad III
campo Apellidos, cada registro es cada persona que almacenamos en la base, o sea una
persona es un registro y cada registro está constituido por los campos Nombre y Apellido.
Con el gestor sabemos la longitud de cada campo y el tipo de dato que contiene.
En lenguajes como Visual Basic o Access normalmente cuando hablemos de base
de datos, el fichero que contiene los datos y el gestor, actualmente se les denomina Tabla,
lo único que cambia es que en un mismo fichero podremos almacenar varias tablas, o sea
podremos tener un solo fichero y dentro de éste podremos tener varias bases de datos
(proveedores, productos, clientes, etc..) separados en tablas, está es la ventaja que
actualmente hay con respecto a otros lenguajes estructurados o no visuales, que obligaba a
tener un fichero por cada base de datos, o sea que tendríamos que tener un fichero para los
proveedores, otro para los productos y así tantos como bases teníamos.
Aunque pudiera dar a pensar que se pueden alterar los datos teniendo en un mismo
fichero varias tablas, en realidad están separadas, aunque estén en un mismo fichero, cada
tabla está delimitada y no existe la posibilidad que se pudieran mezclar, este es un problema
por el cual no hay que preocuparse.

El diseño

El diseño de las bases de datos para relacionar datos, es muy importante, pero
debemos tener en cuenta que quizás está posibilidad no siempre la tengamos a mano, o sea,
es posible que se nos encargue realizar un programa para un comercio que ya ha tenido un
programa, por lo que vamos a trabajar con datos de bases ya creadas y por lo tanto
tendremos que usar bases de otras personas que quizás no hayan pensado en relacionar
dichas bases.
Por ejemplo, usando los comercios, para relacionar los proveedores con lo
productos tendremos que tener en la base de datos de proveedores un campo que coincida
con otro campo con el mismo nombre en la base de dato de productos.
De ésta forma cuando sacamos un producto de la base de datos(tabla) de los
productos, buscamos en el campo de la base donde guardamos el código del proveedor y
luego buscamos en la base de datos(tabla) de proveedores dicho código, con esto
realizamos el enlace entre bases de datos de distinto tipo y de distinto formato.
Recuerde siempre que tanto si dispone de la posibilidad de crear las bases de
datos(tablas) nuevas o debe usar unas ya existentes, deberá crear la relación entre dichas
bases(tablas) mediante un campo que las relacione.

Los Campos Clave

Ya vimos la necesidad de crear la relación entre distintas bases de datos. Para dicha
relación hemos creado un campo común en ambas bases de datos(tablas), dicho campo es
en realidad el campo clave, o sea el campo que relaciona una base con otra.
Pero debemos tener en cuenta que podremos tener tantos campos claves como
queramos, o sea que podremos tener relación entre distintas bases(tablas).
Un ejemplo claro es un producto que además de tener el campo clave para
identificar al proveedor que lo suministra, además tendremos otro campo clave que
identifique las características técnicas de dicho producto.

Pág: 77
Sistemas de Computación I
Unidad III
Ahora surge la principal pregunta por que tener distintas bases(tablas), podemos
poner muchos campos y almacenar en ellos los datos, y así ahorrarnos trabajo y enlace
entre bases(tabla).
Para esto hay una sencilla respuesta, observe atentamente éste ejemplo.
Tenemos unos productos:
001 del proveedor DIAZ LOPEZ IGLESIAS S.A. y características X109, Y898,
Z9289, V9989
002 del proveedor DIAZ LOPEZ IGLESIAS S.A. y características X109, Y898,
Z9289, V9989
003 del proveedor LOPEZ LOPE IGLESIAS S.A. y características A109, B898,
C9289, D9989
Con esto vemos que en dos productos tenemos repetidos al proveedor y las
características del producto, o sea que desperdiciamos memoria, supongamos que en vez de
2 tenemos 400 productos que se repiten en el proveedor y las características del producto,
como el ancho de la caja en que están embalados, para esto hacemos la relación y entonces
tenemos:
001 del proveedor PR01 y características CA01
002 del proveedor PR01 y características CA01
003 del proveedor PR02 y características CA02
y tendríamos las bases de datos de los proveedores:
PR01 DIAZ LOPEZ IGLESIAS S.A.
PR02 LOPEZ LOPE IGLESIAS S.A.
y tendríamos la base de características:
CA01 X109, Y898, Z9289, V9989
CA02 A109, B898, C9289, D9989
Con esto hemos conseguido un importante ahorro en espacio del fichero por que en
vez de tener que escribir todo el nombre del proveedor, solo ponemos el código o sea PR01
o PR02 y el código de las características CA01 o CA02,el ahorro está en el espacio,
mientras que para poner el código solo hemos necesita 4 caracteres para poner PR01 o
PR02, si usamos el nombre necesitaríamos por lo menos 30 caracteres para poder poner
todo el nombre del proveedor y lo mismo sucede con las características, el ahorro está en
dicho espacio desperdiciado en el fichero y por lo tanto el fichero será más grande y por lo
tanto su uso más lento.
Es entonces cuando vemos la necesidad de usar bases de datos(tablas) relaciónales.

Creación de Tablas

Aunque tipos de datos hay de varias clases y formas de clasificarlos hay muchas, a
la hora de crear una tabla, la mayoría de lo sistemas utilizan la misma forma, aunque no
podemos asegurar que sea así, daremos por afirmativo que así es.
En consecuencia el sistema de creación de una base de datos(tabla), suele ser:
Se nos pedirá el nombre del campo que queremos crear.
Se nos pedirá el tipo de dato que almacenara dicho campo, normalmente puede ser
String, Numérico, Boolean, Decimal y otros, que dependerá del gestor con el cual creamos
la tabla, así mismo también se nos dará la posibilidad de definir los decimales para los
campos numéricos y decidir el índice.

Pág: 78
Sistemas de Computación I
Unidad III
El índice esto es un punto muy importante a la hora de crear una base de datos
(tabla) con índices, un índice no es más que el orden que establecemos para dicho campo,
con esto conseguimos aumentar la velocidad de búsqueda a la hora de encontrar a un
determinado registro, supongamos que hemos hecho una base de datos(tabla) para
almacenar direcciones de amigos, entonces supongamos que tenemos la dirección de 300
amigos y queremos buscar a Pepe TOLO, si no tenemos índices en la base de datos,
tendríamos que ir registro a registro y comprobar cada apellido si coincide con el que
buscamos, pero si está ordenada(indexada) para buscar a TOLO solo tendremos que ir a los
que empiezan por T y saltando las demás letras A,B,C,... hasta la T, o sea que no hemos
tenido que comprobar los apellidos que hay entre la A y la T, imaginaos la velocidad que
hemos ahorrado en 300 amigos que tenemos, pues imaginaros una empresa con 50.000
clientes, la velocidad que se ahorran en buscar a un cliente, imaginaros por un momento
que pedís el teléfono de un cliente que necesitas urgentemente y que al solicitarlo a vuestra
secretaria, ésta dice, la semana que viene se lo doy.
Pues en realidad el ejemplo que os he dado es el ahorro de velocidad que
conseguimos, cuantos más datos tengamos, más efectivo será el sistema de ahorro en
tiempo.
En la actualidad, como ya hemos mencionado, podremos tener varias tablas en un
mismo fichero y como consecuencia podremos crear tantas tablas como queramos.
Recuerde que si va a relacionar las tablas, deberá crear los campos claves para
establecer la relación entre dichas tablas.

La Relación Funcional

La dependencia funcional en una base de datos, es aquella que determina la relación


que hay entre las bases de datos que usan de modo conjunto una relación de datos.
Para averiguar la dependencia existente entre bases de datos, debemos analizar las
propiedades de los campos, para así averiguar cual es la relación existente entre las bases y
que tipo de relación hay entre ellas.
Debemos tener en cuenta que cuando vayamos a realizar una relación entre bases,
aquellos campos que hemos seleccionado para que sean los campos clave, que serán los que
realicen el enlace entre bases, deben ser del mismos tipo, por ejemplo que usemos tipos
numéricos, los dos campos en las bases deben ser numéricos, de éste modo no tendremos
que realizar funciones que conviertan los tipos.
EJEMPLO:
Creamos dos bases de datos, en las cual vamos a guardar en una de ellas los datos
de los clientes, el nombre, la dirección y el DNI, y en otra guardaremos a la hora que nos
han hecho el pedido.
En enlace entre ellas, será evidentemente por el número del DNI.
Al crear las bases será así:
Clientes.dbf
Campo Tipo Longitud
Nombre Carácter 40
Dirección Carácter 40
DNI Numérico 10
Pedidos.dbf
Hora Carácter 5

Pág: 79
Sistemas de Computación I
Unidad III
DNI Numérico 10
Como se puede observar, el campo clave es DNI, y en ambas bases de datos debe
ser del mismo tipo, en éste caso es numérico.
Si por cualquier motivo, el tipo debiera de ser carácter u otro distinto, en la otra base
deberá de ser del mismo tipo.

Pág: 80
Sistemas de Computación I
Unidad III

Las Bases mas Usadas

En el mercado podemos encontrar una gran variedad de bases de datos, de distintos


formatos, tipos, usos, gusto, etc.. pero evidentemente existen en dicho mercado una
tendencia de uso hacia ciertas marcas, por así decirlo, de productos que integran totalmente
o en parte a un determinado tipo de base de datos, lo que nos obliga de forma indirecta a
conocer el funcionamiento de dichas bases de datos, o mejor dicho de la forma de usarla o
la gestión de dichas bases.
El mercado encontraremos 3 tendencias mas acuciadas, aunque como he dicho
existen muchos tipos,
- La dbf, de DBASE(c) o Clipper que prácticamente todos conoceremos.
- La Mdb de Microsoft(c), que es la que utiliza el Access(c) y otros productos de
dicha compañía.
- La Oracle, es una de las mas usadas mundialmente.
Y actualmente esta haciendo aparición la denominada Interbase y la DB2, que
aunque actualmente no sean muy usadas, se podrían convertir en otro estándar en la gestión
de datos.
Hemos de tener en cuenta que el uso de uno u otro tipo esta directamente ligado con
las tendencias del mercado, y es el mismo mercado con su demanda quien determina cual
es el que ostenta la supremacía durante un tiempo.
Aunque su esquema técnico no hace falta conocer, si es necesario reconocer el tipo
de base por si nos fuera necesaria su gestión.
Existe otro tipo que es la db, conocida como paradox(c) pero es igual a la dbf, no
presenta ningún inconveniente.
Para usar la DBF es necesario tener una de las versiones de DBASE(c), no es
imprescindible pero si aconsejable tener algún gestor de datos que os permita manejar este
tipo de bases, en el mercado hay muchos y gratuitos.
La MDB, Microsoft(c), suele ofrecer productos que las manejan.
La más difícil es la Oracle, este tipo de base de datos, es difícil de manejar a no ser
que se adquieran productos especializados, pero si se busca es posible encontrar algo.

El uso para la empresa

Aunque a simple vista podamos creer que no es necesario o funcional para una
empresa, un tipo u otro de base de datos, la elección esta directamente relacionado con la
productividad que vamos a tener usando la gestión de la base que hayamos escogido.
El motivo en que se fundamenta una elección es el siguiente:
Supongamos que nuestras bases no son relacionales, entonces tenemos una base
para clientes, otros proveedores, otra factura, etc.. para la gestión de cada una de las áreas
de la empresa y seria de forma independiente y no relacionada, esto traería las siguientes
consecuencias:

Si un cliente viene a comprar a la tienda, y le tenemos que hacer la factura,


conforme metamos los productos que ha comprado y las cantidades que se ha llevado,
también en un papel aparte tendríamos que apuntar cuales son esos productos y las
cantidades, pues al no estar relacionadas las facturas con los stocks de los productos en el

Pág: 81
Sistemas de Computación I
Unidad III
almacén, tendríamos que ir después a la base de productos y dar de baja lo que hemos
vendido para poder controlar las cantidades que hay en el almacén.

Al estar relacionadas las facturas con los productos, cuando realizáramos la factura,
el programa de forma automática daría de baja las cantidades de cada producto del
almacén, sin percatarnos de ello.

Como este ejemplo, se puede aplicar al resto de áreas de la empresa, los pedidos, las
llegadas de la mercancía, etc..

Esto conlleva a un aumento de la productividad, superior al 50%, en el tiempo y en


la fiabilidad, no tenemos que acordarnos ni de apuntar, imaginemos que hacemos 10
facturas por minuto, ¿Cómo podríamos controlar eso?.

Para la elección de uno u otro tipo, hemos visto que es mas que evidente que debe
ser necesariamente una base de datos relacional, indistintamente de que las necesidades de
nuestra empresa actualmente no las necesite, por que es más fácil convertir las bases de
datos simplemente con un campo nuevo que sea el relacional, que tener que cambiar el
sistema completo por que el que compramos no nos lo permite.

Antes de seleccionar uno u otro tipo no piense en el tiempo actual, ni para el


próximo año, piense en una vida útil de esa gestión de datos de como mínimo 3 años y de la
explosión comercial que puede tener la empresa en dicho tiempo, no mire el precio que
tenga uno u otro sistema, a veces lo mas barato no siempre es lo mejor, tampoco es que se
compre la mejor y que dentro de un año no cumpla las expectativas que se tenían pensadas.

Antes de realizar una compra o contratación de servicios, vea tipos y características


que le ofrecen y sobre todo el soporte técnico que le ofrezcan, pues a pesar de tener
personal especializado, nosotros incluso, a veces hay errores de fabrica que solo el
fabricante o sus distribuidores podrían solucionar y entonces entraría en efecto el servicio
que tuviera el distribuidor que nos suministro el producto, no podemos tener la empresa
parada 5 o 6 días por que no hay nadie en el proveedor que sepa arreglar nuestro problema.

Pág: 82
Sistemas de Computación I
Unidad III
BASES DE DATOS

Las actividades del procesamiento de datos, por costumbre, han sido agrupada por
departamento y por actividades. Muchas de las primeras computadoras fueron instaladas
para procesar unos cuantos trabajos de gran volumen. Por ejemplo preparar las facturas de
los clientes y mantener el archivo de cuentas por cobrar, implicaba que cada aplicación por
separado tenia su propio archivo en forma de organización directa, secuencial o secuencial
indexada. Los registros de cada archivo estaba organizados por un campo clave. Cada
aplicación tenia también sus propios datos de entrada y sus propios programas de proceso
para actualizar archivos y suministrar información. Cuando el campo clave no era
importante para la información que se necesitaba, se tenia que rastrear el archivo en su
totalidad. Si se creaban nuevos archivos, muchas veces algunos datos se duplicaban ya que
eran necesarios para distintas aplicaciones. Cada aplicación dentro del mismo sistema,
junto con sus archivos correspondientes, se creaban conforme fueran necesitados y dadas
las necesidades totales de información de la organización.
Esta forma de manejar la información creo muchos problemas como ser:

 REDUNDANCIA DE DATOS: los mismos campos de datos básicos se incluyen


en muchos archivos diferentes. Puede ser muy alto el costo de introducir y
almacenar los mismos datos en archivos diferentes.-

 PROBLEMAS DE ACTUALIZACIÓN: Cuando los datos sufren cambios, cada


archivo debe ser actualizado. Esto puede provocar confusión cuando un archivo
es actualizado mientras otro no los es y naturalmente el costo de correr distintos
programas de actualización puede ser alto.-

 FALTA DE INDEPENDENCIA: (programas<->datos), los programas usados


con las aplicaciones orientadas a los archivos normalmente contienen enunciados
(picture, format, data, etc.) que definen precisamente cada dato que va a ser
procesado. Por lo tanto, cuando existe necesidad de modificar, borrar o sustituir
el formato de los datos, el programa de aplicaciones también debe ser cambiado.
De igual forma, una revisión significativa en un programa puede requerir la
reestructuración de un archivo de datos que sea procesado por este programa.-

CONCEPTO DE BASE DE DATOS

Insatisfechos con los problemas ocasionados por el método de archivo orientados a


atender las necesidades de cada aplicación, algunos diseñadores de sistemas empezaron a
buscar, a finales de la década del 60, diversas formas de consolidar las actividades
utilizando un método de base de datos. Los problemas antes mencionado, para la escritura o
modificación de los programas de gestión de archivos desaparecen o disminuyen en las
aplicaciones en que utilicen bases de datos.
Cuando hablamos de bases de datos (Data Base, DB) hacemos referencia a un
volumen considerable de información, es decir, tener en un solo lugar de residencia mucha
información referente a un mismo tema o a temas diferentes pero entre sí vinculados. Existe

Pág: 83
Sistemas de Computación I
Unidad III
otra característica importante y es que generalmente esa información suele ser requerida en
forma inmediata.
Aunque existen diferencias de opinión sobre lo que es un sistema de bases de datos
podemos definirlo como:

“ES UN ARCHIVO DE DATOS COMPARTIDO EN FORMA CENTRALIZADA

E INTEGRADA QUE FACILITA LA INDEPENDENCIA DE LOS PROGRAMAS Y DE

LOS DATOS”

Esta base de datos de localiza en un dispositivo de acceso directo, las transacciones


se introducen al sistema una sola vez, los datos son neutrales respecto a cualquier programa
y están al alcance de todas las aplicaciones y los usuarios autorizados de la DB.-
Todos los registros de la DB que pueden afectar una transacción se actualizan en el
instante en que entre la transacción al sistema. El concepto de DB requiere que los datos de
entrada sean definidos en común, organizados y presentados en forma consistente en toda la
organización.-

El ADMINISTRADOR DE BASES DE DATOS (Data Base Administrator, DBA)


es la persona responsable del diseño, desarrollo, normalización, mantenimiento y control de
la utilización de la DB. Un DBA establece y controla la definición de los datos, es el
responsable de determinar las relaciones entre los elementos de los datos y diseñar el
sistema de seguridad que impida el uso de la DB sin autorización.-

SISTEMA DE ADMINISTRACIÓN DE BASES DE DATOS (Data Base


Management System, DBMS) Dado que generalmente las relaciones existentes entre los
datos de una DB son complejas, se requiere programas de una computadora para almacenar
y consultar el contenido de estos datos almacenados en la DB, el conjunto de estos
programas de almacenamiento / consultas se los llama SISTEMA ADMINISTRADORES
DE BASES DE DATOS y es un paquete especial de software destinado al manejo de esos
datos permitiendo un fácil acceso a ellos. Sirven como interfaces entre el usuario y las DB.-

Un DBMS puede organizar, procesar y presentar los datos seleccionados de una


DB. esta capacidad permite a quienes toman decisiones, rastrear, probar, y consultar el
contenido de una DB para extraer las respuestas a las preguntas no recurrentes y no
previstas en los informes regulares. Los DBMS administran los datos almacenados y
renueven las partes necesarias de la DB común para responder a las preguntas de quienes
no sean programadores.-
Es un sistema orientado a archivos, los usuarios que necesitan información especial,
comunican esta necesidad a un programador que escribe uno o más programas para extraer
los datos y preparar la información. La disponibilidad de un DBMS es que ofrece a los
usuarios una alternativa mucho mas rápida de comunicación.-

Pág: 84
Sistemas de Computación I
Unidad III
Además de tener acceso directo a los datos de una DB propia, una persona que
necesite tomar decisiones también puede tener en su DB información que puede ser
fácilmente accesible por medio del DBMS.-

ELEMENTOS DE UN SISTEMA DE ADMINISTRACIÓN DE BASES DE DATOS

 PROGRAMAS: (escritos en uno de los lenguajes de programación) que


permiten elaborar las Bases de Datos (creación. actualización, búsqueda, etc.).-

 LENGUAJE DDL: (Data Definition Lenguage, Lenguaje para la Definición de


Datos) permite definir las estructuras de cada una de las bases de datos. Es
indispensable que tanto el programador como el DBA estén capacitados para
describir cualquier información con precisión especificando sus estructuras. Para
esto recurre a lenguajes DDL que permite crear las descripciones lógicas de la
DB.-

 LENGUAJE DML: (Data Manipulation Lenguage, Lenguaje de Manipulación


de Datos) Permite utilizar y mantener cada DB definida. La manipulación de
datos significa el uso de los datos para elaborar informes, responder peticiones,
etc.- Por lo general existen dos maneras de manipular los datos en una DBMS:
 1 - Mediante un recurso de consulta / actualización que consiste en
programas adquiridos como parte del DBMS y que permiten al usuario
extraer información y actualizar registros con facilidad.-
 2 - El lenguaje DML permite a los programadores de una organización,
crear nuevos programas de aplicaciones que utilicen las DB.-

OBJETO DE UN LENGUAJE PARA BASE DE DATOS

Todo lenguaje para la descripción lógica de los datos debe cumplir las siguientes
funciones:
 Identificar los tipos de subdivisiones de los datos, como por ejemplo: registros,
campos, etc.-
 Asignar un nombre exclusivo a cada división de datos.-
 Especificar la secuencia de los campos.-
 Detallar como se relacionan los datos para formar las estructuras.-
 Definir la longitud de cada uno de los campos.-
 Especificar los códigos de seguridad para prevenir lecturas o modificaciones no
autorizadas.-

TÉCNICAS DE ESTRUCTURACIÓN DE BASES DE DATOS

Este trabajo implica la organización de los datos de modo que los usuarios tengan acceso a
ellos, requiriendo eficiencia y seguridad de la DB.
Existen dos niveles de descripción de datos:

Pág: 85
Sistemas de Computación I
Unidad III
 - LA DESCRIPCIÓN FÍSICA: de los datos, es la descripción de la forma en
que los datos están almacenados realmente en el dispositivo. Es decir una
descripción del lugar en que las unidades de datos se localizan físicamente.-
 - LA DESCRIPCIÓN LÓGICA (conceptual) de los datos, señala las relaciones
lógicas existentes entre los datos. Para este propósito se utiliza el lenguaje DDL.
El DBMS puede emplear una de las siguientes técnicas de estructuración lógica
durante las operaciones de almacenamiento, consulta y acceso.-

ALGUNOS DISEÑOS DE ESTRUCTURAS DE BASES DE DATOS

 Estructura jerárquica o de árbol: En este enfoque lógico, las unidades de datos


se estructuran en niveles múltiples que representan gráficamente un “árbol
invertido” con la raíz en la parte superior y las ramas hacia la parte inferior. En
una estructura jerárquica existe una relación de superior a subordinados. Todo
árbol esta compuesto por una jerarquía de elementos denominados NUDOS. El
Nivel mas alto de la jerarquía tiene un solo nudo que se llama RAÍZ. Debajo del
nudo raíz están los elementos subordinados. Con excepción de la raíz todo nudo
esta vinculado a otro nudo de nivel mas alto al que llamamos PADRE. Ningún
elemento puede tener mas de un padre y si puede tener uno mas elementos
relacionados hacia abajo llamados HIJOS. Las ramas de la estructura de un árbol
no se conectan entre sí-

CLIENTE

CLIENTE CALIF. FACTURA


DE
CRÉDITO

PRODUCTOS CANT.
ESPECIF. TOT.
DE FACT.

CIUDAD
ESTADO CODIGO
POSTAL

NUMERO DE PRECIO
PRODUCTO CANTIDAD UNITARIO
DESPACHADA

Pág: 86
Sistemas de Computación I
Unidad III

ESTRUCTURA DE RED O PLEX

Si en una relación de datos un hijo tiene MAS DE UN PADRE la relación no puede


ya ser descripta por medio de una estructura jerárquica, se la describe, en cambio, por
medio de una estructura de red.-
Esta estructura permite l conexión de los nudos en forma MULTIDIRECCIONAL
(cualquier componente puede vincularse con cualquier otro) pero, al igual que el caso
anterior, puede ser graficada de tal manera que los hijos aparezcan debajo de los padres.
El software de administración de datos permite la extracción de la información
necesaria de una estructura de este tipo comenzando en cualquier registro del archivo.-

ESTRUCTURAS RELACIÓNALES

A medida que las vinculaciones lógicas tienden a multiplicarse con el agregado de


nuevas aplicaciones, es necesario recurrir a nuevas técnicas de estructuración de bases de
datos para poder responder a nuevas formas de interrogación utilizando los datos
almacenados. Se debe procurar una manera de describir los datos que:

 - Pueda ser entendida por los usuarios que no tienen preparación previa como
programación.-
 - Que haga posible ampliar la base de datos sin modificación de la estructura
lógica existente y, por lo tanto, sin modificación de los programas de aplicación.
 Y por ultimo, que permita la máxima flexibilidad en la formalicen de
interrogantes de forma no prevista o espontánea en las terminales.

Pág: 87
Sistemas de Computación I
Unidad III
Como vemos, las representaciones lógicas basadas en árboles o redes muchas veces
inhiben el cambio que el crecimiento de la DB exige.
Una de las maneras más naturales de representar datos es la que se basa en
TABLAS BIDIMENCIONALES y cualquiera de las estructuras vistas anteriormente puede
ser representada en forma de tablas. Los datos se almacenan como “relaciones” en esas
tablas y estas deberán organizarse de forma tal que no se pierda ninguna de las relaciones
existentes entre datos.
Las tablas tienen las siguientes características:

 Cada entrada de la tabla representa un ítem de datos (campo)


 Son homogéneas por columnas, es decir, todos los ítem de una misma columna
son de la misma clase de datos.-
 Cada columna tiene nombre propio.-
 Tanto las filas y las columnas pueden ser consideradas en cualquier secuencia y
en cualquier momento, sin afectar con ello ni el contenido ni la función de la
tabla.-

Ejemplo: en un archivo de empleados podemos crear distintas tablas acorde a las relaciones
existentes entre los datos:

NRO. SALARIO DIRECCIÓN LOCALIDAD COD.


EMPLEADO POSTAL
85.500.- 9 de Julio 478 SANTA FE
53702 120.000.- San Martín ROSARIO 3000
53805 93.000.- 1279 CÓRDOBA 2000
53809 Belgrano 999 5000

NRO DE NOMBRE DE DIRECCIÓN EDAD


EMPLEADO EMPLEADO
9 de Julio 478 25
53702 Feresin, Juan San Martín 43
53805 Fabri, Luis 1279 28
53809 Pérez, Hugo Belgrano 999
Por todo lo visto podemos decir que las bases de datos tienen las siguientes
ventajas:

 FACILIDAD DE USO Y REPRESENTACIÓN DE LAS RELACIONES:


Una de las maneras más fáciles de representar los datos es por medio de
estructuras de DB ya que comprende la correcta selección de los datos que se
incluyen y sus relaciones. Permitiendo facilidad de manejo e interpretación.-

 SEGURIDAD DE LOS DATOS: Los controles de seguridad son fáciles de


implementar y los controles de acceso son manejados por las DBA. Los usuarios
acceden exclusivamente a aquella información que necesitan y para lo cual están

Pág: 88
Sistemas de Computación I
Unidad III
autorizados. EL sistema de seguridad es parte del software de base del sistema de
DB.-

 REDUNDANCIA MÍNIMA DE LOS DATOS.-

 INDEPENDENCIA DE LOS DATOS: Pueden necesitarse menos programas


de aplicación específicos ya que los usuarios pueden tener acceso directo a los
datos.-

 INTEGRACIÓN DE LOS DATOS: Cuando una misma base de datos es


accedida desde distintos usuarios, las DB evitan que se produzcan alteraciones no
previstas de la información para soportar las tareas no previstas de las
condiciones cambiantes. También, un sistema de DB, brinda respuestas en
tiempo real en caso de que el proceso requiera.-

 CLARIDAD: Las representaciones lógicas basadas en estructuras de DB pueden


abarcar la mayor parte de las actividades interrelacionadas de un organismo y
ofrecen una excelente solución para aquellos sistemas de diseño completo.-

Información extraída de http://es.wikipedia.org/wiki/Base_de_datos

Base de datos
Una base de datos es un conjunto de datos que pertenecen al mismo contexto
almacenados sistemáticamente para su uso posterior. En este sentido, una biblioteca puede
considerarse una base de datos compuesta en su mayoría por documentos y textos impresos
en papel e indexados para su consulta.
En la actualidad, y gracias al desarrollo tecnológico de campos como la informática y
la electrónica, la mayoría de las bases de datos tienen formato electrónico, que ofrece un
amplio rango de soluciones al problema de almacenar datos.
En informática existen los sistemas gestores de bases de datos (SGBD), que permiten
almacenar y posteriormente acceder a los datos de forma rápida y estructurada. Las
propiedades de los sistemas gestores de bases de datos se estudian en informática.
Las aplicaciones más usuales son para la gestión de empresas e instituciones públicas.
También son ampliamente utilizadas en entornos científicos con el objeto de almacenar la
información experimental.
Aunque las bases de datos pueden contener muchos tipos de datos, algunos de ellos se
encuentran protegidos por las leyes de varios países. Por ejemplo en España, los datos
personales se encuentran protegidos por la Ley Orgánica de Protección de Datos de
Carácter Personal (LOPD).
Tipos de bases de datos
Las bases de datos pueden clasificarse de varias maneras, de acuerdo al criterio
elegido para su clasificación:

Pág: 89
Sistemas de Computación I
Unidad III
Según la variabilidad de los datos almacenados

A. Bases de datos estáticas


Éstas son bases de datos de sólo lectura, utilizadas primordialmente para almacenar
datos históricos que posteriormente se pueden utilizar para estudiar el comportamiento de
un conjunto de datos a través del tiempo, realizar proyecciones y tomar decisiones.

B. Bases de datos dinámicas


Éstas son bases de datos donde la información almacenada se modifica con el tiempo,
permitiendo operaciones como actualización y adición de datos, además de las operaciones
fundamentales de consulta. Un ejemplo de esto puede ser la base de datos utilizada en un
sistema de información de una tienda de abarrotes, una farmacia, un videoclub, etc.

Según el contenido

C. Bases de datos bibliográficas


Solo contienen un subrogante (representante) de la fuente primaria, que permite
localizarla. Un registro típico de una base de datos bibliográfica contiene información sobre
el autor, fecha de publicación, editorial, título, edición, de una determinada publicación,
etc. Puede contener un resumen o extracto de la publicación original, pero nunca el texto
completo, porque sino estaríamos en presencia de una base de datos a texto completo (o de
fuentes primarias)

D. Bases de datos numéricas


Como su nombre lo indica, el contenido son cifras o números. Por ejemplo, una
colección de resultados de análisis de laboratorio.

E. Bases de datos de texto completo


Almacenan las fuentes primarias, como por ejemplo, todo el contenido de todas las
ediciones de una colección de revistas científicas.

F. Directorios
Un ejemplo son las guías telefónicas en formato electrónico.

G. Banco de imágenes, audio, video, multimedia, etc.


Como su nombre lo indica, almacenan información en distintos formatos.

H. Bases de datos o "bibliotecas" de información Biológica


Son bases de datos que almacenan diferentes tipos de información proveniente de las
ciencias de la vida o médicas. Se pueden considerar en varios subtipos:

 Aquellas que almacenan secuencias de nucleótidos o proteínas.


 Las bases de datos de rutas metabólicas

Pág: 90
Sistemas de Computación I
Unidad III
 Bases de datos de estructura, comprende los registros de datos experimentales sobre
estructuras 3D de biomoléculas
 Bases de datos clínicas
 Bases de datos bibliográficas (biológicas)

Modelos de bases de datos


Además de la clasificación por la función de las bases de datos, éstas también se
pueden clasificar de acuerdo a su modelo de administración de datos.
Un modelo de datos es básicamente una "descripción" de algo conocido como
contenedor de datos (algo en donde se guarda la información), así como de los métodos
para almacenar y recuperar información de esos contenedores. Los modelos de datos no son
cosas físicas: son abstracciones que permiten la implementación de un sistema eficiente de
base de datos; por lo general se refieren a algoritmos, y conceptos matemáticos.
Algunos modelos con frecuencia utilizados en las bases de datos:

Bases de datos jerárquicas


Éstas son bases de datos que, como su nombre indica, almacenan su información en
una estructura jerárquica. En este modelo los datos se organizan en una forma similar a un
árbol (visto al revés), en donde un nodo padre de información puede tener varios hijos. El
nodo que no tiene padres es llamado raíz, y a los nodos que no tienen hijos se los conoce
como hojas.
Una de las principales limitaciones de este modelo es su incapacidad de representar
eficientemente la redundancia de datos.

Bases de datos de red


Éste es un modelo ligeramente distinto del jerárquico; su diferencia fundamental es la
modificación del concepto de nodo: se permite que un mismo nodo tenga varios padres
(posibilidad no permitida en el modelo jerárquico).
Fue una gran mejora con respecto al modelo jerárquico, ya que ofrecía una solución
eficiente al problema de redundancia de datos; pero, aun así, la dificultad que significa
administrar la información en una base de datos de red ha significado que sea un modelo
utilizado en su mayoría por programadores más que por usuarios finales.

Bases de datos relacionales


Modelo relacional

El modelo relacional para la gestión de una base de datos es un modelo de datos


basado en la lógica de predicado y en la teoría de conjuntos.
Este modelo considera la base de datos como una colección de relaciones. De manera
simple, una relación representa una tabla, en que cada fila representa una colección de

Pág: 91
Sistemas de Computación I
Unidad III
valores que describen una entidad del mundo real. Cada fila se denomina tupla o registro y
cada columna campo.
Entre las ventajas de este modelo están:
1- Garantiza herramientas para evitar la duplicidad de registros, a través de campos
claves o llaves.
2- Garantiza la integridad referencial: Asi al eliminar un registro elimina todos los
registros relacionados dependientes.
3- Favorece la normalización por ser más comprensible y aplicable.
Se utiliza a nivel conceptual

Éste es el modelo más utilizado en la actualidad para modelar problemas reales y


administrar datos dinámicamente. Tras ser postulados sus fundamentos en 1970 por Edgar
Frank Codd, de los laboratorios IBM en San José (California), no tardó en consolidarse
como un nuevo paradigma en los modelos de base de datos. Su idea fundamental es el uso
de "relaciones". Estas relaciones podrían considerarse en forma lógica como conjuntos de
datos llamados "tuplas". Pese a que ésta es la teoría de las bases de datos relacionales
creadas por Edgar Frank Codd, la mayoría de las veces se conceptualiza de una manera más
fácil de imaginar. Esto es pensando en cada relación como si fuese una tabla que está
compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las
columnas de una tabla).
En este modelo, el lugar y la forma en que se almacenen los datos no tienen
relevancia (a diferencia de otros modelos como el jerárquico y el de red). Esto tiene la
considerable ventaja de que es más fácil de entender y de utilizar para un usuario
esporádico de la base de datos. La información puede ser recuperada o almacenada
mediante "consultas" que ofrecen una amplia flexibilidad y poder para administrar la
información.
El lenguaje más habitual para construir las consultas a bases de datos relacionales es
SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar
implementado por los principales motores o sistemas de gestión de bases de datos
relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al que se le
conoce como normalización de una base de datos.
Durante los años '80 (1980-1989) la aparición de dBASE produjo una revolución en
los lenguajes de programación y sistemas de administración de datos. Aunque nunca debe
olvidarse que dBase no utilizaba SQL como lenguaje base para su gestión.

Bases de datos orientadas a objetos


Este modelo, bastante reciente, y propio de los modelos informáticos orientados a
objetos, trata de almacenar en la base de datos los objetos completos (estado y
comportamiento).
Una base de datos orientada a objetos es una base de datos que incorpora todos los
conceptos importantes del paradigma de objetos:

Pág: 92
Sistemas de Computación I
Unidad III
 Encapsulación - Propiedad que permite ocultar la información al resto de los
objetos, impidiendo así accesos incorrectos o conflictos.
 Herencia - Propiedad a través de la cual los objetos heredan comportamiento dentro
de una jerarquía de clases.
 Polimorfismo - Propiedad de una operación mediante la cual puede ser aplicada a
distintos tipos de objetos.

En bases de datos orientadas a objetos, los usuarios pueden definir operaciones sobre
los datos como parte de la definición de la base de datos. Una operación (llamada función)
se especifica en dos partes. La interfaz (o signatura) de una operación incluye el nombre de
la operación y los tipos de datos de sus argumentos (o parámetros). La implementación (o
método) de la operación se especifica separadamente y puede modificarse sin afectar la
interfaz. Los programas de aplicación de los usuarios pueden operar sobre los datos
invocando a dichas operaciones a través de sus nombres y argumentos, sea cual sea la
forma en la que se han implementado. Esto podría denominarse independencia entre
programas y operaciones.
Se está trabajando en SQL3, que es el estándar de SQL92 ampliado, que soportará los
nuevos conceptos orientados a objetos y mantendría compatibilidad con SQL92.

Bases de datos documentales


Permiten la indexación a texto completo, y en líneas generales realizar búsquedas más
potentes. Tesaurus es un sistema de índices optimizado para este tipo de bases de datos.

Base de datos deductivas


Un sistema de base de datos deductivas, es un sistema de base de datos pero con la
diferencia de que permite hacer deducciones a través de inferencias. Se basa principalmente
en reglas y hechos que son almacenados en la base de datos. También las bases de datos
deductivas son llamadas base de datos lógica, a raíz de que se basan en lógica matemática.

Gestión de bases de datos centralizada


El sistema funciona alrededor de un solo punto. Ejemplo: bancos, cadenas de hoteles,

Gestión de bases de datos distribuida


La base de datos está almacenada en varias computadoras conectadas en red. Surgen
debido a la existencia física de organismos descentralizados. Esto les da la capacidad de
unir las bases de datos de cada localidad y acceder así a distintas universidades, sucursales
de tiendas, etc.

Pág: 93

También podría gustarte