You are on page 1of 9

BASE DE DATOS

TEMA 2: ALMACENAMIENTO Y USO DE ARCHIVOS


1. ALMACENAMIENTO
Todos los programas informticos trabajan con datos e informaciones que deben guardarse en un medio fsico. El almacenamiento fsico que es el hecho de guardar los datos e informaciones en medios fsicos puede ser de tres tipos: Almacenamiento Primario: Cuando se guarda la informacin en medios a los que la unidad central de proceso (UCP) del ordenador pueda acceder directamente y por tanto mas rpidamente. Esos medios son la memoria principal del ordenador que es memoria de tipo RAM y la memoria cache, que son memorias pequeas en las que se copian los datos ms usados de la memoria principal para su acceso ms rpido. Almacenamiento Secundario: Cuando se guarda la informacin en medios ms lentos, pero con mayor capacidad, como las cintas y discos magnticos, o los discos pticos. Para acceder a sus datos la UCP (Unidad Central de Proceso) debe copiarlos primero en la memoria principal.

En el caso de los discos duros, suelen tener apilados varios discos, cada uno de los cuales tiene crculos concntricos llamados pistas y cada pista se encuentra dividida en partes llamadas estores. Se llama cilindro al conjunto de pistas de los discos que se pueden leer o gravar sin mover la cabeza de lectura y grabacin. (Cilindro: Conjunto de pistas de distintos discos) Almacenamiento Intermedio: Cuando se guarda la informacin en buffers. Los buffers son reas de memoria principal que se usan para transferir informaciones desde los soportes de almacenamiento secundario a ellos, o en sentido contrario. Adems desde el punto de vista de su organizacin lgica tenemos los siguientes conceptos: Campo: Es una agrupacin o conjunto de octetos que contiene informacin sobre un mismo concepto. Registro Lgico: Es un conjunto de campos que describen a un mismo ente lgico. Fichero o Archivo: Es un conjunto de registros lgicos referentes a un mismo asunto, tema o ente lgico. Registro Fsico o Bloque: Es el conjunto de registros lgicos que se transmiten de una sola vez entre los perifricos y la memoria o al revs. Es decir, es la unidad de transmisin por el canal. Volumen Multifichero: Es un soporte de informacin en cuyo interior hay varios ficheros, unos a continuacin de otros. Fichero o Archivo Multivolumen: Es un fichero o archivo tan grande que requiere varios volmenes o soportes para contenerlo, Ej.: Cinta Magntica. (Ente (Lgico): Referencia a un concepto comn, Ej. Empleados.)

Estos conceptos de usan en memorias externas al ordenador.

BASE DE DATOS

2. ARCHIVOS
Solo los archivos solo se pueden hacer cuatro operaciones bsicas que son las de consulta, insercin, modificacin y borrado. Para ello suele haber instrucciones que permiten al archivo abrirlo, leerlo, escribirlo, posicionarse en algunas de sus partes, detectar el fin de archivo y cerrar el archivo. Adems los archivos se pueden clasificar de varios modos. En cuanto a su funcin y utilidad se pueden mencionar los siguientes tipos: Archivos Maestros o Permanentes: Estos contienen informacin que la empresa necesita habitualmente, aunque pueda variar con el tiempo por ejemplo el maestro de personal, el de artculos etc. Archivos de transacciones o Movimientos: Se forman solo para recoger los movimientos con los que se quiere actualizar los archivos maestros. Ej.: Archivo de movimientos de personal. Archivos de Maniobra: Estos son de corta duracin, solo se usan para organizar los tratamientos y pasar informacin entre ellos. Al acabar el proceso y obtener los resultados deseados, estos archivos se eliminan. Archivos Histricos: Son de tipo permanente y en ellos se guarda informacin acumulada a lo largo del tiempo que se puede querer para referencia futura o para cosas como hacer estadsticas de diversos tipos.

En la creacin de los archivos es conveniente tener controles para asegurar la veracidad y consistencia de los datos. Ello importa sobre todo en la creacin de los archivos maestros en los que hay que meter una gran cantidad de datos. Esos controles, entre otras posibilidades se pueden poner diversos controles lgicos. Tambin hay que tener en cuenta el tipo de operaciones que se va hacer. Hay operaciones por lotes o modo Batch en que las transacciones son acumuladas y organizadas en un archivo de movimientos, para luego tratarlas todas juntas con otro y otros archivos. Ello tiene el inconveniente del retraso que se produce entre el momento en que se genera el movimiento y el momento en que se procesa. Y hay operaciones Online en tiempo real en el que las transacciones se procesan en el mismo momento en que se introducen y en ese orden. Los archivos informticos tienen una etiqueta de cabecera que es un registro propio de ese archivo en el que se indica su nombre, fecha de creacin, plazo de validez y una serie de datos de control para que el programa que necesita el fichero para trabajar pueda comprobar que ese es realmente el fichero que necesita. Despus de la etiqueta estn todos los registros que contienen la informacin propia del archivo. Y al final hay una etiqueta o registro de fin de archivo que suele tener informacin destinada a controlar su contenido, como puede ser el nmero de registro que han sido grabados en el archivo. Los registros de un archivo suelen tener una longitud fija y una estructura de campos tambin fija, es decir, que suelen ser todos del mismo tipo de registro. Pero tambin puede haber archivos informticos formados por distintos tipos de registros y de longitud variable. En esos casos se incluye en el registro un campo que contiene la longitud de registro y si el archivo tiene ms de un tipo de registro hay que incluir en el registro un campo para indicar el tipo de registro.

BASE DE DATOS Algunas caractersticas de los archivos a tener en cuenta son las siguientes: Tamao: Es el nmero de registros que tiene y/o puede llegar a tener. Tasa de Crecimiento o Volatilidad: Es el nmero de altas y bajas que se procesa en cada pasada (o proceso) del ordenador. Generalmente suele haber una tasa de crecimiento positiva, es decir, que las altas sern mayores que las bajas, pero tambin puede ser negativa si son mayores las bajas. Actividad: El nmero de registros tratados en cada proceso. As un archivo con un porcentaje de actividad del 30% quiere decir que el 30% de los registros son modificados en cada proceso. Tambin se llama actividad al nmero de veces que es usado un archivo por unidad de tiempo. Ej.: Dos veces al da, a la semana, o al mes.

3. ORGANIZACIONES Y ACCESOS
Podemos decir que la organizacin de un archivo es la forma en que se disponen u organizan sus registros dentro de la memoria. Se llama mtodo de acceso al procedimiento seguido para acceder al contenido de uno o ms registros del archivo. Bsicamente hay dos mtodos de acceso que son: Secuencial: Para acceder a un registro hay que leer todos los anteriores. Directo: Se puede usar el campo clave para acceder directamente a ese registro.

Pero hay otros mtodos de acceso que son como una combinacin de ambos mediante el uso de puntero y/o ndices. Ambos aspectos de organizacin y mtodo de acceso estn relacionados ya que algunas organizaciones solo permiten ciertos mtodos de acceso.

3.1 ORGANIZACIN SECUENCIAL


Este es el tipo ms bsico de organizacin. En ella los registros se colocan fsicamente de modo secuencial o seguido uno detrs de otro. En este caso las altas o registros nuevos se pueden poner al final del archivo. Para las bajas o modificaciones hay que ir leyendo los registros uno a uno hasta encontrar el que se quiere, y luego se le marca como de baja lgica aunque siga existiendo fsicamente, o se modifica su contenido segn el caso. Aunque no es obligatorio, esto archivos suelen estar ordenado o clasificados por un campo identificativo o clave, que es parte del registro del archivo. En este caso las bajas y modificaciones pueden hacerse como se ha dicho, pero las altas no podran darse en el mismo archivo, ya que al ir todos los registros seguidos, no hay hueco o sitio para poner el nuevo registro en su orden lgico. En este caso, hay que pasar todo el archivo a un nuevo archivo, en que sus registros estn actualizados con los movimientos de altas, bajas y modificaciones. Al pasarlo las bajas lgicas se quitan y ya pasan a ser bajas fsicas, y el archivo queda bien ordenado en clave lgica.

3.2 ORGANIZACIN DIRECTA O DE ACCESO DIRECTO


A esta organizacin se le llama tambin aleatorio, (random) o de acceso directo. A veces tambin se la llama de dispersin. Es una de las menos usadas, en ella los registros se les coloca de forma aleatoria o al azar fsicamente en el soporte que suele ser un disco. Algunos soportes, como la cinta magntica no permiten este tipo de soporte. Es necesaria la existencia en el registro de un campo clave o identificativo, tambin llamado campo de dispersin.

BASE DE DATOS Cada registro se almacena en una direccin de disco que se calcula para cada uno de ellos aplicando una frmula o algoritmo matemtico tambin llamada funcin de aleatorizacin o dispersin, al campo clave de registro. Aplicando la funcin a la clave nos da la direccin del cilindro, pista y sector del disco o la direccin de bloque del disco donde se guardar el registro. Hay muchas funciones de aleatorizacin o dispersin, como en las de divisin/resto, truncamiento, transformacin de la base, etc. de las que hay que seleccionar una. Al elegir un algoritmo se deben tener en cuenta dos cosas: Que las direcciones estn dentro de un rango permitido. Que distribuyan los registros en el rango de modo que haya pocas colisiones, es decir, que haya pocos sinnimos.

Se dice que dos registros colisionan o son sinnimos si tienen claves distintas y al aplicar sobre ellos la funcin de aleatorizacin dan la misma direccin. Para esos casos se deben implementar medidas de correccin, como usar una segunda funcin, buscar la siguiente posicin vaca o usar tcnicas de encadenamiento de registros. Por ejemplo, en el caso de una empresa que tiene 200 empleados y para cada empleado se tiene un registro de 100 posiciones y que el campo clave o identificativo de un empleado es un nmero de 5 cinco cifras que pueden ir desde 00000 a 99999. Si se usarn directamente la clave como direccin se desperdiciara mucha memoria ya que se reservara espacio para 100 mil empleados cuando solo hay 200. Entonces podemos considerar que solo hay espacio para almacenar 200 registros o 20 mil caracteres. Y por tanto hay que usar alguna frmula o funcin de aleatorizacin que transforma la clave en una direccin que est dentro del almacenamiento disponible. Si se usa, por ejemplo, el mtodo de la divisin/resto, cada registro se almacenar en la direccin dada pero el resto obtenido de la divisin de la clave por el nmero de registros a almacenar. As, para la clave de empleado 55432: 55432 = 200 x 277 + 32 (resto) El resto (32) es la direccin de almacenamiento.

Aunque en este caso hay algunos sinnimos. As para la clave 14232: 14232 = 200 x 71 + 32 (resto) Entonces el primer registro se almacenar en la direccin que le corresponde y los sinnimos sern llevados a la zona de sobre pasamiento u (OVERFLOW) y enlazados entre s. Este tipo de organizacin es poco usada en comparacin con otras.

BASE DE DATOS

3.3 ORGANIZACIN RELATIVA


No hay un acuerdo total respecto a este tipo de organizacin. En algn caso se la considera como de tipo secuencial con clave en que los registros se graban en orden segn el valor de su campo clave. En otros casos se la considera que es una organizacin de tipo directo con su correspondiente funcin de aleatorizacin, tambin llamada de Hash. Pero en lneas generales es habitualmente considerada como una especie de direccionamiento relativo en que el valor del campo clave es numrico creciente de tipo (1, 2, 3N) y da el valor de la direccin relativa del registro dentro del fichero. La direccin relativa de un registro en un archivo es el nmero ordinal del registro dentro del archivo. Un archivo con espacio para N registros, tiene registros con direcciones relativas que estn en el conjunto {1, 2, 3,N}. el i-simo registro tiene la direccin relativa i.

3.4 ORGANIZACIN SECUENCIAL ENCADENADA


Son archivos secuenciales gestionados por punteros, los cuales contienen la direccin de memoria de registros. Los registros pueden no llevar un orden fsico o relativo al almacenarse, pero cada registro posee un puntero que indica la direccin del siguiente registro en orden lgico y que se puede modificar en cualquier momento. El puntero permite recorrer los datos en orden, para ello tiene tambin una clave lgica. Cuando hay nuevos registros se aaden al final del archivo, pero los punteros se reordenan para mantener el orden. Los registros no se borran fsicamente sino que se marcan o dan de baja lgica, por ello se malgasta espacio y cada cierto tiempo puede ser necesario reorganizar el archivo pasndolo a otro nuevo en que se den de baja fsica las bajas lgicas. Tambin el aadir registros o modificar las claves son operaciones que requieren recalcular los punteros. Versin inicial

BASE DE DATOS Versin con altas N Registro Fsico 1 2 3 4 5 6 (Puntero Inicial)7 8 9 10 11 Clave 123 34 75 90 108 315 20 260 123 82 280 Nombre Juan Adela Martin Abril Maite Rosa Pierre Mikel Luis Apellidos Torres Poget Romero Sierra Gascn Bueno Llontop Artetxe Serran Puntero Siguiente 8 3 10 9 1 Nulo 2 11 5 4 6

3.5 ORGANIZACIN SECUENCIAL INDEXADA


Esta permite el acceso tanto de forma secuencial como de modo directo a los registros. Tiene dos archivos: Un archivo de datos donde estn grabados los registros fsicamente seguidos y ordenados en creciente por el valor de un campo clave o identificativo. Un archivo ndice que tiene una entrada o registro por cada bloque o segmento que existe con su direccin y la clave lgica ms alta o ms baja que hay en ese bloque.

De ese modo a travs del archivo o tabla ndice, se puede acceder ms rpidamente a un registro cualquiera del archivo inicial de datos. Para buscar un registro con cierta clave del archivo de datos, se busca en la tabla o archivo ndice cual es el primer registro cuya clave sea mayor que la buscada, y al encontrarlo nos da cual es el bloque fsico o direccin en que est el registro buscado del archivo de datos. Archivo de datos Bloque 1 Datos 21 Datos 1121 Registro Bloque 2
Datos 115 Datos 220
2

Bloque 3
Datos 225 datos 315
3

18
Clave

datos

Tabla o Archivo ndice Clave 1121 2202 3153 N Bloque 1 2 3

Clave Ms Alta del Bloque 1 Clave Ms Alta del Bloque 2 Clave Ms Alta del Bloque 3

BASE DE DATOS Por ejemplo el registro de clave 150, tendramos que es 112<150<220 y por tanto est en el bloque 2. Conocido el bloque en que est, para encontrar el registro se le busca secuencialmente dentro de ese bloque. Adems para localizar el registro correspondiente de la tabla o archivo ndice se usa el mtodo de bsqueda binaria o dicotmica. Este consiste en que se compara la clave buscada con el punto medio de la tabla y se comprueba si est en la mitad superior o inferior. Adems los archivos ndices son muchos ms pequeos que los archivos de datos, ya que solo tienen dos campos de datos y una entrada o registro, por bloque, por lo que las bsquedas son ms rpidas. Para archivos grandes se puede usar tambin archivos ndice multinivel, es decir, tablas o archivos ndice sobre otros archivos ndice. Para conseguir un acceso ms rpido. As, es habitual en los discos tener dos tipos de tablas o archivos ndices, un ndice de cilindros y otro de pistas. En el ndice de cilindros hay una entrada o registro por cada cilindro del disco, indicando la clave ms alta que hay en ese cilindro, y a su vez por cada cilindro hay una tabla o archivo ndice de pistas de ese cilindro. Este archivo de pistas tiene un registro por cada pista de ese cilindro, indicando cual es la clave ms alta que hay en esa pista de ese cilindro. Entonces, para buscar un registro de datos, primero se busca en el ndice de cilindros la primera clave que sea mayor o igual a la buscada y ello nos da el cilindro en que est. Luego se busca en el ndice de pistas de ese cilindro, cual es la primera clave mayor o igual a la buscada y ello nos da la pista en que est. Despus de recorre esa pista hasta encontrar el registro buscado. ARCHIVO DE DATOS 18 Clave Datos 21 Datos Registro 25 Datos 1840 Datos 1865 Datos

NICE DE CILINDROS 1840 Clave ms alta del cilindro 1 3370 Cilindro 2 Cilindro 4901 Clave ms alta del cilindro 3 Cilindro

NDICE DE PISTAS DEL CILINDRO Clave ms alta Pista 1 Clave ms alta Pista 2 Clave ms alta Pista 3 Clave 1960 2085 2200 Pista 1 2 3

Por ejemplo el registro de clave 2190 vemos que se cumple 1840 < 2190 < 3370, luego est en el cilindro n2. Adems se tienen que 2085 < 2190 < 2200, luego est en la pista 3 del cilindro n2. Tambin hay una zona de desbordamiento overflow, en esa zona se van a ir aadiendo los nuevos registros que no entran en la zona inicial del archivo, es decir las altas. Hay que crear nuevos enlaces en los ndices para tener actualizados los archivos ndice. Cuando hay demasiadas actualizaciones es conveniente reorganizar el

BASE DE DATOS archivo para simplificar los enlaces, quitar huecos y quedar mejor organizado para las bsquedas de registros. Esta organizacin consiste en pasar ese archivo de datos a un nuevo archivo, ms simplificado en que los registros de datos estn todos bien ordenados por el campo clave. MEMORIA DE DISCO 18 Datos 21 Datos 4961 25 DATOS EOF Archivo de ndice Archivo de ndice

20

Datos

123

Datos ()

Sobre pasamiento (Overflow)

4. TIPOS DE NDICES
Hay varios tipos de ndices ndices Primarios: usan el campo clave de ordenacin del archivo, que es distinto para registros distintos, es decir, que no se repite. Estos ndices se consideran no densos, siendo aquellos que cada entrada o registro del archivo ndice se asocia con varios registros de datos. En los ndices densos cada entrada del ndice se relaciona solo con un registro de datos. Ej.: Claves: 5, 8, 12, 20, 25, ndices de Agrupamiento. Cuando los registros estn ordenados segn un campo no clave, al cual se llama campo de agrupamiento, el cual se puede repetir, es decir, puede tener varios registros de datos para el mismo valor del campo. Suelen ser de tipo no denso. A esto lo llamamos ndice de Agrupamiento. Ej.: Claves (no):5,5,6,7,8,8,8,9,12,15,18,18,20, ndices Secundarios: son aquellos que usan un campo que es distinto del de ordenamiento del archivo. Puede ser campo clave o no clave, pero distinto al de ordenamiento. Tambin puede ser denso o no denso. ndice Multinivel: Que es cuando se hacen ms archivos ndices sobre el ndice inicial, unos referidos a otros. Hay tambin otros tipos de ndices con varias estructuras como rbol, etc.

5. TIPOS DE SISTEMAS DE INFORMACIN


Los sistemas de informacin se pueden considerar desde varios puntos de vista y su concepcin ha ido cambiando con el tiempo, en cierto sentido se han producido dos puntos o aspectos de importancia. En el primero estn los sistemas de informacin orientados al proceso, en estos se crean diversas aplicaciones de software para gestionar diferentes aspecto del sistema. Los datos de dichas aplicaciones se almacenan en archivos digitales dentro de las unidades de almacenamiento del

BASE DE DATOS ordenador. Cada programa almacena y usa sus propios datos. La ventaja de este sistema es que los procesos son independientes, por lo que la modificacin de uno no afecta al resto, teniendo varios inconvenientes como: o Datos inconsistentes, ya que un proceso puede cambiar sus datos y los otros no. Por lo que el mismo dato puede tener valores distintos para los distintos procesos. o Datos redundantes, ya que se repiten para los distintos procesos. o Coste de almacenamiento elevado, ya que al almacenarse varias veces los mismos datos, hace falta ms espacio de disco. o Dependencia de los datos a nivel fsico, ya que para saber cmo se almacenan los datos hace falta ver el cdigo de la aplicacin. El cdigo y los datos no son independientes. o Dificultad para el proceso simultaneo a los datos, ya que se almacenan los archivos que no admiten es posibilidad. Dos usuarios no pueden acceder a los datos de modo concurrente. o Dificultad para administrar la seguridad del sistema, ya que al crear cada aplicacin de modo independiente, es muy difcil establecer criterios de seguridad uniforme. A estos sistemas de informacin se les llama tambin en general de gestin de ficheros. En el segundo estn los sistemas de informacin orientados a datos. En este sistema los datos se centralizan en un conjunto comn a todas las aplicaciones o procesos, es a partir de este donde empiezan a surgir lo que se suele llamar Bases de Datos. Tienen una estructura de datos comn y a travs de ella las aplicaciones acceden a los datos. Cuando una aplicacin modifica un dato, dicho dato estar modificado tambin para todas las dems aplicaciones.

Des este modo se evitan muchos de los inconvenientes que haba en le otro tipo de sistemas de informacin. Disminuye la redundancia, ya que no se repiten los datos y tambin la posibilidad de inconsistencia. Tambin disminuyen los costes de almacenamiento y aumenta la facilidad de administrar la seguridad del sistema.

You might also like