Escenario: Descarga de datos de Db2 con Optim High Performance Unload

Este escenario describe cómo un DBA puede utilizar Optim™ High Performance Unload para descargar una tabla en un formato que pueda ser cargado por la utilidad Db2® Load.

Acerca de esta tarea

Una empresa bancaria con sede en Estados Unidos va a abrir una sucursal europea y necesita transferir las cuentas de clientes a una base de datos situada en Europa. El administrador de bases de datos de la sucursal americana, Steve, necesita descargar la tabla CUSTOMER de la base de datos PROD_DB para que sus compañeros europeos puedan cargar los datos en su propia base de datos.

Todas las columnas de la tabla CUSTOMER contienen fechas con el formato MM-DD-AAAA, y Steve desea descargar estos registros utilizando el formato europeo DD-MM-AAAA. La tabla contiene más de 15 millones de filas y Steve desea descargar los datos lo más rápidamente posible. Steve utilizará Optim High Performance Unload para lograr este objetivo.

Cuando Steve cree un archivo de control para Optim High Performance Unload, tendrá en cuenta los siguientes puntos:
  • Optim High Performance Unload tiene una ventaja sobre la utilidad de exportación de Db2 cuando Optim High Performance Unload necesita descargar grandes cantidades de datos.
  • Cualquier cláusula SELECT complicada que requiera acceso a un índice de Db2 (como las cláusulas ORDER BY y WHERE) ralentiza el proceso de descarga porque Optim High Performance Unload debe pasar la sintaxis a Db2 para su interpretación.

Las instrucciones siguientes describen los pasos que Steve emprenderá para descargar la tabla CUSTOMER:

Procedimiento

  1. Cree un archivo de control de Optim High Performance Unload, donde especifique las opciones de descarga.
    Por ejemplo:
    GLOBAL CONNECT TO PROD_DB DB2 NO
    FLUSH BUFFERPOOLS YES
    LOCK YES
    ;
    UNLOAD TABLESPACE
    SELECT * FROM "STEVE"."CUSTOMER";
    OUTFILE ("unload_dir\customer.out" REPLACE)
    LOADFILE ("unload_dir\customer.load")
    FORMAT DELIMITED
    DATE DATE_E
    ;
    
    Cuando cree el archivo de control, considere las opciones siguientes:
    • Utilice la opción NO de DB2 para asegurarse de que la descarga falla si la sintaxis de la cláusula SELECT es demasiado complicada para que Optim High Performance Unload procesar. Esta opción garantiza un rendimiento óptimo al asegurar que la descarga se realiza en su totalidad por Optim High Performance Unload.
    • Utilice la combinación de las opciones FLUSH BUFFERPOOLS YES LOCK YES para garantizar una descarga coherente. Las páginas de almacenamiento intermedio relacionadas se desechan al disco antes de iniciar la descarga y no se permite realizar modificaciones a la tabla hasta que se complete la descarga.
    • Especifique el nombre del archivo de carga en la cláusula LOADFILE. Puede utilizar este archivo con el programa de utilidad Db2 Load para cargar los datos descargados.
    • Puede utilizar DELIMITED o ASC en la cláusula FORMAT para poder cargar en otra base de datos los datos descargados.
    • Utilice la opción OPTIONS DATE DATE_E para convertir todas las fechas contenidas en los datos al formato DD-MM-AAAA.
    Importante: Asegúrese de que tiene privilegios de lectura y escritura en el directorio donde se almacenan el archivo de carga y los archivos de salida.
  2. Guarde el archivo de control en un directorio del sistema donde reside la base de datos.
    Por ejemplo, C:\HPU_ControlFiles\scenario1.ctr.
  3. Abra la línea de comandos y ejecute el comando Optim High Performance Unload con el archivo de control:
    db2hpu -f C:\HPU_ControlFiles\scenario1.ctr

Resultados

Optim High Performance Unload descarga la tabla CLIENTES de la base de datos bancaria y convierte todas las columnas que contienen fechas al formato de fecha europeo. Steve puede ahora enviar el archivo de salida customer.out y el archivo de carga customer.load a sus compañeros europeos para que puedan cargar los datos en su propia base de datos.