Operacion entre archivos

Solo disponible en BuenasTareas
  • Páginas : 8 (1777 palabras )
  • Descarga(s) : 9
  • Publicado : 10 de abril de 2010
Leer documento completo
Vista previa del texto
Operaciones entre archivos.
Apareo.
Se tiene un archivo Maestro y uno o más archivos de Novedades. Los archivos están ordenados por la misma clave y tienen el mismo formato de registro, con la salvedad de que el registro del archivo de Novedades incluye el código de la operación a realizar (A: alta, B: baja, M:modificación). Algoritmo: Busco mínimo, si el mínimo es: Maestro Grabo en salidaregistro M, avanzo M. Novedades A: grabo en salida registro N, avanzo N. B: informo error de borrado, avanzo N. M: informo error de modificación, avanzo N. Ambos A: informo error de inserción, avanzo N y M. B: avanzo N y M. M: grabo en salida registro N, avanzo N y M. Cuando se tienen varios archivos de novedades el registro se actualiza en memoria y recién se graba en el archivo de salida una vez quecambia la clave mínima. Hay que tener en cuenta los criteríos para procesar novedades sobre la misma clave.

Intersección. Se tienen dos o más archivos con registros de igual formato, y ordenados por la misma clave, y se quiere grabar en el archivo de salida únicamente los registros que figuren en todos los archivos de entrada. Algoritmo: Busco Mínimo Al menos 1 archivo sin clave Mínima. Todoslos archivos con clave mínima Avanzo los que tienen clave minima. Grabo el registro en salida y avanzo todos.

Cuando uno de los archivos llega al EOF implica la finalización del proceso.

Unión. Se tienen dos o más archivos con registros de igual formato, y ordenados por la misma clave, y se quiere grabar en el archivo de salida únicamente los registros que figuren en todos los archivos deentrada. Algoritmo: Busco Mínimo En los archivos con clave mínima Grabo el registro en salida y los avanzo.

Cuando todos los archivos llegan al EOF implica la finalización del proceso.

Merge. Se tiene un determinado número de archivos (particiones) ordenados por la misma clave. Se quiere obtener un único archivo ordenado por la clave. Merge Balanceado N-Vías. Se pueden tener N archivosabiertos, se usan N/2 archivos de Output y el resto de Input. Si N es impar la cantidad de archivos de Input es mayor que la de Output en uno. Ejemplo: N = 6, Cantidad de particiones: 13.
Input 1 P01 P04 P07 P10 P13 P01-09 Input 2 P02 P05 P08 P11 P10-13 Input 3 P02 P06 P09 P12 Output 1 P01-03 P10-12 P01-13 Output 2 P04-06 P13 Output 3 P07-09

Una partición se lee múltiples veces.

Optimal Merge.Mantiene una lista ordenada de todas las particiones según el tamaño de la partición. Se pueden tener abiertos N archivos. Se toman las N – 1 particiones de menor tamaño para Input y 1 partición de Output. Las particiones pequeñas son las que van a ser leídas más de una vez (de ser necesario), y se deja las particiones de mayor tamaño para el final. Ejemplo: N = 3, Cantidad de particiones: 6Long. 10 8 5 3 1 2 5 10 18 28 Ventajas: Al tener en cuenta las longitudes se leen menos registros. Desventajas: Mantenimiento de la lista. 1

Merge Polifásico. Se pueden tener abiertos N archivos. Se toman N – 1 particiones para Input y 1 partición de Output. La cantidad de particiones tiene que pertenecer a la serie de Fibonacci de orden N-1 Particiones Dummy (Para llevar el número de particionesa un elemento de la serie de Fibonacci). Para 32 particiones de tamaño n (4 vías): 57-32 = 25 dummies. f(3) = 1 1 1 3 5 9 17 31 57 1 3 5 9 17 31 57 0 1 2 4 0 7 20 0 1 2 0 4 11 24 0 1 0 2 6 13 0 1 0 1 3 7 0 13

Lecturas: 7*2n

13*2n + 4*3n

1*3n + 1*5n + 2*6n 1*8n + 1*10n 1*16n 1*32n

One Way Merge.
Todas las particiones (con sus datos ordenados) están grabadas en un mismo archivo. Secuenta con la información de donde comienza y donde termina cada partición. Se realiza el mismo procedimiento de un merge convencional pero tomando los registros de un mismo archivo en lugar de muchos. Se usa con archivos relativos o streams y solo requiere 2 vias (una de entrada y una de salida)

Partición 1 Archivo Partición 2 Ordenado
Registro con menor clave

Partición 3

Partición 4...
tracking img