transformacion de llaves

34
Universidad Tecnológica de panamá Facultad de ingeniería de sistemas computacionales Licenciatura de redes informáticas Estructura de Datos Profesora: Yolanda de Miguelena Integrantes: Franceschi Gino 8-874-2188 Nathalie Marín 7-709-1604 Navarro Yolanis 8-820-1736 Carlos Pimentel Nikos Alonso 8-885-756 Carlos Olmos 8-823-2300 Shaneika Gonzales 3-733-1630 Kathyusca Guerra 8-874-900  Alfredo Ortega 8-8 82-820 Ivan Albernez 8-897439 Elvin Diaz 8-875-776 Ricardo Arroyo 8-875-776 José Castillo 8-878 1994 Marcel Justiniani 8-873-1695 Jason Mendoza 8-871-1779  Año lecti vo I Semestre 2014 Fecha: Junio 30, 2014

Upload: gialessandro

Post on 09-Oct-2015

37 views

Category:

Documents


0 download

TRANSCRIPT

Universidad Tecnolgica de panam Facultad de ingeniera de sistemas computacionales Licenciatura de redes informticas

Estructura de DatosProfesora: Yolanda de Miguelena

Integrantes: Franceschi Gino 8-874-2188Nathalie Marn 7-709-1604Navarro Yolanis 8-820-1736Carlos Pimentel Nikos Alonso 8-885-756Carlos Olmos 8-823-2300Shaneika Gonzales 3-733-1630Kathyusca Guerra 8-874-900Alfredo Ortega 8-882-820Ivan Albernez 8-897439Elvin Diaz 8-875-776Ricardo Arroyo 8-875-776Jos Castillo 8-878 1994Marcel Justiniani 8-873-1695Jason Mendoza 8-871-1779

Ao lectivo I Semestre 2014Fecha: Junio 30, 2014

Introduccin

La transformacin de llaves es la forma en que se intenta encontrar n elemento dentro de un conjunto de elementos ordenados, este es un de los principales objetivos que se tiene dentro de las transformaciones de llaves y es lo que estaremos desarrollando en gran medida en el siguiente trabajo, desarrollaremos la forma en que se divide las tcnicas de direcciones que se utilizan en la bsqueda. Desarrollaremos los diferentes hashing, de clculos de direcciones, desarrollamos las comparaciones entre las funciones dentro de los hash.

ndiceIntroduccin2Transformacin de Llaves41Definicin y Conceptos42Tcnicas de Clculos de Direcciones62.1.1Hashing por residuo62.1.2Hashing por cuadrado medio72.1.3Hashing por pliegue83Comparaciones entre las funciones Hash94Mtodos para el manejo del problema de las colisiones111Organizaciones de Archivos152Diseo de registro152.1Registro de Longitud Fija152.2Registro de longitud variable163Organizacin de archivos163.1Introduccin y conceptos164Operaciones sobre archivos234.1Tipos de organizacin de archivos264.1.1Secuencial264.1.2Indexada284.1.3Directa o Relativa294.1.4Ventajas y Desventajas de cada organizacin295Mtodos de Acceso315.1Secuencial315.2Azar o directo32Conclusin33Bibliografa34

Transformacin de LlavesDefinicin y Conceptos

Es la forma de tratar el problema de intentar encontrar un elemento de entre un conjunto ordenado de elementos. Cuando el nmero de elementos del conjunto ordenado es muy grande , el tiempo empleado para buscarlo puede hacerse demasiado largo , y para esto surge la idea de situar cada elemento de forma que si sabemos cul es , esto nos lleve muy rpidamente a encontrarlo de entre el conjunto de todos los elementos . Esto tiene su utilidad cuando los citados elementos son registros con varios campos y lo que queremos es encontrar es el registro completo que en uno de sus campos contiene un cierto valor (ya sea numrico o de cadena de letras).El problema sera muy sencillo si por ejemplo tenemos elementos que slo pueden constar de una letra, slo tendramos que poner la letra "a" en el lugar 1 de un vector, la "b" en el lugar 2 y as sucesivamente hasta la "z" que estara situada en el lugar 26 . De esta forma, si queremos buscar la letra "j" , sabemos que slo puede estar en la casilla 10 del vector . Pero imaginemos que en vez de una letra , cada elemento contiene dos letras ; en este caso , la "aa" la pondramos en la celda 1 del vector , la "ab" en la celda 2 , la "ac" en la celda 3 y as sucesivamente hasta la "zz" que estara situada en la celda 26x26=676 del vector ; en este caso , seran necesarias 676 celdas de vector para poder obtener de una forma rpida la localizacin de cualquier cadena ; por ejemplo , supongamos que queremos encontrar la celda que contiene "cj" , para ello slo tenemos que multiplicar el lugar que corresponde a la "c" ( de entre todo el abecedario , que sera el lugar 3 ) por el lugar que corresponde a la "j" ( de entre todo el abecedario , que sera el 10 ) , es decir 3x10=30 , la "cj" estara con toda seguridad en la celda 30 del vector .Ahora vamos a suponer , que se admiten elementos con 10 letras posibles , el nmero de casillas del vector necesarias para poder resolver la situacin de una forma unvoca sera 26x26x26x26x26x26x26x26x26x26=26e10 , algo imposible de contener en cualquier ordenador .Por lo tanto , la funcin que asigna el lugar para un elemento cualquiera ( llave ) de entre todos los posibles H:K ===> A , es una funcin de muchos probables a pocos posibles ( porque las memorias son muy limitadas ).Por lo tanto, esta funcin debe de no ser unvoca sino que debe de asignar ms de un posible elemento para cada celda. Por ejemplo, en el tema de asignar palabras de 2 letras, se encontr que seran necesarias 26x26=676 celdas, pero si tenemos por convenio que todas las palabras que empiecen por "a" vayan a la celda 1 , las que empiecen por "b" a la 2 ,etc... Slo en el caso de que en la base de datos hubiera ms de una palabra que empezara por "a" ,encontraramos un conflicto llamado colisin y tendramos que volver a redistribuir del misma forma todas las que empezaran por"a" . Con el resto se hara lo mismo.Es decir, es necesario por una parte encontrar una buena funcin H y por otra parte una buena funcin H' que nos redireccionara en caso de conflicto en la primera localizacin.El requisito bsico de una buena funcin H es que distribuya los elementos de una forma lo ms uniforme posible para que se d un mnimo de colisiones. Una funcin muy usada (la que hemos utilizado en los ejemplos) es la funcin ORD (k), que nos devuelve el lugar del letra de entre todo el abecedario. Por lo tanto, si tenemos un vector con N celdas, la funcin ms sencilla de direccionamiento sera H(k)=( ORD (k) ) MOD N .Pero si los elementos utilizados son palabras, como todas las letras no tienen la misma probabilidad de salir, hay que elegir un N que sea primo para que la redistribucin sea uniforme lo ms posible .Una de las formas de tratar las colisiones (una colisin se produce cuando 2 o ms elementos deben de ser localizados en la misma celda del vector ) es utilizando una lista de punteros de forma que cada vez que se archive un elemento que deba corresponder a esa celda , se aada a la lista . Cuando se desee buscar algn elemento al que la funcin H nos seale, lo buscaremos de entre toda la lista de los elementos asignables a dicha celda del vector y si recorremos toda la lista sin encontrarlo, se devolver que no est presente ( a este mtodo de tratar las colisiones se le llamaencadenamiento directo) .Tambin hay otra forma de guardar los elementos que tengan asignada la misma celda , estos elementos se puede ir guardando en una tabla que se llamarea de desbordamiento, este mtodo se llama dedireccin abierta.Otro mtodo muy eficaz para resolver las colisiones es utilizar una segunda funcin para redistribuir los elementos en colisin en el mismo vector original.Esta funcin puede serh0=H(k)hi=( h0 + i ) MOD NA este mtodo se le llama deexploracin linealy tiene la desventaja de que las entradas tienden a agruparse alrededor de las llaves que no han tenido ninguna colisin.Hay otro mtodo que aunque requiere ms clculos, no tiene la desventaja de la agrupacin alrededor de las llaves no colisionadas. Se trata del mtodo de laexploracin cuadrtica, que consiste en aplicar la siguiente funcinh0=H(k)hi=( h0 + ( i x i ) ) MOD NEste segundo mtodo tiene la ventaja de que no agolpa los elementos alrededor de los no colisionados pero tiene el inconveniente de que se dejan algunos huecos vacos en los que no es posible guardar elementos en colisin.Tcnicas de Clculos de DireccionesHashing por residuoEste mtodo consiste en dividir una llave dada entre un numero seleccionado con anterioridad, y finalmente utilizar el resultado de la operacin como una direccin relativa.Lo anterior podra codificarse de la siguiente forma en pascal:Dir := llave mod div;Y en cobol como:DIVIDE LLAVE BY DIV GIVING COCIENTE-REMAINDER DIR.Donde Dir es donde se almacenara la direccin relativa, llave es la llave dada y div el divisor.Como se mencion el valor de div debe ser escogido con anterioridad considerando los varios factores. Primero, el rango de valores que resultan de la operacin "llave mod div", va desde 0 hasta div 1. Luego, el valor del divisor determina el tamao del espacio de direccin relativa. Si se sabe que nuestro archivo va a contener por lo menos n registros, entonces tendremos que hacer que div > n, suponiendo que solamente un registro puede ser almacenado en una direccin relativa dada.Segundo, el divisor deber seleccionarse de tal forma que la probabilidad de colisin sea minimizada. De hecho, ste es un objetivo difcil de alcanzar. Tratamos de seleccionar un divisor que mantenga la probabilidad de colisin relativamente baja, pero en general no nos vamos a esforzar en minimizar realmente las colisiones. Mediante investigaciones se ha demostrado que los divisores que son nmeros pares tienden a comportarse pobremente, especialmente con los conjuntos de valores de llave que son predominantemente impares.Algunas investigaciones sugieren que el divisor debera ser un nmero primo, con lo cual se reduciran los resultados sesgados. Sin embargo, otro trabajo sugiere que los divisores no primos trabajan tambin como los divisores primos, siempre y cuando los divisores no primos no contengan nmeros primos pequeos como factores. Sugieren que seleccionar un nmero que no contenga ningn factor primo menor de 20 es probablemente suficiente para asegurar un buen desempeo.De esta forma si elegimos usar un nmero primo como divisor y tener un nmero mximo de localidades de 5000 entonces nuestro divisor tendra el valor de 5003 que es el nmero primo mayor inmediato a 5000.A continuacin se muestra una tabla que ilustra el uso de la tcnica del nmero primoHashing por cuadrado medioEsta tcnica consiste en elevar al cuadrado la llave dada, despus algunos dgitos especificados se extraen de la mitad del resultado para construir la direccin relativa. Si se desea una direccin relativa de n dgitos, entonces los dgitos se truncan en ambos extremos de la llave elevada al cuadrado, tomando los n dgitos intermedios. Las mismas posiciones de n dgitos debern extraerse para cada llave. La siguiente figura ilustra el uso de la tcnica del medio del cuadrado para los mismos valores de llaves que se mostraron en la tabla anterior.Los dgitos de las posiciones 7 10 se extrajeron para formar una direccin relativa de 4 dgitos.Hashing por pliegueEn esta tcnica el valor de la llave es participando en varias de las partes, cada una de las cuales (excepto la ltima) tiene el mismo nmero de dgitos que tiene la direccin relativa objetivo. Estas particiones son despus plegadas una sobre otra y sumadas. El resultado, con el dgito de mayor orden truncado, si es necesario, es la direccin relativa.Por ejemplo, considere el valor de llave 123456789, y suponga que la direccin relativa objetiva tendr 4 dgitos. El valor de la llave es participando en partes de 4 dgitos.El dgito de mayor orden es truncado para dar la direccin relativa 3221.La siguiente tabla muestra las direcciones relativas que resultan cuando el mtodo de pliegue es aplicado a nuestro conjunto de valores de llave.Igual que para el mtodo del medio del cuadrado, el tamao del espacio de direcciones relativas es una potencia de 10.Comparaciones entre las funciones Hash

Es un gran conjunto de informacin, dando como resultado un conjunto imagen finito generalmente menor (un subconjunto de los nmeros naturales por ejemplo). Varan en los conjuntos de partida y de llegada y en cmo afectan a la salida similitudes o patrones de la entrada. Una propiedad fundamental del hashing es que si dos resultados de una misma funcin son diferentes, entonces las dos entradas que generaron dichos resultados tambin lo son.Es posible que existan claves resultantes iguales para objetos diferentes, ya que el rango de posibles claves es mucho menor que el de posibles objetos a resumir (las claves suelen tener en torno al centenar de bits, pero los ficheros no tienen un tamao lmite).Son usadas en mltiples aplicaciones, como los arrays asociativos, criptografa, procesamiento de datos y firmas digitales, entre otros. Una buena funcin de hash es una que experimenta pocas colisiones en el conjunto esperado de entrada; es decir que se podrn identificar unvocamente las entradas (ver funcin inyectiva).La funcin de hash depende de cada problema y de cada finalidad, y se pueden utilizar con nmeros o cadenas, pero las ms utilizadas son:

Restas sucesivas:esta funcin se emplea con claves numricas entre las que existen huecos de tamao conocido, obtenindose direcciones consecutivas. Por ejemplo, si el nmero de expediente de un alumno universitario est formado por el ao de entrada en la universidad, seguido de un nmero identificativo de tres cifras, y suponiendo que entran un mximo de 400 alumnos al ao, se le asignaran las claves:1998-000 --> 0 = 1998000-19980001998-001 --> 1 = 1998001-19980001998-002 --> 2 = 1998002-1998000...1998-399 --> 399 = 1998399-19980001999-000 --> 400 = 1999000-1998000+400...yyyy-nnn --> N = yyyynnn-1998000+(400*(yyyy-1998))

Aritmtica modular:el ndice de un nmero es resto de la divisin de ese nmero entre un nmero N prefijado, preferentemente primo. Los nmeros se guardarn en las direcciones de memoria de 0 a N-1. Este mtodo tiene el problema de que cuando hay N+1 elementos, al menos un ndice es sealado por dos elementos (teorema del palomar). A este fenmeno se le llama colisin, y es tratado ms adelante. Si el nmero N es el 13, los nmeros siguientes quedan transformados en:

13000000 --> 012345678 --> 713602499 --> 171140205 --> 673062138 --> 6

Mitad del cuadrado:consiste en elevar al cuadrado la clave y coger las cifras centrales. Este mtodo tambin presenta problemas de colisin:123*123=15129 --> 51136*136=18496 --> 84730*730=532900 --> 29301*301=90601 --> 06625*625=390625 --> 06

Truncamiento:consiste en ignorar parte del nmero y utilizar los elementos restantes como ndice. Tambin se produce colisin. Por ejemplo, si un nmero de 8 cifras se debe ordenar en un array de 1000 elementos, se pueden coger la primer, la tercer y la ltima cifras para formar un nuevo nmero:13000000 --> 10012345678 --> 13813602499 --> 16971140205 --> 71573162135 --> 715

Plegamiento:consiste en dividir el nmero en diferentes partes, y operar con ellas (normalmente con suma o multiplicacin). Tambin se produce colisin. Por ejemplo, si dividimos los nmeros de 8 cifras en 3, 3 y 2 cifras y se suman, dar otro nmero de tres cifras (y si no, se cogen las tres ltimas cifras):13000000 --> 130=130+000+0012345678 --> 657=123+456+7871140205 --> 118 --> 1118=711+402+0513602499 --> 259=136+024+9925000009 --> 259=250+000+09Mtodos para el manejo del problema de las colisiones

MANEJO DE COLISIONES

Resolucin de colisionesHablamos de unacolisincuando hay una misma direccin para ms de una llave diferente.Para poder resolver el problema de las colisiones se busca alguna direccin que se encuentre desocupada cercana a la posicin en donde debe de estar el nodo o la estructura (de acuerdo a la que proporcione la funcin de Hash). Direccionamiento Abierto

Consiste enrevisar las direcciones de la tabla(as se le puede llamar al archivo o al arreglo donde se est almacenando y/o recuperando las llaves procesadas) en forma secuencial, partiendo de la direccin donde ocurri la colisin, hasta encontrar el elemento deseado si se trata de una bsqueda o bien encontrar un espacio libre si es el caso de almacenamiento. Si se llegara hasta el final de la tabla, entonces se regresar a buscar a partir de la primera direccin, como si se tratara de una cola circular.En el peor de los casos, si se presentaran muchas colisiones, es posible que se le tenga que dar toda una vuelta a la tabla para encontrar el nodo deseado.Por eso la importancia de dejar aproximadamente un 20 % ms de memoria que la que se estima ocupar, por ejemplo si se van a almacenar 1,000 elementos, se recomienda reservar 1,200 localidades para que existan direcciones desocupadas, distribuidas en ese espacio de memoria, para evitar tener que darle la vuelta completa a la tabla.Cuando se trata de almacenar un elemento, ste se asignar a la primera localidad disponible ms cercana al nodo y si se trata de una bsqueda para consulta (realizaraltas,bajas ycambios), se busca en forma secuencial a partir de esa posicin, hasta encontrar el elemento buscado, pero si se encuentra una direccin disponible sin haber localizado la llave del nodo deseado, indicara que el elemento no se encuentra en la tabla.Tal vez sea la forma ms sencilla para resolver las colisiones, pero tiene ladesventajade que si se presentan varias colisiones, entonces se empiezan a agrupar nodos o elementos alrededor de una misma direccin (clustering), en forma contigua y al realizar otra consulta, esta se puede llegar a convertir en una bsqueda secuencial o lineal, causando un incremento en el tiempo de ejecucin del algoritmo y por consiguiente, aumento en el tiempo de respuesta de la consulta.

EncadenamientoEn esta forma de solucin de colisiones se crea unalista simplemente ligadapara cada direccin que se repita, esta lista indicar cual es la direccin del siguiente elemento que debi haber estado en la localidad donde se origin la colisin, con esto ya no se realiza una bsqueda secuencial, si no que se recorre la lista ligada a travs de las direcciones de las ligas hasta que encuentre la direccin NULL o Nulo, logrando unamayor velocidadde esta tcnica. Pero tiene lasdesventajasde que ocupa un espacio de memoria mayor para almacenar la liga y de que el algoritmo se vuelve un poco ms complejo comparado con el de Direccionamiento Abierto.Ejemplo de encadenamiento:001, 101, 002, 003, 123, 700, 403, 302, 405, 2000200NULL

1001NULL

21013

30024

40035

51236

63020

77008

8403NULL

9405NULL

MTODOS PARA RESOLVER EL PROBLEMA DE LAS COLISIONESConsidere las llaves K1y K2que son sinnimas para la funcin hash R. Si K1es almacenada primero en el archivo y su direccin es R(K1), entonces se dice que K1esta almacenado en su direccin de origen.

Existen dos mtodos bsicos para determinar donde debe ser alojado K2: Direccionamiento abierto.- Se encuentra entre direccin de origen para K2dentro del archivo. Separacin de desborde (Area de desborde).-Se encuentra una direccin para K2fuera del rea principal del archivo, en un rea especial de desborde, que es utilizada exclusivamente para almacenar registro que no pueden ser asignados en su direccin de origenLos mtodos ms conocidos para resolver colisiones son:

Sondeo linealQue es una tcnica de direccionamiento abierto. Este es un proceso de bsqueda secuencial desde la direccin de origen para encontrar la siguiente localidad vaca. Esta tcnica es tambin conocida como mtodo de desbordamiento consecutivo.Para almacenar un registro por hashing con sondeo lineal, la direccin no debe caer fuera del lmite del archivo, En lugar de terminar cuando el lmite del espacio de direccin se alcanza, se regresa al inicio del espacio y sondeamos desde ah. Por lo que debe ser posible detectar si la direccin base ha sido encontrada de nuevo, lo cual indica que el archivo est lleno y no hay espacio para la llave.Para la bsqueda de un registro por hashing con sondeo lineal, los valores de llave de los registros encontrados en la direccin de origen, y en las direcciones alcanzadas con el sondeo lineal, deber compararse con el valor de la llave buscada, para determinar si el registro objetivo ha sido localizado o no.El sondeo lineal puede usarse para cualquier tcnica de hashing. Si se emplea sondeo lineal para almacenar registros, tambin deber emplearse para recuperarlos.Doble hashingEn esta tcnica se aplica una segunda funcin hash para combinar la llave original con el resultado del primer hash. El resultado del segundo hash puede situarse dentro del mismo archivo o en un archivo de sobreflujo independiente; de cualquier modo, ser necesario algn mtodo de solucin si ocurren colisiones durante el segundo hash.La ventaja del mtodo de separacin de desborde es que reduce la situacin de una doble colisin, la cual puede ocurrir con el mtodo de direccionamiento abierto, en el cual un registro que no esta almacenado en su direccin de origen desplazara a otro registro, el que despus buscar su direccin de origen. Esto puede evitarse con direccionamiento abierto, simplemente moviendo el registro extrao a otra localidad y almacenando al nuevo registro en la direccin de origen ahora vaca.Puede ser aplicado como cualquier direccionamiento abierto o tcnica de separacin de desborde.Para ambas mtodos para la solucin de colisiones existen tcnicas para mejorar su desempeo como:1.- Encadenamiento de sinnimosUna buena manera de mejorar la eficiencia de un archivo que utiliza el clculo de direcciones, sin directorio auxiliar para guiar la recuperacin de registros, es el encadenamiento de sinnimos. Mantener una lista ligada de registros, con la misma direccin de origen, no reduce el nmero de colisiones, pero reduce los tiempos de acceso para recuperar los registros que no se encuentran en su localidad de origen. El encadenamiento de sinnimos puede emplearse con cualquier tcnica de solucin de colisiones.Cuando un registro debe ser recuperado del archivo, solo los sinnimos de la llave objetivo son accesados.2.- Direccionamiento por cubetasOtro enfoque para resolver el problema de las colisiones es asignar bloques de espacio (cubetas), que pueden acomodar ocurrencias mltiples de registros, en lugar de asignar celdas individuales a registros. Cuando una cubeta es desbordada, alguna nueva localizacin deber ser encontrada para el registro. Los mtodos para el problema de sobrecupo son bsicamente los mismos que los mtodos para resolver colisiones.

1. Organizaciones de ArchivosDiseo de registroRegistro de Longitud FijaLa longitud fija en el tamao del campo produce un desperdicio de espacio, pero en cambio facilita la localizacin y extraccin de la informacin en dicho campo, al no tener que preocuparse por su tamao. La longitud de los registros no puede variar, longitud fija. Se pueden crear de 3 maneras distintas: - Igual nmero de campos e igual longitud de campo en cada registro. - Igual nmero de campos y distintas longitud de cada campo en cada registro. - Distintos nmero de campos y distinta longitud de cada campo en el registro.Ejemplo:

Registro de longitud variableAlmacenan registros de varios tipos en un archivo y permite uno o ms campos de longitudes variables y dichos campos pueden ser repetidos. la longitud de los registros debe estar definida correctamente para poder leer y escribir de forma efectiva. aqu hay un aprovechamiento del espacio pero se complica la localizacin y extraccin de la informacin.Y pueden ser de: registro de longitud variable con campo fijo y registro de longitud variable con campo variable.

Organizacin de archivosIntroduccin y conceptosLos archivos como coleccin de datos sirven para la entrada y salida a la computadora y son manejados con programas.Los archivos pueden ser contrastados con Arrays y registros; Lo que resulta dinmico y por esto en un registro se deben especificar los campos, l nmero de elementos de un arrays (o arreglo), el nmero de caracteres en una cadena; por esto se denotan como "Estructuras Estticas".Esta definicin bsica nos proporciona en estndar mnimo pero explicito que nos ayuda a una organizacin, algunas veces con resultados inesperados. La definicin tambin identifica a organizaciones extremadamente complejas, una organizacin puede ser casual o sumamente compleja.Las organizaciones bastas contienen muchas organizaciones pequeas, existen dos clases de elementos comunes en todas las organizaciones, el elemento ncleo y los elementos operantes. En los archivos no se requiere de un tamao predeterminado; esto significa que se pueden hacer archivos de datos ms grandes o pequeos, segn se necesiten.Conceptos

Organizacin de Archivos

Se refiere a las diferentes maneras en las que puede ser organizada la informacin de los archivos, as como las diferentes maneras en que sta puede ser accesada. Dado que hay 2 niveles de visin de los archivos (fsico y lgico), se puede hablar tambin de 2 aspectos de organizacin de archivos: Organizacin de archivos lgicos y de archivos fsicos.

Organizacin de un sistema de archivos utilizando directorios.El sistema de archivos est relacionado especialmente con la administracin del espacio de almacenamiento secundario, fundamentalmente con el almacenamiento de disco.Una forma de organizacin de un sistema de archivos puede ser la siguiente: Se utiliza una raz para indicar en qu parte del disco comienza el directorio raz. El directorio raz apunta a los directorios de usuarios. Un directorio de usuario contiene una entrada para cada uno de los archivos del usuario. Cada entrada de archivo apunta al lugar del disco donde est almacenado el archivo referenciado.

Los nombres de archivos solo necesitan ser nicos dentro de un directorio de usuario dado.El nombre del sistema para un archivo dado debe ser nico para el sistema de archivos.En sistemas de archivo jerrquicos el nombre del sistema para un archivo suele estar formado como el nombre de la trayectoria del directorio raz al archivo.Organizacin lgicaLa mayora de las computadoras organizan los archivos en jerarquas llamadas carpetas, directorios o catlogos. (El concepto es el mismo independientemente de la terminologa usada.) Cada carpeta puede contener un nmero arbitrario de archivos, y tambin puede contener otras carpetas. Las otras carpetas pueden contener todava ms archivos y carpetas, y as sucesivamente, construyndose un estructura en rbol en la que una carpeta raz (el nombre vara de una computadora a otra) puede contener cualquier nmero de niveles de otras carpetas y archivos. A las carpetas se les puede dar nombre exactamente igual que a los archivos (excepto para la carpeta raz, que a menudo no tiene nombre). El uso de carpetas hace ms fcil organizar los archivos de una manera lgica.La mayor parte de las estructuras de organizaciones alternativas de archivos se encuentran dentro de estas cinco categoras:Pilas

Archivo de pilas: Registro de longitud variable. Conjunto variable de campos. Orden cronolgico.Es la forma ms fcil de organizar un archivo. Los datos se recogen en el orden en que llegan.Su objetivo es simplemente acumular una masa de datos y guardarla.Los registros pueden tener campos diferentes o similares en un orden distinto. Cada campo debe ser auto descriptivo, incluyendo tanto un campo de nombre como el valor. La longitud de cada campo debe indicarse implcitamente con delimitadores, explcitamente incluidos como un subcampo ms.El acceso a los registros se hace por bsquedas exhaustiva y son fciles de actualizar. Si se quiere encontrar un registro que contiene un campo particular y un valor determinado, es necesario examinar cada registro de la pila hasta encontrar el registro deseado. Si se quieren encontrar todos los registros que contienen un campo particular o que tienen un valor determinado para ese campo, debe buscarse el archivo entero.Se aplica cuando los datos se recogen o almacenan antes de procesarlos o cuando no son fciles de organizar. Esta clase de archivo aprovecha bien el espacio cuando los datos almacenados varan en tamao y estructura. Fuera de estos usos limitados, este tipo de archivos no se adapta a la mayora de las aplicaciones.Archivos secuenciales

Archivo secuencial: Registro de longitud fija. Conjunto fijo de campos en orden constante. Orden secuencial por el campo clave.Es la forma ms comn de estructura de archivos.Se emplea un formato fijo para los registros, son de la misma longitud y constan del mismo nmero de campos de tamao fijo con un orden determinado.Se necesita almacenar los valores de cada campo; el nombre del campo y la longitud de cada uno son atributos de la estructura del archivo. Cada registro tiene un campo clave que lo identifica (generalmente es el primero de cada registro). Los registros se almacenan en secuencia por la clave.Se utilizan normalmente en aplicaciones de procesos por lotes, ya que es la nica organizacin de archivos que se puede guardar tanto en cintas como en discos.Para las aplicaciones interactivas que incluyen peticiones o actualizaciones de registros individuales, los archivos secuenciales no son ptimos. El acceso requiere una bsqueda secuencial de correspondencias con la clave. Si el archivo entero o gran parte de l pueden traerse a la memoria principal de una sola vez, se podrn aplicar tcnicas de bsquedas ms eficientes. Al acceder un registro de un archivo secuencial grande, se produce un procesamiento extra y un retardo considerable.La organizacin fsica del archivo en una cinta o disco se corresponde exactamente con la organizacin lgica del archivo, por lo tanto el procedimiento habitual es ubicar los nuevos registros en un archivo de pila separado, es llamado archivo de registro o archivo de transacciones.Una alternativa es organizar fsicamente el archivo secuencial como una lista enlazada, en cada bloque fsico se almacena uno o ms registros y cada bloque del disco contienen un puntero al bloque siguiente. La insercin de un nuevo registro implica la manipulacin de puntero, pero no requiere que el nuevo registro ocupe una posicin particular del bloque fsico.Archivos secuenciales indexadosLos registros se organizan en una secuencia basada en un campo clave presentando dos caractersticas, un ndice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. El ndice proporciona una capacidad de bsqueda para llagar rpidamente al registro deseado y el archivo de desbordamiento es similar al archivo de registros usado en un archivo secuencial, pero est integrado de forma que los archivos de desbordamiento se ubiquen siguiendo un puntero desde su registro predecesor.La estructura ms simple tiene como ndice un archivo secuencial simple, cada registro del archivo ndice tiene dos campos, un campo clave igual al del archivo principal y un puntero al archivo principal. Para encontrar un campo especifico se busca en el ndice hasta encontrar el valor mayor de la clave que es iguale o precede al valor deseado de la clave, la bsqueda continua en el archivo principal a partir de la posicin que indique el puntero.Cada registro del archivo principal tiene un campo adicional que es un puntero al archivo de desbordamiento. Cuando se inserta un nuevo registro al archivo, tambin se aade al archivo de desbordamiento. El registro del archivo principal que precede inmediatamente al nuevo registro segn la secuencia lgica se actualiza con un puntero del registro nuevo en el archivo de desbordamiento, si el registro inmediatamente anterior est tambin en el archivo de desbordamiento se actualizar el puntero en el registro.Para procesar secuencialmente un archivo completo los registros del archivo principal se procesarn en secuencia hasta encontrar un puntero al archivo de desbordamiento, el acceso contina en el archivo de desbordamiento hasta que encuentra un puntero nulo, entonces renueva el acceso donde se abandon en el archivo principal.Archivos indexados

A los registros se accede solo a travs de sus ndices. No hay restriccin en la ubicacin de los registros, al menos un ndice contiene un puntero a cada registro y pueden emplearse registros de longitud variable.Se suelen utilizar dos tipos de ndices, uno exhaustivo que contiene una entrada para cada registro del archivo principal y se organiza como un archivo secuencial para facilitar la bsqueda, el otro ndice es parcial que contiene entrada a los registros donde est el campo de inters.Con registro de longitud variable, algunos registros no contendrn todos los campos y cuando se aade un registro al archivo principal, todos los archivos de ndices deben actualizarse.Archivos directos o de dispersinExplotan la capacidad de los discos para acceder directamente a cualquier bloque de direccin conocida.Se requiere un campo clave en cada registro.Los archivos directos son muy usados donde se necesita un acceso muy rpido, donde se usan registros de longitud fija y donde siempre se accede a los registros de una vez.

Organizacin fsica.Los datos son arreglados por su adyacencia fsica, es decir, de acuerdo con el dispositivo de almacenamiento secundario. Los registros son de tamao fijo o de tamao variable y pueden organizarse de varias formas para constituir archivos fsicos.

Cinta magnticaEn este dispositivo el archivo fsico est formado por un conjunto de registros fsicos, y los bloques estn organizados en forma consecutiva, ya que se asigna en igual forma.Adems tales registros puede contener etiquetas que permitan un mayor control sobre los datos almacenados, y son las siguientes:- Etiqueta de volumen.- Contiene informacin que permite identificar la cinta, el nombre del propietario y cualquier informacin general requerida.- Etiqueta de archivo.- Se utilizan por pares para indicar el inicio y fin del archivo, contiene informacin acerca del nombre del archivo, fecha de creacin.- Etiqueta de usuario.- Sirven para guardar informacin adicional de importancia para el usuario; no son procesados por el sistema operativo.Discos MagnticosEl archivo fsico en un disco es una coleccin de registros fsicos de igual tamao, los cuales pueden estar organizados en forma consecutiva, ligada o con una tabla de mapeo. En la organizacin contigua, el archivo utiliza registros fsicos contiguos, siguiendo la secuencia normal de direcciones.La organizacin encadenada consiste un conjunto de bloques, cada uno de los cuales tiene un campo destinado para indicar la direccin del siguiente registro, o sea, para lo que se ha llamado enlace o liga.Otra forma de organizacin es la tabla de mapeo que consiste en una tabla de apuntadores a los registros fsicos que forman el archivo.La organizacin fsica de un archivo en el almacenamiento secundario depende de la estrategia de agrupacin y de la estrategia de asignacin de archivos.

Operaciones sobre archivosLos archivos informticos son el medio de que disponemos para almacenar informacin no voltil en un dispositivo de almacenamiento. Los Sistemas de archivos de que disponen los sistemas operativos disponen de mecanismos para que un usuario pueda manipular los archivos (seleccionar, editar, ejecutar, borrar). Desde el punto de vista de un programador un archivo es un medio para poder leer datos de entrada para su programa o donde poder guardar los resultados de su ejecucin. Todo lenguaje de programacin debe disponer de algn mecanismo para que el programador pueda manipular archivos desde un programa. Estos mecanismos pueden ser ms o menos sofisticados o verstiles dependiendo del lenguaje de programacin que estemos considerando, pero debe haber unas funciones bsicas para poder acceder a un archivo, estas son: Lectura (consulta).- Esta operacin consiste el leer la informacin contenida en fichero sin alterarla. Escritura (modificacin).- Consiste en actualizar el contenido del fichero bien aadindole nuevos datos o borrando parte de los que contena. Apertura.- Antes de acceder a un fichero, tanto para consultar como para actualizar su informacin, es necesario abrirlo. Esta operacin se debe realizar previamente a las operaciones de lectura o escritura. Cierre.- Cuando se ha terminado de consultar o modificar un fichero, por lo general, del mismo modo que se tuvo que abrir para realizar alguna operacin de lectura/escritura sobre l, ste deber ser cerrado.Creacin de un ficheroEl objetivo de esta operacin es permitir a los usuarios la creacin de nuevos ficheros. Mediante esta operacin se indican las propiedades y las caractersticas del fichero para que el sistema de ficheros pueda reconocerlo y procesarlo. En el proceso de creacin del fichero debe registrarse la informacin necesaria para que el sistema pueda localizar el fichero y manipular sus registros lgicos. Para ello, el mtodo de acceso debe obtener informacin sobre el formato y el tamao de los registros lgicos y fsicos, la identificacin del fichero, la fecha de creacin, su posible tamao, su organizacin, aspectos de seguridad, etc.Apertura de un ficheroEn esta operacin el mtodo de acceso localiza e identifica un fichero existente para que los usuarios o el propio sistema operativo puedan operar con l. En algunos sistemas la operacin de creacin no existe como tal, y es la operacin de apertura de un fichero no existente, la que implcitamente, crea un nuevo fichero.

Los errores que pueden producirse en la apertura de un fichero son los siguientes El fichero no se encuentra en el lugar indicado (dispositivo, directorio, nombre). El fichero se ha localizado pero el usuario no tiene permiso para acceder al mismo. El fichero no se puede leer por errores en el hardware del dispositivo de almacenamientoCierre de un ficheroEsta operacin se utiliza para indicar que se va a dejar de utilizar un fichero determinado. Mediante esta operacin el mtodo de acceso se encarga de "romper" la conexin entre el programa de usuario y el fichero, garantizando la integridad de los registros. Al ejecutar esta operacin, el sistema se encarga de escribir en el dispositivo de almacenamiento aquella informacin que contienen los bfer asociados al fichero y se llevan a cabo las operaciones de limpieza necesarias. Tras cerrar el fichero, sus atributos dejan de ser accesibles para el mtodo de acceso. El nico parmetro necesario para realizar esta operacin es el identificador del fichero devuelto por el mtodo de acceso al crear o abrir el fichero. Los errores que se pueden producir al cerrar un fichero son los siguientesExtensin del ficheroEsta operacin permite a los programas de usuario aumentar el tamao de un fichero asignndole ms espacio en el dispositivo de almacenamiento. Para realizar esta operacin el mtodo de acceso necesita conocer el identificador del fichero y el tamao del espacio adicional que se debe asignar al fichero. En funcin de la organizacin del fichero, el mtodo de acceso determinar si el espacio adicional que debe asignar debe ser contiguo al fichero o no. Mediante esta operacin el atributo que indica el tamao del fichero ser modificado y se devolver al programa de usuario con un cdigo de estado. El nico motivo para que esta operacin no se lleve a cabo con xito es que no haya suficiente espacio disponible en el lugar adecuado (no contiguo).Proteccin de archivosMuchos sistemas informticos modernos proporcionan mtodos para proteger los archivos frente a daos accidentales o intencionados. Las computadoras que permiten varios usuarios implementan permisos sobre archivos para controlar quin puede o no modificar, borrar o crear archivos y carpetas. A un usuario dado se le puede conceder solamente permiso para modificar un archivo o carpeta, pero no para borrarlo; o a un usuario se le puede conceder permiso para crear archivos o carpetas, pero no para borrarlos. Los permisos tambin se pueden usar para permitir que solamente ciertos usuarios vean el contenido de un archivo o carpeta. Los permisos protegen de la manipulacin no autorizada o destruccin de la informacin de los archivos, y mantienen la informacin privada confidencial impidiendo que los usuarios no autorizados vean ciertos archivos.Otro mecanismo de proteccin implementado en muchas computadoras es una marca de slo lectura. Cuando esta marca est activada en un archivo (lo que puede ser realizado por un programa de computadora o por un usuario humano), el archivo puede ser examinado, pero no puede ser modificado. Esta marca es til para informacin crtica que no debe ser modificada o borrada, como archivos especiales que son usados solamente por partes internas del sistema informtico. Algunos sistemas incluyen tambin una marca oculta para hacer que ciertos archivos sean invisibles; esta marca la usa el sistema informtico para ocultar archivos de sistema esenciales que los usuarios nunca deben modificar.Almacenamiento de archivosEn trminos fsicos, la mayora de los archivos informticos se almacenan en discos duros discos magnticos que giran dentro de una computadora que pueden registrar informacin indefinidamente. Los discos duros permiten acceso casi instantneo a los archivos informticos.Hace unos aos solan usarse cintas magnticas para realizar copias de seguridad. Tambin se usaban otros medios de almacenamiento como discos compactos grabables, unidades Zip, etctera.No obstante en la actualidad han cobrado mucho auge las memorias flash, dispositivos con mucha capacidad de almacenamiento que tienen la ventaja de ser pequeos y porttiles; suelen usarse para guardar archivos en dispositivos pequeos como telfonos mviles o reproductores de audio porttilesRespaldo de archivosCuando los archivos informticos contienen informacin que es extremadamente importante, se usa un proceso de respaldo (back-up) para protegerse contra desastres que podran destruir los archivos. Hacer copias de respaldo de archivos significa simplemente hacer copias de los archivos en una ubicacin separada de modo que se puedan restaurar si le pasara algo a la computadora, o si fueran borrados accidentalmente.Hay muchas maneras de hacer copias de respaldo de archivos. La mayora de los sistemas informticos proporcionan utilidades para ayudar en el proceso de respaldo, que puede llegar a consumir mucho tiempo si hay muchos archivos a salvaguardar. Copiar los archivos a otro disco duro en la misma computadora protege contra el fallo de un disco, pero si es necesario protegerse contra el fallo o destruccin de la computadora entera, entonces de deben hacer copias de los archivos en otro medio que puede sacarse de la computadora y almacenarse en una ubicacin distante y segura.

Tipos de organizacin de archivosSecuencialEsta es la forma ms bsica de organizar un conjunto de registros, que forman un archivo, utilizando una organizacin secuencial. En un archivo organizado secuencialmente, lo registros quedan grabados consecutivamente cuando el archivo se utiliza como entrada. En la mayora de los casos, los registros de un archivo secuencial quedan ordenados de acuerdo con el valor de algn campo de cada registro. Semejante archivo se dice que es un archivo ordenado; el campo, o los campos, cuyo valor se utiliza para determinar el ordenamiento es conocido como la llave del ordenamiento. Un archivo puede ordenarse ascendente o descendentemente con base en su llave de ordenamiento.

Podemos decir que la forma ms comn de estructura de archivo es el archivo secuencial. En este tipo de archivo, un formato fijo es usado para los registros. Todos los registros tienen el mismo tamao, constan del mismo nmero de campos de tamao fijo en un orden particular. Como se conocen la longitud y la posicin de cada campo, solamente los valores de los campos se necesitan almacenarse; el nombre del campo y longitud de cada campo son atributos de la estructura de archivos.

ESTRUCTURA DE LA ORGANIZACIN SECUENCIALArchivo secuencial es la forma ms simple de almacenar y recuperar registros de un archivo. En un archivo secuencial, se almacenan los registros uno tras otro. El primer registro almacenado se coloca al principio del archivo. El segundo se almacena inmediatamente despus (no existen posiciones sin uso), el tercero despus del segundo, etc. Este orden nunca cambia en la organizacin secuencial.

Una caracterstica de los archivos secuenciales es que todos los registros se almacenan por posicin: de primer registro, segundo registro etc.

Escritura de los archivos secuenciales

En estos archivos, la informacin slo puede leerse y escribirse empezando desde el principio del archivo.

Los archivos secuenciales tienen algunas caractersticas que hay que tener en cuenta:

1. La escritura de nuevos datos siempre se hace al final del archivo.2. Para leer un dato concreto del archivo hay que avanzar siempre hasta donde se encuentre dicho dato. Si el dato requerido se encuentra antes del dato en que est se est posicionado el archivo en un momento dado, ser necesario regresar al comienzo del archivo y avanzar hasta el dato necesario.

Almacenamiento de archivos Secuenciales.

Los archivos secuenciales pueden almacenarse en dispositivos de acceso serial o directo. Con frecuencia los dispositivos de acceso serial son considerablemente menos caros que los dispositivos de acceso directo en un sistema de cmputo, pero de hecho, los dispositivos de almacenamiento de acceso directo en una computadora siempre proporcionan mayor capacidad de almacenamiento y acceso ms rpido que los dispositivos de acceso serial.

Operacin sobre archivos secuenciales Para leer un archivo secuencial, el sistema siempre comienza al principio del archivo y lee un registro a la vez hasta llegar al registro deseado. Por ejemplo si ocurre que el registro particular es el dcimo en un archivo, el sistema comienza en el primer registro y lee hacia delante un registro a la vez hasta llegar al dcimo.

Actualizacin en archivos secuenciales.

Un archivo maestro representa el punto esttico de algn aspecto de alguna organizacin en un tiempo dado. Los cambios en la organizacin se reflejan en el archivo maestro, y para llevar a cabo la actualizacin del archivo maestro se tendrn que realizar los tipos de actualizacin: Insertar un nuevo registro. Borrar un registro. Modificar un registro.Al estar usando un archivo secuencial como archivo maestro, el realizar las operaciones de actualizacin se llevara con el auxilio de un archivo de transacciones, debido a que se realizar el proceso en lote para que sea ms eficiente.Creacin de archivos secuenciales.La creacin de un archivo secuencial se realiza agregando registros al final del archivo, no importa el medio de entrada de datos. El archivo secuencial puede ser almacenado en cintas o en discos magnticos. Un archivo secuencial puede tener registros fijos o variables, la declaracin del archivo y la definicin del registro depender del lenguaje de programacin que se vaya a usar. Clasificacin de los archivos secuenciales.Normalmente el uso de los archivos secuenciales se da en procesos en lote, donde se ha hecho notar que son eficientes cuando se llevan a cabo diversas operaciones sobre una gran cantidad de registros o de todo el archivo. Esta eficiencia se logra con una accin: la clasificacin, proceso que no es exclusivo de los archivos secuenciales, pero si necesaria para diversas operaciones.La clasificacin es el proceso de examinar los registros en un archivo y ponerlos en una secuencia ascendente o descendente basada en el valor de uno o ms campos del registro.

IndexadaArchivo Secuencial-Indexado.Se utiliza este tipo de organizacin de archivo cuando existe la necesidad tanto de accesar los registros secuencialmente, por algn valor de llave, como de accesarlos individualmente. Un archivo secuencial indexado proporciona laCombinacin de tipos de acceso que manejan un archivo secuencial y un archivo relativo o de acceso directo.

Estructura lgica de Archivo Secuencial-Indexado

En este tipo de organizacin de archivos se dispone de una tabla en que aparecen ordenados secuencialmente los nmeros de la clave del archivo y asociados a cada uno de ellos de da la direccin del registro correspondiente.Esta tabla acta como un ndice

Directa o Relativa

Emplean claves numricas, por lo que los registros poseen direcciones numricas enteras, de forma que la secuencia lgica de almacenamiento de los registros en el fichero coincide con la secuencia fsica de almacenamiento de los registros sobre el dispositivo, ya que, las posiciones fsicas de cada registro coinciden con el valor de la clave. En este tipo de organizacin no se puede almacenar un registro cuya clave este por encima de los lmites mximos del fichero, ya que cada direccin slo puede ser ocupada por un registro.Ventajas y Desventajas de cada organizacin

Las ventajas de este tipo de organizacin de ficheros secuencial son: Aprovecha al mximo el soporte, al no dejar hueco entre los registros Rpido acceso al registro siguiente. Por lo que he hace ideal cuando en cada operacin de actualizacin o consulta e van a procesar la mayora de los registro. E puede utilizar cualquier tipo de registro. De longitud fija, variable o indefinida. E pueden grabar en cualquier tipo de soporte, tanto en secuenciales como direccionales. Todos los lenguajes de programacin disponen de instrucciones para trabajar con este tipo de fiches.Desventajas este tipo de organizacin de ficheros directa o relativa son: El nico modo de acceso es el acceso secuencial, por lo que para leer el registro que ocupe la posicin n es necesaria leer lo n-1 registros anteriores. No se pueden insertar registro entre los que ya estn grabados. Si el fichero est grabando en un soporte secuencial, para poder hacer modificaciones o borrado de registros es necesario hacer una copia del fichero en un fichero nuevo. Las ventajas de este tipo de organizacin de ficheros indexado son:

Secuencialmente por orden lgico y tambin procesarlo al azar. La organizacin secuencial indexada es conveniente para archivos con mediana volatilidad, actividad variable y tamao relativamente estable.

Las desventajas de este tipo de organizacin de ficheros indexado son: Los ndices requieren espacio extra, se necesita una doble bsqueda; una en el ndice y otra en el archivo. Los registros deben ser de longitud fija. El archivo debe estar separado por un dispositivo de acceso aleatorio; no se puede utilizar en cintas magnticas.

Las ventajas de este tipo de organizacin de ficheros directa o relativa son:

Acceso directo a los registros.

Permite realizar operaciones de escritura y lectura simultneamente, ya que primero se localiza el registro y luego se realiza la operacin deseada: insercin, eliminacin, consulta, modificacin, etc.

Desventajas este tipo de organizacin de ficheros directa o relativa son:

Al realizar un acceso secuencial, en una consulta sobre todos los registros del fichero hay que recorrer todas las direcciones aunque estn vacas.

Deja gran cantidad de posiciones libres de memoria dentro del fichero, debido a que las claves de los registros pueden indicar posiciones de almacenamiento no contiguas, lo que implica una falta de aprovechamiento del soporte de almacenamiento respecto al nmero real de registros almacenados.

Se producen colisiones, ya que puede existir ms de un registro con la misma clave. Esto causa errores, pues supone la posibilidad de almacenar en el fichero un registro repetido.Mtodos de AccesoSecuencialMtodo Secuencial: El mtodo de acceso secuencial es la forma en que la computadora accede a los datos de manera que es necesario interactuar directamente con los datos el espacio fsico dnde se encuentran otros datos. Para entender en concepto, sigamos la siguiente analoga: Imaginemos un tnel, en el que se encuentran de pie varias personas. Si tu intentas ir con alguno de ellos que se encuentre lejos de ti, tienes que necesariamente interactuar con las dems personas para llegar hacia l.El acceso secuencial es similar, si la computadora requiere un dato especfico, tiene que recorrer el espacio dnde se encuentra otra informacin hasta llegar al lugar dnde est el dato requerido.Otros ejemplos de acceso secuencial: el tocadiscos, lectora de cinta de respaldo, grabador de discos pticos (cuando se graba un disco ptico, como un CD o un DVD, el lser va guardando la informacin en forma de espiral sobre la superficie del disco duro, escribiendo un dato a continuacin del otro), los casetes (para acceder a una porcin de lo almacenado es necesario recorrer una parte de la cinta antes).

Azar o directo Mtodo de azar o directo La organizacin directa es aquella que permite un posicionamiento sobre registros especficos al localizar una clave.Permite agilizar la localizacin de un dato en un archivo determinado al no requerirse el procesamiento de los registros contiguos previos.Las variantes para implementar un acceso directo son: Archivo clasificado para bsqueda binaria: se requiere que el archivo principal se mantenga ordenado respecto a la clave en todo momento y se usa cuando el tiempo de bsqueda tiene una prioridad alta Ajuste de clave a esqueleto: se utiliza cuando la clave contiene dgitos opcionalmente caracteres alfabticos Transformacin de claves hashing : se descompone la clave en mltiples fragmentos Relacin directa clave- direccin : se aplica para sistemas donde los elementos reciben un folio consecutivo como clave

Conclusin

Despus de desarrollado en trabajo, hemos podido comprender lo complejo que sera la bsqueda de elementos, sino estuvisemos la ayuda de los diferentes mtodos. Para un mejor manejo, de la forma de bsqueda tenemos la organizacin de los archivos, y vemos como la forma secuencial dentro de los tipos de organizacin de archivos, es una de la ms extensa y ms desarrollada, tambin tenemos la directa o relativa este tipo de organizacin no se puede almacenar un registro cuya clave este por encima de los lmites mximos del fichero, ya que cada direccin slo puede ser ocupada por un registro.

Bibliografa

Alonso, J. (s.f.). Informtica. Claves. Colisiones. Transformacin. Carga y efectividad. Buckets (compartimentos). Obtenido de http://html.rincondelvago.com/transformacion-de-claves_hashing.htmlluismy_martinez. (8 de Mayo de 2007). Slideshare. Obtenido de http://www.slideshare.net/luismy_martinez/archivo-secuencialMartn, F. (s.f.). Obtenido de http://fcasua.contad.unam.mx/apuntes/interiores/docs/98/3/informatica3.pdfStellar, F. (s.f.). El ricon universitario. Obtenido de http://www.e-mas.co.cl/categorias/informatica/hashing.htm