La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

TRATAMIENTO DE ARCHIVOS. Uso basico de archivos: consultas. Actualizacion. Otros algoritmos: Partición de archivos. Fusión de archivos. Clasificación.

Presentaciones similares


Presentación del tema: "TRATAMIENTO DE ARCHIVOS. Uso basico de archivos: consultas. Actualizacion. Otros algoritmos: Partición de archivos. Fusión de archivos. Clasificación."— Transcripción de la presentación:

1 TRATAMIENTO DE ARCHIVOS

2 Uso basico de archivos: consultas. Actualizacion. Otros algoritmos: Partición de archivos. Fusión de archivos. Clasificación de archivos

3 Partición de archivos A partir de un archivo maestro se genera uno o mas archivos auxiliares. La información del archivo maestro se replica. Criterios de partición a)Partición según el contenido de un campo clave. b)Partición por secuencia

4 Partición según el contenido de un campo clave Identificar el campo clave de partición (c.c.p.) El c.c.p. Debe ser un campo que toma un valor de un conjunto reducido de valores. La cantidad máxima de archivos auxiliares a generar esta en correspondencia con el universo de valores del campo clave de partición. Cada posible valor que toma el campo clave de partición tiene un archivo auxiliar asociado C.C.P.= sexo

5 Partición por secuencia Solo se genera dos archivos auxiliares.

6 Fusión/Mezcla de Archivos Se reúne en un solo archivo la información de dos o más archivos. 1.Mezcla/Fusion Total o Secuencial Se reúne la información de n archivos en uno solo de manera secuencial. Sea : f1,f2…….fn archivos a fusionar :f archivos resultante Vaciar la información de los archivos f1,f2…..fn en f uno detrás de otro.

7 2. Mezcla / fusion de archivos ordenados. El archivo resultante debe estar ordenado. Sea f1, f2 :archivos ordenados a fusionar f: archivo resultante 2 algoritmos basicos: Por control de fin de archivo. Por control de centinela.

8 Mezcla de archivos ordenados por control de fin de archivo. Tiene 2 etapas : 1 ra Etapa: Participan los 2 archivos f1,f2 (tienen registros). Se dispone en la memoria simultáneamente 2 registros (uno de f1 y otro de f2) se graba en f el menor de ambos registros, se debe leer el archivo(f1 o f2) que era propietario del registro grabado. Hasta que uno de los archivos se termine. 2 da Etapa: Participa un solo archivo (f1 o f2) vaciar de manera directa los registros del archivo (f1 o f2) que no se termino.

9 f1ff Primera etapa Segunda etapa

10 Inicio mezclacfa(f1,f2,f) Abrir f1,f2 para lectura Abrir f para escritura Si no eof(f1) entonces Leer f1, reg1 fin si Si no eof(f2) entonces Leer f2, reg2 fin si mientras no eof(f1) y no eof(f2) repetir Si gre1< reg2 entonces Grabar f, reg1 Leer f1, reg1 Si no Grabar f, reg2 Leer f2, reg2 Fin si Fin mientras Mientras no eof(f1) repetir Grabar f, reg1 Leer f1, reg1 Fin mientras Mientras no eof(f2) repetir Grabar f, reg2 Leer f2, reg2 Fin mientras Cerrar f,f1,f2 Final

11 Mezcla de archivos ordenados por control de Centinela. considera la primera etapa del anterior algoritmo. Supuesto.- Al final de f1 y f2 se tiene un registro especial [centinela] de referencia cuyo valor es muy alto y no forma parte de la información del archivo. 1 ra Etapa.- Participan los 2 archivos f1 y f2. Finaliza cuando en la memoria se tiene los dos centinelas de (f1 y f2)

12 Inicio cantinela(f1,f2,f) Abrir f1, f2 para lectura Abrir f para escritura Leer f1, reg1 Leer f2, reg2 Mientras reg1<>9999 o reg2<>9999 repetir Si reg1

13 3. Mezcla por Secuencias. De tamaño fijo ´p´ Se tiene dos variantes: sin ordenar (intercalado). Ordenando. a)Sin ordenar. Secuencias de tamaño fijo ´p´ Se toma en forma intercalada p registros de f1 o f2 y se graba en f. Hasta reunir en f todos los registros de f1 y f2. Los registros del archivo que no se termina, se vacía a f de manera directa Para p=2 En la practica no se emplea

14 b) Ordenando. Supuesto. En f1 y f2 se tienen grupos de ´p´ registros ordenados. Se toma en forma simultanea p registros de f1 y f2 y se los graba en f ordenando. Hasta reunir en f todos los registros de f1 y f 2.

15 Implementación: con 5 ARCHIVOS f,f1,f2: archivos corrientes f1aux,f2aux:Archivos de apoyo -Llevar p registros a f1aux de f1 y de f2 a f2aux -Aplicar el algoritmo de fusión de archivos ordenados a f1aux y f2aux con el archivo resultante f

16 4. MEZCLA POR SECUENCIAS.ORDENADAS. f1,f2 : Archivos desordenados f: Archivo resultante Se tiene dos variantes: sin ordenar (intercalado). Ordenando a)Sin ordenar. INTERCALADO -En forma alternativa o intercalada se toma grupos ordenados de registros de f1 o f2 y se los graba en f. -Hasta reunir en f todos los registros de f1 y f2. -Los registros del archivo que no se termina se vacía a f de manera directa

17

18 b) Ordenando. En forma simultanea se toma grupos ordenados de registros de f1 y f2 y se los graba en f, ordenando

19 Implementación: con 5 ARCHIVOS f,f1,f2: archivos corrientes f1aux,f2aux:Archivos de apoyo -Llevar grupos ordenados de registros a f1aux de f1 y de f2 a f2aux -Aplicar el algoritmo de fusión de archivos ordenados a f1aux y f2aux con el archivo resultante f

20 -Función para copiar un grupo ordenado de un archivo a otro archivo. Inicio copiar(f, reg,faux) //supuesto f esta abierto Abrir faux para escritura sw=1 mientras no eof(f) y sw=1 repetir grabar faux, reg regaux=reg leer f, reg si reg< regaux entonces sw=0 fin si fin mientras cerrar faux final

21 Función para mezclar dos archivos por secuencias ordenadas ordenando inicio mezclar (f1,f2,f) abrir f1 y f2:para lectura abrir f : para escritura mientras no eof(f1) y no eof(f2) repetir leer f1, reg1 leer f2, reg2 copiar (f1, f1aux, reg1) copiar(f2,f2aux, reg2) centinela( f1aux, f2aux, f) fin mientras vaciar registros del archivo que no se termino de manera directa cerrar f1,f2,f final


Descargar ppt "TRATAMIENTO DE ARCHIVOS. Uso basico de archivos: consultas. Actualizacion. Otros algoritmos: Partición de archivos. Fusión de archivos. Clasificación."

Presentaciones similares


Anuncios Google