Mandatos para el mantenimiento de datos y de DB2

La conservación de datos le permite controlar cómo aparecen los datos en la base de datos de destino cuando modifica las estructuras de datos o en los metadatos, o cuando migra datos de una tabla a otra.

Optim Database Administrator soporta alters ampliados. Los alters ampliados son necesarios cuando no se puede utilizar una sentencia ALTER para implementar los cambios fácilmente. Un alter ampliado guarda y conserva los datos de la tabla, descarta la tabla, vuelve a crearla y, posteriormente, vuelve a cargar lo datos. Además, también es necesario guardar y conservar los datos cuando migra datos de una tabla a otra.

Al pulsar el enlace Previsualizar mandatos en el Editor de scripts de gestión de cambios, Optim Database Administrator genera los mandatos para los cambios. Además, el producto genera automáticamente mandatos de descarga y recarga cuando detecta mandatos de descarga y recarga al detectar que los datos han de conservarse. Los mandatos de mantenimiento de DB2 se generan también automáticamente. Entonces puede pulsar Opciones de datos para iniciar el asistente para Personalizar conservación de datos si desea modificar los mandatos. El asistente le guía a través del proceso de modificar los métodos de descarga y recarga que debe utilizar, de modificar los mandatos de descarga y los mandatos de recarga, y de cambiar los mandatos de mantenimiento de DB2 generados.

La conservación de datos resulta útil en las siguientes situaciones:
Cuando elimina una tabla
Cuando elimina una tabla, es posible que desee almacenar los datos de la tabla en un archivo para su futuro uso, sobre todo en caso que necesite deshacer los cambios.
Cuando crea una tabla
Al crear una tabla, es posible que desee llenar la tabla con datos procedentes de otra tabla. Puede migrar datos a la tabla utilizando la acción Migrar datos del elemento de menú Gestión de cambios. Después, puede personalizar los datos que desea cargar pulsando Opciones de datos en la sección Mandatos del Editor de scripts de gestión de cambios. Se inicia el asistente para Personalizar conservación de datos. El asistente le guiará en el proceso de correlacionar los datos que desea descargar de una tabla y cargar en la nueva tabla.
Consejo: Para llenar una nueva tabla con datos de un archivo, puede utilizar el programa de utilidad LOAD o IMPORT. En la Lista de objetos, pulse con el botón derecho en la nueva tabla y seleccione la acción adecuada en el menú.
Cuando realiza un cambio destructivo
Cuando realiza un cambio para el que es necesario descargar y volver a crear una tabla, deberá descargar los datos de la tabla y volverlos a cargar.
Migrar datos de una tabla a otra
Cuando migra datos, necesita descargar los datos desde la tabla de origen y recargarlos en la tabla de destino.

En la página Información de descarga y recarga del asistente para Personalizar conservación de datos, puede realizar varias acciones. Puede seleccionar una tabla y elegir el recuadro de selección Cambiar consulta para personalizar el mandato de descarga para la tabla. De forma similar, puede marcar el recuadro de selección Cambiar correlación para personalizar el mandato de recarga. Se muestran otras páginas del asistente que le ayudarán a personalizar los mandatos de descarga y recarga. Es necesario personalizar los mandatos de cambio de conservación de datos para desplegar correctamente ciertos cambios.

Restricción: Cuando genera mandatos de cambio, siempre se vuelve a generar entradas de conservación de datos predeterminadas. Los mandatos de conservación de datos anteriormente generados no se incorporan como parte de la reejecución del asistente para Personalizar conservación de datos.

Métodos de mandatos de descarga y recarga

Optim Database Administrator da soporte a distintos métodos para descargar y recargar datos. Puede elegir y personalizar el método utilizado para descargar y recargar operaciones en la página Especificar información de descarga y recarga de datos del asistente para Personalizar conservación de datos.

El tipo de método de mandato de descarga que elija determina si la conservación de datos es externa o interna, tal como muestra la tabla siguiente:
Tabla 1. Métodos de descarga soportados y tipo de conservación de datos
Proveedor de descarga Tipo de conservación de datos
Formato de datos EXPORT para DEL Externa
Formato de datos EXPORT IXF Externa
High Performance Unload (mandatos de descarga HPU de DB2) Externa
Proveedor de conservación de datos interna Interna
Proveedor de cursor de conservación de datos interna Interna

Son la conservación de datos externa, los datos se guardan en archivos externos. Los datos se descargan en archivos externos con mandatos Export o HPU de DB2. Los datos se recargan de los archivos externos con mandatos Import o Load, en función del método de mandato de recarga que elija. Al migrar datos de una tabla a otra, debe utilizar la conservación de datos externa, puesto que los datos deben guardarse en un archivo externo.

Con la conservación de datos interna, los datos se guardan internamente dentro de la base de datos. Cuando una tabla se modifica, se cambia el nombre de la tabla en la base de datos para crear una tabla duplicada. Una vez la tabla se ha vuelto a crear, los datos se mueven de la tabla duplicada a la tabla recreada y modificada. Los datos se trasladan mediante sentencias INSERT o utilizando una carga desde cursor, dependiendo del método de mandato de descarga que seleccionó.

De forma predeterminada, al nombre de las tablas duplicadas se antepone el prefijo 'SHAD_'. Si ya existe una tabla con ese nombre, ésta se elimina antes de crear la tabla duplicada. Puede personalizar las opciones de los métodos de descarga interna para especificar que se utilice otro prefijo o para crear la tabla duplicada con otro prefijo si ya existe una con dicho nombre.

La conservación de datos interna puede resultar más rápida que la conservación externa porque no es necesaria E/S en archivos. Sin embargo, asegúrese de disponer de suficiente espacio en la base de datos cuando utilice la conservación de datos interna.

Requisito: Para especificar High Performance Unload como método de descarga, debe estar instalado High Performance Unload (HPU) de DB2 para Multiplataformas o High Performance Unload (HPU) de DB2 para Grupos de trabajo. De lo contrario, los mandatos de descarga generados fallarán. Estos productos se venden e instalan por separado.

Cuando se recargan datos en una tabla que tiene un desencadenante, el desencadenante solamente se activa si los datos se recargan mediante mandatos Import o desde un archivo de datos mediante sentencias INSERT. El desencadenante no se activa cuando los datos se recargan mediante mandatos Load o desde un archivo de datos utilizando una carga desde cursor porque el programa de utilidad Load no puede aplicar las reglas de negocio que están asociadas a un desencadenante. Si no desea que se activen desencadenantes, utilice mandatos Load (o carga desde cursor) o modifique los mandatos de cambio generados para que los desencadenantes se creen una vez cargados los datos.

Importante: Si elige un método de recarga que activa desencadenantes, compruebe el archivo de mandatos de cambio para verificar el orden en el que se recargan los datos. Optim Database Administrator no recarga automáticamente los datos de un modo que activa los desencadenantes en la forma prevista

Técnicas avanzadas de conservación de datos

Las técnicas avanzadas de conservación de datos incluyen:

Eliminación de columnas
La eliminación de columnas se puede gestionar fácilmente, personalizando los mandatos de descarga y recarga generados. Puede cambiar los mandatos para asegurarse de que los datos de las columnas eliminadas se conserven. Puede personalizar el mandato de recarga para asegurarse de que las columnas descargadas se correlacionen correctamente con las columnas recargadas.
Adición de columnas NOT NULL
La adición de columnas NOT NULL resulta sencilla para las columnas que tienen un valor predeterminado. Si una columna no tiene ningún valor predeterminado, personalice la cláusula SELECT en el mandato de descarga en la página Personalizar mandatos de descarga del asistente para Personalizar conservación de datos.
Utilización de la función Auto Cast
Si existe discrepancia entre los tipos de datos de las columnas de descarga y recarga, puede utilizar la función Auto Cast para resolver la discrepancia. Cuando selecciona Auto Cast en la página Información de descarga y recarga o en la página Personalizar mandatos de descarga del asistente para Personalizar conservación de datos, Optim Database Administrator añade automáticamente una función de columna CAST en la cláusula SELECT de la sentencia de exportación o descarga. Puede seleccionar Consulta predeterminada para revertir a la cláusula SELECT predeterminada.
Restricción: Cualquier cambio adicional que realice en la cláusula SELECT se perderá al seleccionar las opciones Conversión automática o Consulta predeterminada.

Mandatos de mantenimiento de DB2

A lo largo del proceso de gestión de cambios, es posible que determinados paquetes de base de datos pasen a ser no operativos y que las estadísticas devengan incorrectas. Por ejemplo, DB2 marca los paquetes como no válidos o no operativos cuando el usuario elimina objetos. Puede necesitar emitir mandatos de revinculación para volver a crear los paquetes de acuerdo con las estadísticas más actuales. Los mandatos de mantenimiento de DB2 incluyen:
Mandatos Runstats
Es importante regenerar estadísticas después de modificar una base de datos o cargar datos en tablas.
Mandatos Reorg
Cuando se modifica una tabla es conveniente reorganizar todos los índices. También debe reorganizar todas las tablas e índices cuando se modifica un espacio de tabla. Optim Database Administrator emitirá mandatos REORG TABLE como valor predeterminado al aplicar ingeniería directa a un modelo, a menos que borre esta opción en la página Mandatos de mantenimiento del asistente para Personalizar conservación de datos. Optim Database Administrator también generará automáticamente mandatos runstats para renovar las estadísticas después de que se reorganice una tabla. También debe revincular todos los paquetes de aplicación para sacar provecho de los datos reorganizados.

Para obtener más información sobre el impacto de los mandatos reorg, consulte el manual Consulta de mandatos de DB2.

Mandatos de revinculación
Necesitará revincular paquetes si los mandatos de cambio contienen las siguientes sentencias DROP:
  • TABLE
  • TRIGGER
  • MQT
  • UDF
  • VIEW
  • ALIAS
  • INDEX
  • STRUCTURE TYPE

Si está realizando varios cambios, deberá revincular los paquetes para mejorar el rendimiento. Optim Database Administrator genera mandatos de revinculación para los paquetes afectados por los cambios definidos en el script de gestión de cambios.

Mandatos para vaciar la antememoria de paquetes
Una vez que se hayan actualizado las estadísticas, vacíe la antememoria de paquetes para que las sentencias de SQL dinámicas utilicen estadísticas actualizadas, lo cual mejorará el rendimiento.

Comentarios