Datapump 05 - Cómo funcionan los parámetros DUMPFILE, FILESIZE Y PARALLEL en un expdp.
DUMPFILE, FILESIZE y PARALLEL son parámetros dentro de la herramienta expdp, los cuales tienen una estrecha relación y se llegan afectar entre sí. En este post vamos a descubrir esa relación.
Comencemos:
DUMPFILE indica el nombre del archivo o los archivos generados (dump file), incluso también se puede definir la ruta donde se van a almacenar a través de un objeto directorio. Tenemos el comodín “%U” si lo colocamos en el nombre del archivo va a sustituir ese comodín por un valor entero de forma consecutiva desde el 01 hasta el 99 según lo requiera.
PARALLEL indica cuántos procesos van a trabajar simultáneamente para cargar los datos en los archivos (dump file).
(Nota: El paralelismo únicamente funciona en la versión Enterprise Edition)
FILESIZE especifica el tamaño máximo que pueden alcanzar los archivos generados (dump file)
Ejemplos:
Supongamos vamos a exportar una tabla de aproximadamente 240MB, veamos que sucede en diferentes casos:
Caso 01:
En el siguiente ejemplo se van crear 5 archivos (dump file), 4 de 50M y uno de 40 MB. Los archivos creados serían expTAB01.dmp, expTAB02.dmp, expTAB03.dmp, expTAB04.dmp y expTAB05.dmp
Con estos parámetros se crearían 3 archivos de 80MB.
En este caso se crearían solamente 2 archivos de 120 MB en los dos directorios diferentes.
Al estar los dos parámetros PARALLEL y FILESIZE se crearían 9 archivos 6 archivos de 30MB y 3 archivos de aproximadamente 27 MB. Cuando se trabaja en PARALLEL el datapump va a tratar de no dejar ningún proceso ocioso por lo cual va a forzar que se trabajen en archivos de 3 en 3 sin sobrepasar lo especificado en el parámetro FILESIZE.
Aquí se están especificando dos directorios diferentes DIR_01 y DIR_02, en esta situación se van a crear 4 archivos de 60MB dos en cada directorio.
En este caso se definen 3 directorios, nombre de archivos con el comodín %U, un filesize de 25MB y un parallel de 3, entonces se van a crear 12 archivos, 4 archivos en cada directorio, los primeros 9 archivos con 25MB (un total de 225MB) y los últimos tres archivos distribuidos en los tres directorios con un tamaño aproximado de 5MB para así completar los 240 MB de datos.
Al final de la ejecución del expdp se va a mostrar una lista de todos los archivos creados (dump file) por ejemplo para el último caso:
Espero les sea útil, nos leemos en el próximo post.
Comencemos:
DUMPFILE indica el nombre del archivo o los archivos generados (dump file), incluso también se puede definir la ruta donde se van a almacenar a través de un objeto directorio. Tenemos el comodín “%U” si lo colocamos en el nombre del archivo va a sustituir ese comodín por un valor entero de forma consecutiva desde el 01 hasta el 99 según lo requiera.
PARALLEL indica cuántos procesos van a trabajar simultáneamente para cargar los datos en los archivos (dump file).
(Nota: El paralelismo únicamente funciona en la versión Enterprise Edition)
FILESIZE especifica el tamaño máximo que pueden alcanzar los archivos generados (dump file)
Ejemplos:
Supongamos vamos a exportar una tabla de aproximadamente 240MB, veamos que sucede en diferentes casos:
Caso 01:
En el siguiente ejemplo se van crear 5 archivos (dump file), 4 de 50M y uno de 40 MB. Los archivos creados serían expTAB01.dmp, expTAB02.dmp, expTAB03.dmp, expTAB04.dmp y expTAB05.dmp
DUMPFILE=expTAB%U.dmp FILESIZE=50MCaso 02:
Con estos parámetros se crearían 3 archivos de 80MB.
DUMPFILE=expTAB%U.dmp PARALLEL=3Caso 03:
En este caso se crearían solamente 2 archivos de 120 MB en los dos directorios diferentes.
DUMPFILE=DMPDIR1:expTAB_A%U.dmp,DMPDIR2:expTAB_B%U.dmpCaso 04:
Al estar los dos parámetros PARALLEL y FILESIZE se crearían 9 archivos 6 archivos de 30MB y 3 archivos de aproximadamente 27 MB. Cuando se trabaja en PARALLEL el datapump va a tratar de no dejar ningún proceso ocioso por lo cual va a forzar que se trabajen en archivos de 3 en 3 sin sobrepasar lo especificado en el parámetro FILESIZE.
DUMPFILE=exp%U.dmp PARALLEL=3 FILESIZE=30MCaso 05:
Aquí se están especificando dos directorios diferentes DIR_01 y DIR_02, en esta situación se van a crear 4 archivos de 60MB dos en cada directorio.
DUMPFILE=DIR_01:expTAB_A%U.dmp,DIR_02:expTAB_B%U.dmp FILESIZE=60MCaso 06:
En este caso se definen 3 directorios, nombre de archivos con el comodín %U, un filesize de 25MB y un parallel de 3, entonces se van a crear 12 archivos, 4 archivos en cada directorio, los primeros 9 archivos con 25MB (un total de 225MB) y los últimos tres archivos distribuidos en los tres directorios con un tamaño aproximado de 5MB para así completar los 240 MB de datos.
DUMPFILE=DIR_01:expTAB_A%U.dmp, DIR_02:expTAB_B%U.dmp, DIR_03:expTAB_C%U.dmp PARALLEL=3 FILESIZE=25M
Al final de la ejecución del expdp se va a mostrar una lista de todos los archivos creados (dump file) por ejemplo para el último caso:
Dump file set for SYSTEM.EXPFULL is: /workarea/dp_dir_01/expTAB_A_01.dmp /workarea/dp_dir_02/expTAB_B_01.dmp /workarea/dp_dir_03/expTAB_C_01.dmp /workarea/dp_dir_01/expTAB_A_02.dmp /workarea/dp_dir_02/expTAB_B_02.dmp /workarea/dp_dir_03/expTAB_C_02.dmp /workarea/dp_dir_01/expTAB_A_03.dmp /workarea/dp_dir_02/expTAB_B_03.dmp /workarea/dp_dir_03/expTAB_C_03.dmp /workarea/dp_dir_01/expTAB_A_04.dmp /workarea/dp_dir_02/expTAB_B_04.dmp /workarea/dp_dir_03/expTAB_C_04.dmp
Espero les sea útil, nos leemos en el próximo post.
Comments
Post a Comment