Invoque este procedimiento almacenado para obtener las recomendaciones para la recopilación de estadísticas sobre tablas en un subsistema de nueva modalidad de función de DB2 11 para z/OS. El procedimiento almacenado puede completar la tabla de catálogo SYSIBM.DSN_STAT_FEEDBACK con recomendaciones o actualizar perfiles RUNSTATS.
Antes de empezar
- Asegúrese de que el procedimiento almacenado ADMIN_COMMAND_DB2 esté instalado y que el privilegio EXECUTE se otorga a los ID que convocarán al procedimiento almacenado OPT_STAT_ADVICE
- Asegúrese de que el procedimiento almacenado DSNUTILU esté instalado y que el privilegio EXECUTE se otorga a los ID que convocarán al procedimiento almacenado OPT_STAT_ADVICE
- Asegúrese de que el conjunto completo de características de ajuste está activado. El paso 8 en esta lista de comprobación describe cómo hacer la activación.
- Asegúrese de que el cliente de IBM Data Studio, versión 4.1.1 está instalado en la estación de trabajo. Los archivos que va a cargar como parte del procedimiento siguiente se encuentran en el directorio de instalación del cliente.
Acerca de esta tarea
Para recopilar estadísticas utilizando el procedimiento almacenado OPT_STAT_ADVICE, asegúrese de que se cumplen los requisitos previos, configure el entorno Java WLM, suba el archivo .jar que contiene el procedimiento almacenado, suba un DBRM y, a continuación, personalice y ejecute un trabajo JCL de muestra.
Procedimiento
- Configure el entorno Java WLM especificando un valor para CLASSPATH que apunta a la ubicación a donde desea subir el procedimiento. El procedimiento almacenado se puede ejecutar en Java 1.5 o posterior.
A continuación, se muestra un ejemplo de configuración del entorno Java WLM:
ENVAR("CLASSPATH=/u/admf001/aocstatssp.jar",
"TZ=PST08",
"JAVA_HOME=/usr/lpp/java160/J6.0",
"WORK_DIR=/u/oeusr05/JavaSP",
"JCC_HOME=/usr/lpp/db2/devbase/jdbc",
"DB2_BASE=/usr/lpp/db2/devbase/base"),
MSGFILE(JSPDEBUG),
XPLINK(ON)
- Suba el archivo .jar del módulo de carga aocstatssp.jar.
- En la estación de trabajo, abra una ventana de mandatos.
- Cambie a la carpeta \QueryTunerServerConfig\all_features\ZOS\SCA en el directorio de instalación del cliente de IBM Data Studio.
- FTP en el subsistema.
- Vaya al directorio al que apunta la variable CLASSPATH WLM.
- Cambie a modalidad binaria.
- Coloque el archivo JAR en el directorio.
- Suba el DBRM AOC5OSCM al subsistema. Este DBRM se encuentra en el directorio de instalación del cliente de
IBM Data Studio en \QueryTunerServerConfig\all_features\ZOS\V11.
- Personalice y ejecute el trabajo JCL de muestra AOCDDL11. Este trabajo de muestra se encuentra en el directorio de instalación del cliente de
IBM Data Studio en \QueryTunerServerConfig\all_features\ZOS\V11.
- Personalizar el paso AOCBIND. Este paso enlaza los paquetes que InfoSphere Consulta Workload Tuner Optim utiliza.
- Personalizar el paso AOCSP. Este paso crea el procedimiento almacenado SYSPROC.OPT. Puede comentar las líneas para crear los procedimientos almacenados SYSPROC.OPT_RUNSQL y SYSPROC.OPT_EXECUTE_TASK.
- Cree y rellene una tabla que lista las tablas de las que desea recomendaciones. Esta tabla puede ser una tabla temporal global declarada (DGTT) o una tabla normal. Debe contener dos columnas:
Tabla 1. Columnas de la tabla para listar las tablas de las que desea recomendacionesColumna
|
Tipo de datos
|
Descripción
|
| CREATOR |
VARCHAR(128) |
El esquema de una tabla de la que desea recomendaciones. |
| NAME |
VARCHAR(128) |
Nombre de la tabla correspondiente. |
- Asegúrese de que la sentencia CALL ofrece y acepta los valores para estos parámetros.
Tabla 2. Parámetros del procedimiento almacenado OPT_STAT_ADVICE Modalidad
|
Parámetro
|
Tipo de datos
|
¿Admite nulos? (Y=Sí/N=No)
|
Descripción
|
| IN |
TABLECREATOR |
VARCHAR(128) |
S |
Esquema de la tabla que muestra la lista de las tablas para la que desea recomendaciones para la recopilación de estadísticas. Si el valor es NULL, el procedimiento almacenado obtiene la recomendación s para todas las tablas, índices correspondiente y columnas a lo largo de todo el subsistema conectado.
|
| IN |
TABLENAME |
VARCHAR(128) |
S |
Tabla que muestra la lista de las tablas para la que desea recomendaciones para la recopilación de estadísticas. Si TABLECREATOR es NULL, este parámetro también debe ser NULL.
Si TABLECREATOR no es NULL, pero TABLENAME es NULL, el procedimiento almacenado devuelve un mensaje de error en el parámetro OUTPUT_MESSAGE.
|
| IN |
OUTPUT_METHOD |
INTEGER |
N |
Método de salida de las recomendaciones para la recopilación de estadísticas. Valores posibles:
1: Rellenar la tabla de catálogos SYSIBM.DSN_STAT_FEEDBACK con estadísticas de memoria.
2: Actualizar perfiles RUNSTATS directamente.
El procedimiento almacenado DSNACCOX detecta los cambios en los perfiles RUNSTATS y a continuación, inicia la recopilación de estadísticas de acuerdo a una planificación que puede establecer.
Si desea utilizar el procedimiento almacenado OPT_STAT_ADVICE junto con DSNACCOX, especifique “2” como valor para el parámetro de entrada OUTPUT_METHOD cuando llame a OPT_STAT_ADVICE. Después de que este procedimiento almacenado actualice los perfiles RUNSTATS, DSNACCOX detectará las actualizaciones y empezará la recopilación de estadísticas de acuerdo con su la planificación.
|
| IN |
RESERVED |
INTEGER |
S |
Reservado |
| OUT |
RETURN_CODE |
INTEGER |
|
Valor devuelto del procedimiento almacenado Valores posibles:
0: se ha completado correctamente.
4: Completado con avisos. Los mensajes de aviso están en el parámetro OUTPUT_MESSAGE.
8: ha fallado con errores. El mensaje de error s se encuentra en el parámetro OUTPUT_MESSAGE.
|
| OUT |
RESERVED |
BLOB(64k) |
|
Reservado
|
| OUT |
OUTPUT_MESSAGE |
VARCHAR(4096) |
|
Mensajes devueltos por el procedimiento almacenado. El valor es NULL si el código de retorno es 0.
De lo contrario, los errores o el mensaje de advertencia de las listas de parámetros que se han generado por el procedimiento almacenado.
|
Ejemplo
Este ejemplo de llamada del procedimiento almacenado utiliza un DGTT.
- Crear un DGTT para contener una lista de tablas para las que generar recomendaciones para la recopilación de estadísticas.
DECLARE GLOBAL TEMPORARY TABLE SESSION.STAT_COLL_TABLE (
CREATOR VARCHAR(128),
NAME VARCHAR(128)
) ON COMMIT PRESERVE ROWS;
- Llenar el DGTT con datos.
INSERT INTO SESSION.STAT_COLL_TABLE (CREATOR, NAME) VALUES (…...);
- Invocar el procedimiento almacenado.
CALL DB2OE.OPT_STAT_ADVICE (
'SESSION',
'STAT_COLL_TABLE',
'2',
?,
?,
?
);
El JCL de ejemplo siguiente muestra cómo invocar a esta interfaz con DSNTEP2:
//STEP01 EXEC TSOBATCH,DB2LEV=DB2A
//SYSTSIN DD *
DSN S(VA1A) R(1) T(1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP2) PARM('NOMIXED')
END
//SYSIN DD *
DECLARE GLOBAL TEMPORARY TABLE SESSION.STAT_COLL_TABLE (
CREATOR VARCHAR(128),
NAME VARCHAR(128)
) ON COMMIT PRESERVE ROWS;
INSERT INTO SESSION.STAT_COLL_TABLE (CREATOR, NAME) VALUES (…...);
CALL DB2OE.OPT_STAT_ADVICE (
'SESSION', 'STAT_COLL_TABLE',
'2',
?,
?,
?
);
Qué hacer a continuación
Si el procedimiento almacenado informa de un error, defina los directorios para los parámetros de JavaOut y JavaErr. Asegúrese de que su ID de autorización tiene el privilegio para leer y escribir en estos directorios. A continuación, inicie el rastreo. Llame otra vez al procedimiento almacenado.
Si se produce el error, recopile los archivos que se han generado en los directorios JavaOut y JavaErr. Póngase en contacto con el soporte de IBM y envíe los archivos de acuerdo con las instrucciones que el representante de soporte le proporciona.