Organizaci n relativa acceso directo
Download
1 / 20

- PowerPoint PPT Presentation


  • 75 Views
  • Uploaded on

ORGANIZACIÓN RELATIVA ACCESO DIRECTO. Concepto Funciones Hash. Organización Relativa.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '' - scarlet-christensen


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Organizaci n relativa acceso directo

ORGANIZACIÓN RELATIVAACCESO DIRECTO

Concepto

Funciones Hash


Organizaci n relativa acceso directo

Organización Relativa

Es aquella organización que plantea, que el archivo se mantiene organizado en modo directo debido a que el orden físico no corresponde con el orden lógico. Para accesar a los datos almacenados en el archivo se hace de manera directa por la posición que ocupan en el archivo.

Los registros se deben almacenar en un medio direccionable y tener un campo clave el cual será transformado para ser utilizado como dirección de almacenamiento. Por lo tanto debe existir la correspondencia entre los valores clave y las direcciones disponibles en el medio de almacenamiento


Organizaci n relativa acceso directo

  • Ventajas

  • Los registros se pueden leer y escribir en cualquier orden y posición

  • Es mas rápido el acceso a los registros

  • Se pueden realizar accesos secuenciales

  • Los registros se actualizan en el mismo archivo en tiempo real

  • Desventajas

  • Se requiere programar la relación entre el contenido del registro y la posición que ocupa.

  • Existen huecos libres dentro del medio de almacenamiento y entre registros

  • El algoritmo para la conversión de las claves y para el almacenamiento deben ser creados de modo que dejen el menor numero de huecos libres y se genere el menor numero de colisiones de dirección.



Funciones hash

Funciones Hash

Dada la siguiente expresión

Dirección Relativa  Dirección Absoluta

A toda dirección relativa corresponde una dirección absoluta, es decir a cada registro a almacenar de acuerdo a un campo clave, le corresponde una dirección absoluta en el medio de almacenamiento. Por lo tanto se debe transformar la clave en un dirección, por medio de las funciones Hash .

h(x)


Organizaci n relativa acceso directo

Aritmética Modular

Se elige un número primo, o con pocos divisores, mayor que el número N de registros a almacenar.

La función se define:

h(k) = k mod m para que las direcciones vayan de 0 a m-1

Ó

h(k) = k mod m para que las direcciones vayan de 1 a m

En esta formula m ha de ser primo para minimizar el número de colisiones


Organizaci n relativa acceso directo

Ejemplo:

En un archivo se almacenaran 996 direcciones (registros), para esto se elige un número primo cercano 997, aplicando la formula se obtiene:

Para : Fórmula Resultado

245643 h(245643) = 245643 mod 997 = 381

245981 h(245981) = 245981 mod 997 = 719

257135 h(257135) = 257135 mod 997 = 906


Organizaci n relativa acceso directo

Plegamiento

Consiste en partir la clave k en varias partes k1,k2,k3..kn, y la combinación de las partes de un modo conveniente (con frecuencia sumando las partes) da como resultado la dirección del registro.

Cada parte ki, a excepción de la última tiene el mismo número de dígitos que la dirección especificada.

La función hash es:

h(k) = k1,k2,k3..kn


Organizaci n relativa acceso directo

Ejemplo :

El archivo de alumnos con el campo clave de 6 dígitos, este se puede dividir en grupos de tres y tres dígitos. Aplicando al función :

Para : Formula Resultado

245643 h(245643) = 245 + 643 = 888

245981 h(245981) = 245 + 981 = 1226  queda 226 ( se ignora el 1)

257135 h(257135) = 257 + 135 = 392


Organizaci n relativa acceso directo

O a la inversa usando las partes pares k2,k4 antes de sumarlas para obtener otras direcciones.

Para : Formula Resultado

245643 h(245643) = 245 + 346 = 591

245981 h(245981) = 245 + 189 = 434

257135 h(257135) = 257 + 531 = 788


Organizaci n relativa acceso directo

Mitad del cuadrado sumarlas para obtener otras direcciones.

Consiste en calcular el cuadrado de la clave k y la dirección del registro viene representada por los dígitos de k2 que ocupan cierta posición.

La función hash es:

h(k) 2 = c Donde c se forma por los dígitos de k2 que están en las posiciones P1,P2,..,Pi


Organizaci n relativa acceso directo

Ejemplo : sumarlas para obtener otras direcciones.

El archivo de alumnos con el campo clave de 6 dígitos, se escogen los dígitos 4to, 5to y 6to por la derecha.

Para : Fórmula Resultado

245643 h(245643)2 = 60340483449 483

245981 h(245981)2 = 60506652361 652

257135 h(257135)2 = 66118408225 408


Organizaci n relativa acceso directo

Resolución de Colisiones sumarlas para obtener otras direcciones.

Las funciones hash no siempre ofrecen direcciones distintas, cuando se presentan direcciones repetidas se trata entonces de una colisión, para resolver esto se deben seguir métodos de solución.

Direccionamiento abierto

Se trata de buscar la primera dirección disponible después de la que dio como resultado la función hash.


Organizaci n relativa acceso directo

  • El problema de este método al ser lineal, llega a agrupar los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de :

    • Prueba Cuadrática

    • h(k) = p donde p se repite para otro valor clave k,

    • entonces : p,p+1,p+2,p+3…p+n

    • p,p+1,p+4,p+9..p+i2


Organizaci n relativa acceso directo

  • Ejemplo: los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de :

  • Suponiendo que se obtiene lo siguiente:

  • k formula p

  • 245643 h(245643)2 = 60340483449 483

  • y p colisiono, entonces la búsqueda de lugar libre seria

  • 438+12 = 439 o 438+22 =442 o 438+32 = 447


Organizaci n relativa acceso directo

  • Prueba doble direccionamiento hash los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de :

  • En este método se aplica una segunda función hash para k, de manera que :

  • Primera hash h(k) = p y existe colisión, entonces

  • segunda hash h(k) = p’ por lo tanto la

  • dirección absoluta p + p’

  • En caso de seguir la colisión, se trataría lo siguiente:

  • p, p+p’, p+2p’, p+3p’

  • y así sucesivamente


Organizaci n relativa acceso directo

Direccionamiento por encadenamiento o cerrado los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de :

En este método el problema de colisiones se resuelve utilizando listas ligadas, que contendrán todos los registros que tienen la misma dirección


Organizaci n relativa acceso directo

  • Operaciones de actualización: los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de :

  • Altas

  • Bajas

    • Individual

    • General

  • Consulta

    • Individual

    • General

  • Modificación

    • Individual

    • General

  • Consideraciones

  • Validar : Entrada y salida de datos

  • Validar : Duplicación de registros

  • Generar posición

  • Controlar colisiones