Puntos clave: Las tablas explicativas en Db2 12 describen la función del PLAN_TABLE, lo que ofrece información sobre las rutas de acceso a las consultas, ayudando en su optimización para una ejecución eficiente de SQL. Esto sirve como referencia vital para entender los procesos de sentencias SQL de Db2.
- Detalla el papel de PLAN_TABLE en el rendimiento de consultas de Db2.
- Destaca la importancia de optimizar las rutas de acceso.
PLAN_TABLE
Contiene información sobre rutas de acceso para consultas que se han explicado o que han dado pistas.
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número que identifica cada bloque de consulta dentro de una consulta. Los números no son en ningún orden particular, ni son consecutivos |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| PLANNO | SMALLINT | Número de pasos en los que se procesó la consulta indicada en QBLOCKNO. Indica el orden en que se ejecutaron los pasos. |
| MÉTODO | SMALLINT |
Método de unión utilizado para el paso: 0 = Primera tabla a la que se accedió, continuación de la tabla anterior a la que se accedió o no se ha utilizado 1 = Unión de bucles anidados. Para cada fila de la tabla compuesta actual, se encuentran y son unen filas coincidentes de una nueva tabla 2 = Fusión de la unión de escaneo. La tabla compuesta actual y las nuevas tablas son escaneadas en orden de las columnas de unión y son unidos las filas correspondientes. 3 = Ordena necesario por ORDEN POR, AGRUPA POR, SELECCIONA DISTINTO, UNIÓN, un predicado cuantificado o un predicado IN. No accede a una nueva tabla |
| CREADOR | VARCHAR (128) | Creador de la nueva tabla accedida en este paso; en blanco si METHOD está 3 |
| NOMBRE | VARCHAR (128) |
Nombre de una tabla, tabla de consulta materializada, tabla temporal creada o declarada, vista materializada o expresión de tabla materializada. En blanco si METHOD están 3. También puede contener el nombre de una tabla en la forma DSNWFQB(qblockno). DSNWFQB(qblockno) se está usado para representar el resultado inmediato de una UNION ALL, una INTERSECT ALL, una EXCEPT ALL o una unión exterior que están materializada. Si una vista está fusionada, el nombre de la vista no aparece. DSN_DIM_TBLX(qblockno) están se usa para representar el archivo de trabajo de una tabla de dimensión de unión estrella. DSB_SPIX_TBLX(qblockno) están se usa para un índice disperso de una referencia de tabla lateral. |
| TABNO | SMALLINT | IBM solo utiliza. |
| ACCESOTIPO | CHAR(2) |
Método para acceder a la nueva tabla: DI = Una intersección de múltiples listas DOCID para devolver la lista DOCID final. DU = Unión de múltiples listas DOCID para devolver la lista final de DOCID DX = Un escaneo de índice XML del índice nombrado en ACCESSNAME para devolver una lista DOCID E = Fila directa usando una columna de marca de tiempo de cambio de fila H = Acceso por hash. SI ocurre una condición de desbordamiento, se está utilizando el índice de desbordamiento de hash identificado por ACCESSCREATOR y ACCESSNAME. HN = Acceso a hash usando un predicado IN, o un predicado IN que genera DB2. Si ocurre una condición de desbordamiento de hash, se están utilizados el índice de desbordamiento de hash identificado en ACCESSCREATOR Y ACCESSNAME. IN = Escaneo de índice cuando el predicado emparejado contiene un predicado IN y la lista IN se está accedida a través de una tabla en memoria I = Un índice (identificado en ACCESSCREATOR y ACCESSNAME). I1 = Escaneo de índice One-fetch M = Escaneo múltiple de índices (seguido de MX, MI, MH o MU). MH = Índice de desbordamiento de hash nombrado en ACCESSNAME MX = Escaneo de índice en el índice nombrado en ACCESSNAME. Cuando el método de acceso MX sigue al método de acceso DX, DI o DU, la tabla está accedida por el índice DOCID usando la lista DOCID devuelta por DX, DI o DU MI = Intersección de múltiples índices MU = Unión de múltiples índices N = Escaneo de índice cuando el predicado correspondiente contiene la palabra clave IN o mediante un escaneo de índice cuando DB2 reescribe una consulta usando la palabra clave IN. NR = Acceso a la lista de rango. O = Escaneo de archivos de trabajo, como resultado de una subconsulta. P = Escaneo dinámico por índices por pares R = Escaneo de espacio de tabla. RW = escaneo de archivo de trabajo de la función de tabla definida por el usuario materializada V = Buffers para una sentencia INSERT dentro de un SELECT. En blanco = No aplicable a la fila actual. |
| MATCHCOLS | SMALLINT | Para ACCESSTYPE I, I1, N, NR, MX, o DX, número de claves de índice usadas en un escaneo de índice; de lo contrario, 0. |
| ACCESSCREATOR | VARCHAR (128) | Para ACCESSTYPE I, I1, N, NR, MX o DX, creador del índice |
| ACCESONAME | VARCHAR (128) | Para ACCESSTYPE I, I1, H, MH, N, NR, MX, o DX, nombre del índice. |
| SOLO ÍNDICE | CHAR(1) | Si el acceso a un índice por sí solo está suficiente para realizar el paso, o si también debe acceder a los datos. Y = Sí; N = No |
| SORTN_UNIQ | CHAR(1) |
La nueva tabla se están ordenada para eliminar filas duplicadas. Y=Sí; N=No |
| SORTN_JOIN | CHAR(1) | La nueva tabla se está ordenada para el método de unión 2 o 4. Y = Sí; N = No |
| SORTN_ORDERBY | CHAR(1) |
La nueva tabla está ordenada para ORDEN POR. Y = Sí; N = No |
| SORTN_GROUPBY | CHAR(1) |
La nueva tabla se está ordenada por GRUPO POR. Y = Sí; N = No |
| SORTC_UNIQ | CHAR(1) | La tabla compuesta está ordenada para eliminar filas duplicadas. Y = Sí; N = No. |
| SORTC_JOIN | CHAR(1) | La tabla compuesta está ordenada para el método de unión 1, 2 o 4. Y = Sí; N = No. |
| SORTC_ORDERBY | CHAR(1) | La tabla compuesta está ordenada para una cláusula ORDER BY o un predicado cuantificado. Y = Sí; N = No |
| SORTC_GROUPBY | CHAR(1) | La tabla compuesta está ordenada para una cláusula GROUP BY. Y = Sí; N = No. |
| Modo TSLOCK | CHAR(3) |
Una indicación del modo de bloqueo que se va a adquirir en la nueva tabla o en sus particiones de espacio de tabla o de espacio de tabla. Si el aislamiento puede determinarse en tiempo de enlace, los valores son: están = bloqueo de intención de compartir IX = Bloqueo exclusivo de intención S = Candado de acciones U = Bloqueo de actualización X = Bloqueo exclusivo SEIS = Bloqueo exclusivo de compartir con intención N = aislamiento UR; sin bloqueo Si el aislamiento no puede determinarse en tiempo de enlace, el modo de bloqueo determinado por el aislamiento en tiempo de ejecución se están mostrado por los siguientes valores: NS = para aislamiento UR, sin bloqueo; para CS, RS o RR, un bloqueo S NIS = Para aislamiento UR, sin bloqueo; para CS, RS o RR, un bloqueo están NSS = Para aislamiento UR, sin bloqueo; para CS o RS, un bloqueo están; para RR, un bloqueo S SS = Para aislamiento UR, CS o RS, un bloqueo están; para RR, un bloqueo S RR, una candado S Los datos de esta columna están justificados por la derecha. Por ejemplo, IX aparece como un blanco seguido de ǀ seguido de X. Si la columna contiene un espacio en blanco, no se está adquirido ningún bloqueo. Si el método de acceso en la columna ACCESSTYPE están DX, DI o DU, no son adquirido ningún bloqueo en la página índice XML, ni están bloqueo en la nueva página o fila de datos de la tabla base, ni en la tabla XML ni en los espacios de tabla correspondientes. El valor de TSLOCKMODE están en blanco en este caso. |
| MARCA TEMPORAL | CHAR(16) | Obsoleto, utiliza EXPLAIN_TIME en cambio |
| COMENTARIOS | (VARCHAR762) | Puede insertar cualquier cadena de caracteres de 762 caracteres o menos |
| PREFETCH | CHAR(1) |
Si las páginas de datos son para leerse de antemano mediante prelectura: D = optimizador espera prelectura dinámica S = Prelectura secuencial pura L = Prelectura a través de una lista de páginas U = Prelectura de lista con una lista RID sin ordenar Blank = Unknown en el momento de asignación o sin prelectura |
| COLUMN_FN_EVAL | CHAR(1) |
Cuando se está evaluada una función agregada de SQL: R = mientras se están leyendo datos de la tabla o índice S = Mientras se realiza una ordenación para satisfacer una cláusula GROUP BY X = Mientras los datos se están leídos de una tabla o índice, para funciones agregadas cuando se está especificada una cláusula OFFSET Y = Mientras se realiza un ordenamiento, para funciones agregadas cuando se especifica una cláusula OFFSET. Blank = Después de la recuperación de datos tras cualquier tipo |
| MIXOPSEQ | SMALLINT |
El número de secuencia de un paso en una operación de múltiples índices: 1, 2,... n = Para los pasos del procedimiento de múltiples índices (ACCESSTYPE están MX, MI, MU, DX, DI o DU), el número de secuencia del predicado OR en la instrucción SQL (ACCESSTYPE están NR) 0 = para cualquier otra fila |
| VERSIÓN | VARCHAR (122) | Idenfitier de versión para el paquete |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| ACCESS_DEGREE | SMALLINT | Número de tareas u operaciones paralelas activadas por una consulta. Determinado en tiempo de asignación; el número real en tiempo de ejecución puede variar |
| ACCESS_PGROUP_ID | SMALLINT | Identificador del grupo paralelo para acceder a una nueva tabla |
| JOIN_DEGREE | SMALLINT | Número de operaciones o tareas paralelas usadas para unir tabla compuesta con nueva tabla |
| JOIN_PGROUP_ID | SMALLINT | Identificador del grupo paralelo para unir la tabla compuesta con la nueva tabla |
| SORTC_PGROUP_ID | SMALLINT | Identificador de grupo paralelo para tabla compuesta de tipo paralelo |
| SORTN_PGROUP_ID | SMALLINT | Grupo paralelo idenitifer para el tipo paralelo de la nueva tabla |
| PARALLELISM_MODE | CHAR(1) | Modo de paralelismo. C = paralelismo CP |
| MERGE_JOIN_COLS | SMALLINT | Número de columnas unidas durante una unión de escaneo de fusión |
| CORRELATION_NAME | VARCHAR (128) | Nombre de correlación de una tabla o vista que está especificado en la sentencia |
| PAGE_RANGE | CHAR(1) | Si se está utilizando el filtro de rango de páginas. Y = Sí; en blanco = No |
| JOIN_TYPE | CHAR(1) |
Tipo de unión exterior: F = Unión exterior completa L = Unión exterior izquierda P = Unión por parejas S = Unión de estrellas Blank = Unión interna o sin unión LA UNIÓN EXTERIOR DERECHA se convierte en una UNIÓN EXTERIOR IZQUIERDA de modo que JOIN_TYPE contiene L |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del DB2 que ejecutó EXPLAIN |
| IBM_SERVICE_DATA | VARCHAR (254) | IBM solo utiliza |
| WHEN_OPTIMIZE | CHAR(1) |
Cuando se determinó la ruta de acceso: Blank = En tiempo de enlace, usando un factor de filtro predeterminado para cualquier variable anfitriona, marcador de parámetros o registro especial; sin embargo, la sentencia se está reoptimizada en tiempo de ejecución usando valores de variables de entrada para variables anfitrionas de entrada, marcadores de parámetros o registros especiales. La opción de vinculación REOPT(ALWAYS), REOPT(ONCE) o REOPT(AUTO) debe especificarse para que se produzca la reoptimización R = En tiempo de ejecución, usando variables de entrada para cualquier variable anfitriona, marcador de parámetros o registro especial. Para que esto ocurra, debe especificarse la opción de vinculación REOPT(ALWAYS), REOPT(ONCE) o REOPT(AUTO). |
| QBLOCK_TYPE | CHAR(6) |
Para cada bloque de consulta, el tipo de operación SQL realizada. Para la consulta más externa, identifica el tipo de sentencia. SELECT = SELECT INSERT = INSERT ACTUALIZACIÓN = ACTUALIZACIÓN FUSIÓN = FUSIÓN ELIMINAR = ELIMINAR SELUPD = SELECT con FOR UPDATE OF DELCUR = BORRAR DONDE ESTÁ EL CURSOR ACTUAL ACTUALIZADO = ACTUALIZACIÓN DONDE EL CURSOR ESTÁ EN CORRIENTE CORSUB = Subconsulta correlacionada TRUNCA = TRUNCAR NCOSUB = Subconsulta no correlacionada TABLEX = Expresión de tabla TRIGGR = cláusula WHEN en Crea TRIGGER SINDICATO = SINDICATO UNIONA = UNION TODOS INTERS = INTERSECT INTERA = INTERSECTAR TODOS EXCEPTO = EXCEPTO EXCEPTA = EXCEPTO TODOS |
| OPTHINT | VARCHAR (128) | Una cadena utilizada para identificar una fila como pista de optimización para DB2 |
| HINT_USED | VARCHAR (128) |
APREUSE – Cuando un camino de acceso se reutilizó con éxito porque la opción APREUSE se especificó en bind o rebinding 'opthint-value' – Cuando PLAN_TABLE se utilizan pistas de ruta de acceso son opthint-value están el valor de la columna OPTHINT para la hint que se utilizó SYSQUERYPLAN query-id Cuando se son utilizados consejos de ruta de acceso a nivel de instrucción. query-id están el valor de la columna QUERYID en la tabla del catálogo SYSQUERYPLAN para la pista SYSQUERYSEL query-id Cuando se está utilizado un sobreescritura de selectividad de predicados. query-id están el valor de la columna QUERYID de la fila de la tabla del catálogo SYSQUERYSEL para la pista. EXPLAIN PACKAGE: COPY copy-id – Cuando la fila están el resultado de una instrucción EXPLAIN PACKAGE. copy-id están uno de los siguientes valores: 0 Copia actual 1 Copia anterior 2 Copia original |
| PRIMARY_ACCESSTYPE | CHAR(1) |
Indica si se intentará primero el acceso directo a la fila: D = DB2 intentará utiliza acceso directo a la fila. Si no puede utiliza acceso directo a la fila en tiempo de ejecución, utiliza la ruta de acceso descrita en la columna ACCESSTYPE de PLAN_TABLE P = DB2 utilizó un índice secundario particionado de datos y una operación a nivel de parte para acceder a los datos S = DB2 usó acceso dinex disperso para referencia lateral a la tabla T = La tabla base o el archivo de resultados están materializado en un archivo de trabajo, y el archivo de trabajo están accedido mediante acceso a índices dispersos. Si están involucrada una tabla base, ACCESSTYPE indica cómo están accede a la tabla base Blank = DB2 no intentará utilizar acceso directo a la fila. El valor de la columna ACCESSTYPE proporciona información sobre el método de acceso a la tabla |
| PARENT_QBLOCK | SMALLINT | Número que indica el QBLOCKNO de la consulta padre |
| TABLE_TYPE | CHAR(1) |
El tipo de tabla nueva: B = Búferes para SELECT de INSERT, SELECT de UPDATE, SELECT de MERGE o SELECT de la instrucción DELETE. C = Expresión común en tablas F = Función de tabla I = La nueva tabla se están generada a partir de un predicado IN-LIST. Si el predicado IN-LIST está seleccionado como el predicado correspondiente, se accederá a él como una tabla en memoria M = Tabla de consulta materializada Q = Tabla de resultados intermedia temporal (no materializada). Para el nombre de la vista o expresión de la tabla anidada, un valor de Q indica que la materialización fue virtual y no real. La materialización puede ser virtual cuando la definición de expresión de vista o tabla anidada contiene un UNION ALL que no está distribuido. R = Expresión común recursiva en tabla S = Subconsulta (correlacionada o no correlacionada) T = Tabla W = Archivo de trabajo El valor de la columna está nulo si la consulta usa GROUP BY, ORDER BY o DISTINCT, lo que requiere un ordenamiento implícito. |
| TABLE_ENCODE | CHAR(1) |
Esquema de codificación de la tabla. Si la tabla tiene un único conjunto CCSID, los valores posibles son: A = ASCII E = EBCDIC U = UNICODE M = La tabla contiene múltiples conjuntos CCSID. |
| TABLE_SCCSID | SMALLINT | Valor CCSID SBCS de la tabla. Si TABLE_ENCODE están M, valor están 0. |
| TABLE_MCCSID | SMALLINT | Valor CCSID mixto de la tabla. Si TABLE_ENCODE están M, el valor están 0. SI MIXED=NO en el módulo de predeterminación de la aplicación, el valor están -2 |
| ROUTINE_ID | ENTERO | IBM solo utiliza |
| CTREF | SMALLINT | Si la tabla referenciada están una expresión común de la tabela, el valor están el número de bloque de consulta de nivel superior |
| STMTTOKEN | VARCHAR (240) | Un token de instrucción especificado por el usuario |
| PARENT_PLANNO | SMALLINT | Corresponde al número de plano en el bloque de consulta padre donde está involucrada una subconsulta correlacionada. O, para subconsultas no correlacionadas, corresponde al número de planta en el bloque de consulta padre que representa el archivo de trabajo para la subconsulta. |
| BIND_EXPLAIN_ONLY | CHAR(1) | Identifica si la fila fue insertada por el comando BIND con la opción EXPLICACIÓN(SOLO) |
| SECTNOI | ENTERO | Número de sección de la declaración |
| EXPLAIN_TIME | MARCA TEMPORAL |
Momento en que se capturó la información de EXPLICA: Todas las sentencias almacenadas en caché: cuando la instrucción entró en la caché Sentencias estáticas no almacenadas en caché: Cuando la sentencia estaba vinculada Sentencias dinámicas sin caché: Cuando se ejecutó EXPLAIN |
| MERGC | CHAR(1) |
Indica si la tabla compuesta está consolidada antes de unirse. Y = Sí N = No |
| MERGN | CHAR(1) |
Indica si una nueva tabla se está consolidada antes de la incorporación, o si el acceso que utilizó un índice secundario particionado de datos (DPSI) implicó una operación de fusión. Y = Sí N = No D = El acceso mediante un DPSI implicaba una operación de fusión U = Acceso a través de un DPSI que no implicó una operación de fusión |
| SCAN_DIRECTION | CHAR(1) |
Para acceder al índice, dirección del escaneo del índice: F Forward R Reversa No se está utilizando el escaneo de índice en blanco |
| EXPANSION_REASON | CHAR(1) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Si no, coloumn está en blanco. |
| PER_STMT_ID | BIGINT | Identificador persistente de sentencias para sentencias SQL en tablas de catálogo DB2 |
DSN_COLDIST_TABLE
La tabla de distribución de columnas contiene estadísticas de grupos de columnas no uniformes que son obtenidas dinámicamente por el optimizador DB2
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se está explicando |
| APPLNAME | VARCHAR (128) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando la sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, esta columna está el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado. |
| GROUP_MEMBER | VARCHAR (128) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| ESQUEMA | VARCHAR (128) | Esquema de la tabla que contiene columna |
| TBNAME | VARCHAR (128) | Nombre de la tabla que contiene la columna |
| NOMBRE | VARCHAR (128) | Nombre de la columna |
| COLVALUE | VARCHAR (2000) | Contiene datos de un valor frecuente en la columna |
| TIPO | CHAR(1) |
El tipo de estadísticas: C = Cardinalidad F = Valor frecuente H = Histograma T = Cardinalidad de la tabla en tiempo real L = Cardinalidad de columna en tiempo real (solo índice único) P = Cardinalidad de partición en tiempo real |
| CARDF | FLOAT | Para TYPE='C', el número de valores distintos para el grupo de columnas. Para TYPE='H', el número de valores distintos para el grupo de columnas en un cuantilindicindico por el valor de la columna QUANTILENO. TYPE=Valor 'T' relacionado con estadísticas en tiempo real determinado por COLVALUE. TYPE =valor 'L' relacionado con la columna de estadísticas en tiempo real. QUANTILENO contiene el número de columna. NAME contiene el número de partición. |
| COLGROUPCOLNO | VARCHAR (254) | Identidad del conjunto de columnas asociadas a las estadísticas |
| NUMCOLUMNS | SMALLINT | Identifica el número de columnas asociadas a las estadísticas |
| FREQUENCYF | FLOAT | Porcentaje de filas en la tabla con el valor que están especificado en la columna COLVALUE cuando el número están multiplicado por 100 |
| QUANTILENO | SMALLINT | Número de secuencia ordinario de un cuantil en todo el rango de valores consecutivos, de bajo a alto |
| BAJO VALOR | VARCHAR (2000) | Para TYPE='H', el límite inferior para el cuantil indicado por el valor de la columna QUANTILENO |
| ALTO VALOR | VARCHAR (2000) | Para TYPE='H', límite superior para el cuantil indicado por el valor de la columna QUANTILENO |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en las tablas de catálogo |
DSN_DETCOST_TABLE
Contiene información sobre la estimación detallada de costes de los mini-planes en cuestión
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLIN | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PLANNO | SMALLINT | Un número utilizado para identificar cada mini-plan dentro de un bloque de consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción explicada |
| OPENIO | FLOTADOR(4) | Coste de E/S Do-at-Open para la subconsulta no correlacionada |
| OPENCPU | FLOTADOR(4) | Coste de CPU Do-at-Open para la subconsulta no correlacionada |
| OPENCOST | FLOTADOR(4) | Coste total de Hacer en abierto para la subconsulta no correlacionada |
| ONECOMPROWS | FLOTADOR(4) | Número de filas calificadas tras aplicar predicados locales |
| IMFF | FLOTADOR(4) | Factor de filtro solo de predicados de emparejamiento |
| IMFFADJ | FLOTADOR(4) | Factor de filtro de predicados de emparejamiento y filtro |
| DMCOLS | FLOTADOR(4) | Número de columnas del gestor de datos |
| DMROWS | FLOTADOR(4) | Número de filas del gestor de datos devueltas (después de aplicar todos los predicados de la etapa 1 son) |
| RDSROW | FLOTADOR(4) | Número de filas RDS devueltas (después de aplicar todos los predicados de la etapa 1 son) |
| SNCOLS | SMALLINT | Número de columnas como entrada de ordenación para una nueva tabla |
| SNROWS | FLOTADOR(4) | Número de filas como entrada de ordenamiento para una nueva tabla |
| SNRECSZ | ENTERO | Tamaño del registro para la nueva tabla |
| SNPAGES | FLOTADOR(4) | Tamaño de página para la nueva tabla |
| SNRUNS | FLOTADOR(4) | Número de corridas generadas para una especie de nueva tabla |
| SNMERGES | FLOTADOR(4) | Número de fusiones necesarias durante una ordenación |
| SNCCOLS | FLOTADOR(4) | Número de columnas como entrada de ordenación para una tabla compuesta |
| SCROWS | FLOTADOR(4) | Número de filas como entrada de ordenación para una tabla compuesta |
| SCRECSZ | ENTERO | Tamaño de registro para una tabla compuesta |
| SCPAGES | FLOTADOR(4) | Tamaño de página para una tabla compuesta |
| SCRUNS | FLOTADOR(4) | Número de ejecuciones generadas durante el tipo de tabla compuesta |
| SCMERGES | FLOTADOR(4) | Número de fusiones necesarias durante una especie de tabla compuesta |
| COMPCARD | FLOTADOR(4) | Cardinalidad compuesta total |
| COMPCOST | FLOTADOR(4) | Coste total |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| INCERTIDUMBRE | FLOTADOR(4) | Describe el factor de incertidumbre en el acceso al índice de la tabla interna |
| UNCERTAINTY_1T | FLOTADOR(4) | Describe el factor de incertidumbre de la columna ONECOMPROWS de la tabla |
| SECTNOI | ENTERO | Número de sección de la declaración |
| COLISIÓN | VARCHAR (128) | ID de la colección |
| VERSIÓN | VARCHAR (128) | Identificador de versión del paquete |
| IXSCAN_SKIP_DUPS | CHAR(1) |
Si se son omitidos los valores clave duplicados del índice durante el escaneo del índice 'Y' Los valores de clave duplicados son saltados 'N' No se son omitidos los valores clave duplicados |
| IXSCAN_SKIP_SCREEN | CHAR(1) |
Si durante un escaneo de índice son omitidos los rangos clave que son descalificados por predicados de selección de índice 'Y' Los rangos de tonalidad descalificados son saltados 'N' No se son saltados rangos de tonalidad |
| EARLY_OUT | CHAR(1) |
Si el recado de la mesa se detiene tras la primera fila calificada 'Y' La recogida interna se detiene tras la primera fila de calificación 'N' La recogida interna continúa tras la primera fila clasificada En blanco La información EXPLAIN fue capturada en una versión anterior |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Si no, la columna está en blanco |
| BLOCK_FETCH | CHAR(1) | Si se usó la búsqueda de bloques para consulta: (Y o N) |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_FILTER_TABLE
Contiene información sobre cómo se son utilizados los predicados durante el procesamiento de consultas.
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explicaba. |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PLANNO | SMALLINT | Un número utilizado para identificar cada mini-plan dentro de un bloque de consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE. Cuando la sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, esta columna está el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado. |
| ORDERNO | ENTERO | Número de secuencia de evaluación. Orden se está aplicado un predicado dentro de cada etapa |
| PREDNO | ENTERO | Un número utilizado para identificar un predicado dentro de una consulta |
| ESCENARIO | CHAR(9) |
Indica en qué momento se está evaluado el predicado · Emparejamiento · Chequeo · Rango de páginas · Etapa 1 · Etapa 2 |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EMPUJE | CHAR(1) |
Ya sea que el predicado se están empujado hacia abajo en los subcomponentes del Gestor de Índices o del Gestor de Datos para su evaluación: I = Subcomponente del Gestor de Índices evalúa el predicado D = Subcomponente del Gestor de Datos evalúa el predicado Blank = predicado no se está empujado hacia abajo para evaluación |
| EXPANSION_REASON | CHAR(2) | Columna se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_FUNCTION_TABLE
Contiene información sobre el coste de las funciones definidas por el usuario utilizadas en una instrucción SQL
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | ENTERO | Número de bloques de consulta dentro de una consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando la sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, esta columna está el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado. |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro de DB2 que ejecutó EXPLAIN, o en blanco |
| EXPLAIN_TIME | MARCA TEMPORAL | Momento en que se está procesado el extracto |
| SCHEMA_NAME | VARCHAR (128) | Nombre del esquema de la función invocada en la sentencia explicada |
| FUNCTION_NAME | VARCHAR (128) | Nombre de la función invocada en la sentencia explicada |
| SPEC_FUNC_ID | VARCHAR (128) | Nombre específico de la función invocada en la afirmación explicada |
| FUNCTION_TYPE | CHAR(2) |
Tipo de función invocada en la afirmación explicada: CU = Función columna SU = Función escalar TU = Función de tabla |
| VIEW_CREATOR | VARCHAR (128) | Uf la función especificada en la columna FUNCTION_NAME están referenciada en una definición de vista, el creador de la vista. De lo contrario, está en blanco. |
| VIEW_NAME | VARCHAR (128) | Si la función especificada en la columna de FUNCTION_NAME están referenciada en una definición de vista, el nombre de la vista. De lo contrario, está en blanco. |
| CAMINO | VARCHAR (2048) | Valor de la ruta SQL utilizada para resolver el nombre del esquema de la función |
| FUNCTION_TEXT | VARCHAR (1500) | El texto de la referencia de la función (nombre y parámetros) |
| FUNC_VERSION | VARCHAR (122) | Para la versión de la función escalar SQL no en línea, contiene el identificador de versión. |
| SEGURO | CHAR(1) | Indica si la función definida por el usuario está segura. |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión para el paquete |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Si no, está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_KEYTGTDIST_TABLE
Contiene estadísticas de expresión de índices no uniformes obtenidas dinámicamente por el optimizador
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se está explicando |
| APPLNAME | VARCHAR (128) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando la sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, esta columna está el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| GROUP_MEMBER | VARCHAR (128) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión para el paquete |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| IXSCHEMA | VARCHAR (128) | Calificador del índice |
| IXNAME | VARCHAR (128) | Nombre del índice |
| KEYSEQ | VARCHAR (128) | Posición numérica del objetivo clave en el índice |
| CLAVE-VALOR | VARCHAR (2000) | Contiene los datos de un valor que aparece con frecuencia |
| TIPO | CHAR(1) |
Tipo de estadística: C = Cardinalidad F = Valor frecuente H – Histograma L = Estadísticas de índice en tiempo real |
| CARDF | FLOAT | Para TYPE='C', el número de valores distintos para el grupo de columnas. Para TYPE='H', el número de valores distintos para el grupo de columnas en un cuantil indicado por el valor de la columna QUANTILENO. Para TYPE='T', valor relacionado con estadísticas de índice en tiempo real determinado por KEYVALUE |
| KEYGROUPKEYNO | VARCHAR (254) | Contiene un valor que identifica el conjunto de claves que son asociadas a las estadísticas. Si las estadísticas son asociadas a más de una sola clave, contiene un array de números de clave SMALLINT con una dimensión que están igual al valor en NUMKEYS. Si las estadísticas solo son asociadas a una sola clave, contiene 0. |
| NUMKEYS | SMALLINT | Número de claves que son asociadas a las estadísticas |
| FREQUENCYF | FLOAT | Porcentaje de filas en la tabla con valor que se está especificado en la columna CLAVEVALOR cuando el número se está multiplicado por 100 |
| QUANTILENO | SMALLINT | Número de secuencia ordinario de un cuantil en todo el rango de valores consecutivos, de bajo a alto. No actualizable |
| BAJO VALOR | VARCHAR (2000) | Para TYPE='H', este están el límite inferior para el cuantil indicado por el valor de la columna QUANTILENO. No se utiliza si el valor de la columna TYPE no está 'H'. No actualizable |
| ALTO VALOR | VARCHAR (2000) | Para TYPE='H', este están el límite superior para el cuantil indicado por el valor de la columna QUANTILENO. Esta columna no se está utilizada si el valor de la columna TYPE no están 'H'. Esta columna no está actualizable. |
| EXPANSION_REASON | CHAR(2) | Esta columna se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Si no, la columna está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2. |
DSN_PGRANGE_TABLE
Contiene información sobre particiones calificadas para todos los escaneos de rango de página en una consulta
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explicaba. |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| TABNO | SMALLINT | Número de tabla |
| DISTRIBUCIÓN | SMALLINT | Número de secuencia del rango de páginas actual |
| PRIMERA PARTE | SMALLINT | Partición inicial en el rango de páginas actual |
| ÚLTIMA PARTE | SMALLINT | Finalización de la partición en el rango de páginas actual |
| NUMPARTS | SMALLINT | Número de particiones en el rango de páginas actual |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (24) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando la sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, esta columna está el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Si no, la columna está en blanco |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PLANNAME | VARCHAR (24) | Nombre del plan de solicitud |
| COLISIÓN | VARCHAR (24) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están un esquema de función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| NOMBRE | VARCHAR (128) | Nombre del programa (vinculación a una aplicación) o nombre del paquete (vinculación a un paquete) |
| EXPLAIN_TIME | MARCA TEMPORAL | Explica la marca de tiempo |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| GROUPID | SMALLINT | Identificador de grupo paralelo dentro del bloque de consulta actual |
| PRIMER PLAN | SMALLINT | Número de planta del primer mini-plan que contribuyó asociado dentro de este grupo paralelo |
| LASTPLAN | SMALLINT | Número de planta del último mini-plan asociado a este grupo paralelo |
| Coste de CPU | REAL | Coste estimado de CPU de este grupo paralelo en milisegundos |
| IOCOST | REAL | Coste total estimado de E/S de este grupo paralelo en milisegundos |
| MEJOR TIEMPO | REAL | Tiempo estimado transcurrido para cada tarea paralela de este grupo paralelo |
| TÍTULO | SMALLINT | Grado de paralelismo para este grupo paralelo determinado en el tiempo de enlace |
| MODE | CHAR(1) |
El modo paralelo: I = Paralelismo de E/S C = paralelismo de CPU N = Sin paralelismo |
| RAZÓN | SMALLINT | Motivo para degradar el modo de paralelismo |
| LOCALCPU | SMALLINT | Número de CPUs actualmente en línea al preparar la consulta |
| TOTALCPU | SMALLINT | Número total de CPUs en Sysplex |
| PRIMERA BASE | SMALLINT | Número de tabla de la tabla en la que se está realizando la partición |
| LARGETS | CHAR(1) | El valor están Y si el espacio de la tabla está grande en este grupo |
| PARTKIND | CHAR(1) |
Tipo de particionamiento: L = Partición lógica P – Partición física |
| GRUPO | CHAR(1) | Indica operaciones en grupo paralelo: acceso a la tabla, join o sort (A, AJ o AJS) |
| ORDEN | CHAR(1) |
Requisito de orden de este grupo paralelo: N = Sin orden T = Orden natural K = Orden de las tonalidades |
| ESTILO | CHAR(4) |
Estilo de formato de entrada/salida del grupo paralelo RIRO = Registros entrados, registros FUERA WIRO = Archivo de trabajo IN, Registros FUERA WIWO = Archivo de trabajo ENTRADA, Archivo de trabajo SALIDA |
| RANGEKIND | CHAR(1) |
Tipo de rango: K = Rango de teclas L = IN = partición de elementos de lista P = Rango de páginas R = Partición por rango de registros |
| NKEYCOLS | SMALLINT | Número de columnas clave interesantes – número de columnas que participarán en la operación clave para este grupo paralelo |
| BAJO LÍMITE | VARCHAR (40) | Cota inferior del grupo paralelo |
| HIGHBOUND | VARCHAR (40) | Cota alta del grupo paralelo |
| EN FONDO | VARCHAR (40) | Un rango bajo si se divide por rango de tonalidades |
| HIGHKEY | VARCHAR (40) | Mayor clave del rango si se divide por rango de tonalidades |
| PRIMERA PÁGINA | CHAR(4) | Primera página en el rango si se divide por rango de páginas |
| ÚLTIMA PÁGINA | CHAR(4) | Última página en el rango si se particiona por rango de páginas |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro de DB2 donde se ejecutaba EXPLAIN |
| APPLNAME | VARCHAR (24) | Nombre del plan de solicitud |
| SECTNOI | ENTERO | Número de selección de la afirmación |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Si no, la columna está en blanco |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (24) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| PREDNO | ENTERO | Un número utilizado para identificar un predicado dentro de una consulta |
| TIPO | CHAR(8) |
Una cadena utilizada para indicar el tipo u operación de predicado: Y, O, IGUAL, RANGO, ENTRE, EN, COMO, NO IGUAL, EXISTE, COMPUESTO, NO EXISTE, SUBCONSULTA, TENIENDO, OTROS |
| LEFT_HAND_SIDE | VARCHAR (128) | Si el lado izquierdo (LHS) del predicado están una columna de tabla (LHS_TABNO>0, indica nombre de columna: VALUE, COLEXP, NONCOLEXP, CORSUB, NONCORSUB, SUBQUERY, EXPRESSION, blank |
| LEFT_HAND_PNO | ENTERO | Si LHS del predicado están una columna de tabla (LHS_TABNO>0), indica el nombre de la columna: VALUE, COLEXP, NONCOLEXP, CORSUB, NOCORSUB, SUBQUERY, EXPRESSION, en blanco |
| LHS_TABNO | SMALLINT | Si LHS de predicado está una columna de tabla, indica un número que identifica de forma única la referencia de tabla correspondiente dentro de una consulta |
| LHS_QBNO | SMALLINT | Si LHS de predicado está una columna de tabla, indica un número que identifica de forma única la referencia de tabla correspondiente dentro de una consulta |
| RIGHT_HAND_SIDE | VARCHAR (128) | Si el lado derecho (RHS) del predicado están una columna de tabla (RHS_TABNO>0), indica el nombre de la columna: VALUE, COLEXP, NONCOLEXP, CORSUB, NONCORSUB, SUBQUERY, EXPRESSION, blank |
| RIGHT_HAND_PNO | ENTERO | Si el predicado están compuesto (AND/OR), indica el predicado hijo |
| RHS_TABNO | CHAR(1) | Si la derecha de predicado está en una columna de tabla, indica un número que identifica de forma única la referencia de tabla correspondiente dentro de una consulta |
| RHS_QBNO | CHAR(1) | Si la derecha de predicado está una subconsulta, indica un número que identifica de forma única el bloque de consulta correspondiente dentro de una consulta |
| FILTER_FACTOR | FLOAT | Factor de filtro estimado |
| BOOLEAN_TERM | CHAR(1) | Si el predicado puede usarse para determinar el valor de verdad de toda la cláusula WHERE |
| SEARCHARG | CHAR(1) | Si el predicado puede ser procesado por el gestor de datos (DM) etapa 1 |
| AFTER_JOIN | CHAR(1) |
Indica la fase de evaluación de predicados: A = Después de unir D = Durante la unión En blanco = No aplicable |
| ADDED_PRED | CHAR(1) |
Si el predicado está generado por DB2 y el predicado de razón están añadidos: En blanco DB2 no añadió el predicado 'B' Para burbuja 'C' Para correlación 'J' Para unir 'K' Para LIKE para índice basado en expresiones 'L' Para localización 'P' Por empujar hacia abajo 'R' Para el rango de páginas 'S' Para simplificar 'T' Para cierre transitivo |
| REDUNDANT_PRED | CHAR(1) | Si el predicado están un predicado redundante |
| DIRECT_ACCESS | CHAR(1) | Si el predicado están acceso directo, se navega directamente a la fila a través de ROWID |
| KEYFIELD | CHAR(1) | Si el predicado incluye la columna clave de índice de la tabla involucrada |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| TEXTO | VARCHAR (2000) | Texto del predicado transformado |
| MARCADOR | CHAR(1) | El predicado incluye variables anfitriona, marcadores de parámetros o registros especiales |
| PARENT_PNO | ENTERO | Número predicado padre |
| NEGACIÓN | CHAR(1) | Si el predicado está negado mediante NO |
| LITERALES | VARCHAR (128) | Valor literal o valores literales separados por símbolos de dos puntos |
| CLÁUSULA | CHAR(8) |
Cláusula donde existe el predicado: TENER = TENER cláusula cláusula ON = ON cláusula WHERE = WHERE SELECT = La cláusula SELECT |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del DB2 que ejecutó EXPLAIN |
| ORIGEN | CHAR(1) |
Indica el origen del predicado. Blank = generado por DB2 C = máscara de columna R = permiso por fila U = especificado por el usuario |
| INCERTIDUMBRE | FLOTADOR(4) | Describe el factor de incertidumbre del factor de filtro estimado de un predicado. Un valor mayor indica un grado mayor de incertidumbre. Cero indica que no hay incertidumbre o incertidumbre no considerada |
| SECTNOI | ENTERO | Número de sección de la declaración |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Si no, columna está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_PREDICATE_SELECTIVITY
Contiene información sobre la selectividad de predicados que se son utilizados para la selección de rutas de acceso. Se está utilizando como tabla de entrada para el comando BIND QUERY cuando se especifican son sobreescrituras de selectividad.
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número que identifica cada bloque de consulta dentro de una consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| SECTNOI | ENTERO | Número de sección de la declaración |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| PREDNO | ENTERO | Número de predicado. Identifica un predicado específico dentro de una consulta |
| INSTANCIA | SMALLINT | Instancia de selectividad. Usada para agrupar selectividades relacionadas |
| SELECTIVIDAD | FLOAT | Estimación de selectividad |
| PESO | FLOTADOR(4) | Porcentaje de ejecuciones que tienen la selectividad especificada |
| PRESUNCIÓN | VARCHAR (128) |
NULL indica cómo se estimó o está usando la selectividad 'NORMAL' – La selectividad se está estimada usando supuestos de selectividad normal 'SOBREESCRITURA' – La selectividad se está basada en una anulación |
| INSERT_TIME | MARCA TEMPORAL | Hora en la que se insertó o actualizó la fila |
| EXPLAIN_TIME | MARCA TEMPORAL |
Momento en que se capturó la información de EXPLICA: Todas las sentencias en caché – Cuando la sentencia entraba en caché Sentencias estáticas sin caché: cuando la sentencia estaba enlazada, Sentencias dinámicas sin caché – Cuando se ejecutaba EXPLAIN |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_QUERYINFO_TABLE
Contiene información sobre la elegibilidad de los bloques de consulta para la reescritura automática de consultas...
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número que identifica cada bloque de consulta dentro de una consulta |
| QINAME1 | VARCHAR (128) |
Cuando TYPE='A': · Cuando REASON_CODE=0, este valor están el nombre del servidor acelerador al que están enviado la consulta · Cuando REASON_CODE<>0, la consulta no se envió a un servidor acelerador. El valor REASON_CODE indica por qué la consulta no se envió al servidor acelerador |
| QINAME2 | VARCHAR (128) | Cuando TYPE='A' y REASON_CODE=0, el valor están nombre de la ubicación |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del DB2 que ejecutó EXPLAIN |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE - fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES - la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN - la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| SECTNOI | ENTERO | Número de sección de la declaración |
| SEQNO | ENTERO | Número de secuencia para la fila si QI_DATA supera el tamaño de su columna |
| EXPLAIN_TIME | MARCA TEMPORAL |
Momento en que se capturó la información de EXPLICA: Todas las declaraciones en caché – Cuando la declaración entró en el cahce Sentencias estáticas no almacenadas en caché – Cuando la sentencia estaba vinculada Sentencias dinámicas no almacenadas en caché – Cuando se ejecutaba EXPLAIN |
| TIPO | CHAR(8) |
Tipo de salida para esta fila: A – fila están para una consulta que DB2 intenta ejecutar en un servidor acelerador. El valor en la columna REASON_CODE indica el resultado |
| QI_DATA | CLOB(2M) |
Cuando TYPE='A': · Para REASON_CODE valores distintos de 0, el valor están descripción del valor REASON_CODE · Para un valor REASON_CODE 0, valor están texto de consulta, después de están convertido para su procesamiento por acelerador |
| EXPANSION_REASON | CHAR(2) | Columna se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco. |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente Sentencias SQL en el catálogo DB2 |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PGDNO | SMALLINT | Identificador de grupo paralelo dentro del bloque de consulta actual |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| LPTNO | SMALLINT | Número de tarea paralelo |
| KEYCOLID | SMALLINT | La clave indica ID (solo rango de CLAVE) |
| DPSI | CHAR(1) | Indica si se está utilizando un índice secundario de partición de datos (DPSI) |
| LPTLOKEY | VARCHAR (40) | Valor bajo clave para esta columna clave para esta tarea paralela (solo rango de CLAVE) |
| LPTHIKEY | VARCHAR (40) | Alto valor clave para esta columna de claves para esta tarea paralela (solo rango de CLAVE) |
| LPTLOPAG | CHAR(4) | Poca información de página si se particiona por rango de páginas |
| LPTHIKEY | CHAR(4) | Alta información de página si se particiona por rango de página |
| LPTLOPG | CHAR(4) | Número de página con límite inferior para tareas paralelas (rango de páginas o DPSI activado) |
| LPTHIPG | CHAR(4) | Número de página del límite superior para tarea paralela (rango de páginas o DPSI habilitado) |
| LPTLOPT | SMALLINT | Número de partición de límite inferior para tareas paralelas (rango de páginas o DPSI activado) |
| KEYCOLDT | SMALLINT | Tipo de datos para esta columna clave (solo rango de CLAVE) |
| KEYCOLPREC | SMALLINT | Precisión/longitud para esta columna de claves (solo rango de CLAVES) |
| KEYCOLSCAL | SMALLINT | Escala para esta columna clave (rango de CLAVES solo con tipo de datos decimales) |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_QUERY_TABLE
Contiene información sobre una sentencia SQL y muestra la sentencia antes y después de la transformación de consulta en XML
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| TIPO | CHAR(8) | Tipo de datos en la columna NODE_DATA |
| QUERY_STAGE | CHAR(8) | Etapa durante la transformación de la consulta cuando esta fila está poblada |
| SEQNO | ENTERO | Número de secuencia para esta fila si NODE_DATA excede el tamaño de su columna |
| NODE_DATA | CLOB(2M) | Datos XML que contienen la sentencia SQL y su información de bloques de consulta, tabla y columna |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| QUERY_ROWID | ROWID | ROWID de la afirmación |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| CLAVE HASH | ENTERO | Valor hash del contenido en NODE_DATA |
| HASH_PRED | CHAR(1) | Cuando NODE_DATA contiene una sentencia SQL, indica si la sentencia contiene un parámetro de mercado, un de mercado no paramétrico, o ningún predicado |
| SECTNOI | ENTERO | Número de sección de la declaración |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Se está explicando el nombre del programa o del paquete que contiene la instrucción |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | La columna se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Si no, la columna está en blanco |
DSN_SORTKEY_TABLE
Contiene información sobre claves de ordenación para todas las ordenaciones requeridas por una consulta
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PLANNO | SMALLINT | Un número utilizado para identificar cada mini-plan dentro de un bloque de consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| SORTNO | SMALLINT | Número de secuencia del tipo |
| ORDERNO | SMALLINT | Secuencia de la clave de ordenación |
| EXPTYPE | CHAR(3) | Tipo de la clave de ordenación. Los valores posibles son COL, EXP, QRY |
| TEXTO | VARCHAR (128) | Ordenar texto clave; puede ser un nombre de columna, una subconsulta escalar o 'ID de registro' |
| TABNO | SMALLINT | Número que identifica de forma única la referencia correspondiente a la tabla dentro de la consulta |
| COLNO | SMALLINT | Un número que identifica de forma única la columna correspondiente dentro de una consulta. Aplicable solo cuando la clave de ordenación está una columna |
| TIPO DE DATOS | CHAR(18) | Tipo de dato de la clave de ordenación: HEXADECIMAL, CARÁCTER, CAMPO EMPAQUETADO, FIJO(31), FIJO(15), FECHA, HORA, VARCHAR, FLD EMPAQUETADO, MARCA DE TIEMPO FLOAT, TIPO DE DATO Unknown |
| DURACIÓN | ENTERO | Longitud de la clave de ordenación |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión para el paquete |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Else, blank |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_SORT_TABLE
Contiene información sobre las operaciones de ordenamiento requeridas para una consulta
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta dentro de una consulta |
| PLANNO | SMALLINT | Un número utilizado para identificar cada mini-plan dentro de un bloque de consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| SORTC | CHAR(5) |
Razones para una especie de tabla compuesta. Usando un mapa de bits con los siguientes valores: G = Agrupar por O = Orden por J = Unir U = Unicalidad |
| SORTN | CHAR(5) |
Razones para una especie de tabla compuesta. Usando un mapa de bits con los siguientes valores: G = Agrupar por O = Orden por J = Unir U = Unicalidad |
| SORTNO | SMALLINT | Secuencia del tipo |
| KEYSIZE | SMALLINT | Suma de las longitudes de las claves de ordenación |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión para el paquete |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o temporales. Else, blank |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| STMT_ID | ENTERO | Un token único de EDM |
| STMT_TOKEN | VARCHAR (240) | Una cadena de identificación proporcionada por el usuario |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| PROGRAM_NAME | VARCHAR (128) | Nombre del paquete o DBRM que realizó el PREPARE inicial |
| INV_DROPALT | CHAR(1) | Invalidado por DROP/ALTER |
| INV_REVOKE | CHAR(1) | Invalidado por REVOKE |
| INV_LRU | CHAR(1) | Eliminado de la caché por LRU |
| INV_RUNSTATS | CHAR(1) | Invalidado por RUNSTATS |
| CACHED_TS | MARCA TEMPORAL | Marca de tiempo cuando la instrucción se almacenó en caché |
| USUARIOS | ENTERO | Número de usuarios actuales de la declaración. Estos son los usuarios que han preparado o ejecutado la declaración durante su unidad o trabajo actual |
| COPIAS | ENTERO | Número de copias de la declaración propiedad de todos los hilos del sistema |
| LÍNEAS | ENTERO | Número de línea del precompilador del PREPARE inicial |
| PRIMAUTH | VARCHAR (128) | ID de autorización principal del usuario que realizó el PREPARE inicial |
| CURSQLID | VARCHAR (128) | SQLID ACTUAL del usuario que hizo la preparación inicial |
| BIND_QUALIFIER | VARCHAR (128) | Vincular el calificador de objetos para nombres de tablas no calificadas |
| BIND_ISO | CHAR(2) |
Opción de enlace de aislamiento: UR = Lectura no comprometida CS = Estabilidad del cursor RS = Estabilidad de lectura RR = Lectura repetible |
| BIND_CDATA | CHAR(1) |
Opción de vinculación de DATA CURRENTDATA: Y = CURRENTDATA(SÍ N = CURRENTDATA(NO) |
| BIND_DYNRL | CHAR(1) |
Opción de vinculación DYNAMICRULES: B = REGLAS DINÁMICAS(BIND) R = DYNAMICRULES(RUN) |
| BIND_DEGRE | CHAR(1) |
VALOR DEL TÍTULO ACTUAL: A = CUALQUIERA 1 = 1 |
| BIND_SQLRL | CHAR(1) |
VALOR DE REGLAS ACTUALES: D = DB2 S = SQL |
| BIND_CHOLD | CHAR(1) |
Cursor CON opción de asignación MANTENIDA: Y = PREPARE inicial se realizó para un cursor CON HOLD N = El PREPARE inicial no se realizó para un cursor CON MANTENER |
| STAT_TS | MARCA TEMPORAL | Marca temporal de las estadísticas cuando está iniciado IFCID 318 |
| STAT_EXEC | ENTERO | La columna están obsoleta. utiliza STAT_EXECB en su lugar |
| STAT_GPAG | ENTERO | Columna en obsoleta. utiliza STAT_GPAGB en su lugar |
| STAT_SYNR | ENTERO | Columna están obsoleta. utiliza STAT_SYNRB en su lugar |
| STAT_WRIT | ENTERO | Columna están obsoleta. utiliza STAT_WRITB en su lugar |
| STAT_EROW | ENTERO | Columna están obsoleta. utiliza STAT_EROWB en su lugar |
| STAT_PROW | ENTERO | La columna están obsoleta. utiliza STAT_PROWB en su lugar |
| STAT_SORT | ENTERO | La columna están obsoleta. utiliza STAT_SORTB en su lugar |
| STAT_INDX | ENTERO | La columna están obsoleta. utiliza STAT_INDXB en su lugar |
| STAT_RSCN | ENTERO | Columna están obsoleta. utiliza STAT_RSCNB en su lugar |
| STAT_PGRP | ENTERO | Columna están obsoleta. utiliza STAT_PGRPB en su lugar |
| STAT_ELAP | FLOAT | Tiempo acumulado transcurrido para la declaración |
| STAT_CPU | FLOAT | Tiempo acumulado de CPU utilizado para la declaración |
| STAT_SUS_SYNIO | FLOAT | Tiempo de espera acumulado para E/S síncrona |
| STAT_SUS_LOCK | FLOAT | Tiempo de espera acumulado para solicitudes de bloqueo y bloqueo |
| STAT_SUS_SWIT | FLOAT | Tiempo de espera acumulado para el cambio de unidad de ejecución síncrona |
| STAT_SUS_GLCK | FLOAT | Tiempo de espera acumulado para bloqueos globales |
| STAT_SUS_OTHER | FLOAT | Tiempo de espera acumulado para la actividad de lectura realizado por otro hilo |
| STAT_SUS_OTHW | FLOAT | Tiempo de espera acumulado para la actividad de escritura realizada por otro hilo |
| STAT_RIDLIMT | ENTERO | La columna están obsoleta. utiliza STAT_RIDLIMTB en su lugar |
| STAT_RIDSTOR | ENTERO | Columna están obsoleta. utiliza STAT_RIDSTORB en su lugar |
| EXPLAIN_TS | MARCA TEMPORAL | Cuando la tabla de caché de las sentencias está llenada |
| ESQUEMA | VARCHAR (128) | VALOR ACTUAL DEL ESQUEMA |
| STMT_TEXT | CLOB(2M) | Texto de la declaración |
| STMT_ROWID | ROWID | Declaración ROWID |
| BIND_RO_TYPE | CHAR(1) |
Especificación actual de la opción REOPT para la sentencia: N = REOPT(NINGUNO) 1 = REOPT(ONCE) o su equivalente A = REOPT(AUTO) o su equivalente 0 = No need ni REOPT(AUTO) |
| BIND_RA_TOT | ENTERO' | Número total de comandos REBIND emitidos para la instrucción dinámica debido a la opción REOPT(AUTO) |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro de compartición de datos de DB2 que insertó la fila |
| STAT_GPAGB | BIGINT | Número de operaciones getpage realizadas |
| STAT_SYNRB | BIGINT | Número de lecturas de búfer síncrono realizadas |
| STAT_WRITB | BIGINT | Número de operaciones de escritura en búfer realizadas |
| STAT_EPROWB | BIGINT | Número de filas que son examinadas |
| STAT_PROWB | BIGINT | Número de filas que son procesadas |
| STAT_SORTB | BIGINT | Número de tipos que son realizados |
| STAT_EXECB | BIGINT | Número de veces que se ha ejecutado esta sentencia. Para una sentencia con cursor, este están el número de OPENs |
| STAT_INDXB | BIGINT | Número de escaneos de índice que son realizados |
| STAT_RSCNB | BIGINT | Número de escaneos de espacio de tabla que son realizados |
| STAT_PGRPB | BIGINT | Número de grupos paralelos que son creados |
| STAT_RIDLIMTB | BIGINT | Número de veces que una lista RID no se utilizó porque el número de RID habría superado los límites de DB2 |
| STAT_RIDSTORB | BIGINT | Número de veces que la lista RID no se utilizó porque no está suficiente almacenamiento disponible para albergar la lista de RIDs |
| LITERAL_REPL | CHAR(1) |
Identifica sentencias en caché donde los valores literales son reemplazados por '&'I: La sentencia R = se está preparada con el comportamiento de CONCENTRE STATEMENT WITH LITERALS y las constantes literales en la sentencia han sido reemplazadas por '&' D = Sentencia está una instancia de afirmación duplicada con diferentes criterios literales de reutilización Blank = los valores literales no se son reemplazados |
| STAT_SUS_LATCH | FLOAT | Tiempo de espera acumulado para solicitudes de latch |
| STAT_SUS_PLATCH | FLOAT | Tiempo de espera acumulado para solicitudes de bloqueo de página |
| STAT_SUS_DRAIN | FLOAT | Tiempo de espera acumulado para solicitudes de bloqueo de desagüe |
| STAT_SUS_CLAIM | FLOAT | Tiempo de espera acumulado para solicitudes de reclamaciones |
| STAT_SUS_LOG | FLOAT | Tiempo de espera acumulado para las solicitudes de los escritores del registro |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco |
| ACELERADO | CHAR(10) | Si la instrucción en caché estaba preparada para el servidor de aceleración. NO, SÍ, NUNCA |
| STAT_ACC_ELAP | BIGINT | Tiempo acumulado transcurrido para el acelerador |
| STAT_ACC_CPU | BIGINT | Tiempo acumulado de CPU para el acelerador |
| STAT_ACC_ROW | BIGINT | Número acumulado de filas retornadas desde el acelerador |
| STAT_ACC_BYTE | BIGINT | Número acumulado de bytes devueltos desde el acelerador |
| STAT_ACC_1ROW | BIGINT | El tiempo esperó a que la primera fila regresara del acelerador |
| STAT_ACC_DB2 | BIGINT | El acelerador de tiempo total esperaba a que DB2 solicitara resultados de la consulta |
| STAT_ACC_EXEC | BIGINT | Tiempo acumulado de ejecución para el acelerador |
| STAT_ACC_WAIT | BIGINT | Tiempo de espera acumulado para el acelerador |
| ACCEL_OFFLOAD_ELIGIBLE | CHAR(1) |
NO – declaración no elegible para aceleración SÍ – la declaración es candidata a la aceleración si está disponible |
| ACCELERATOR_NAME | VARCHAR (128) | Nombre concatenado del seserver acelerador que procesaba consultas |
| STAT_SUS_CHILDLLOCKS | FLOAT | Tiempo de espera acumulado para los L-locks infantiles para el extracto |
| STAT_SUS_OTHERLLOCKS | FLOAT | Tiempo de espera acumulado para otros L-locks para la declaración |
| STAT_SUS_PPPLOCKS | FLOAT | Tiempo de espera acumulado para los P/PP-Locks para la declaración |
| STAT_SUS_PAGEPLOCKS | FLOAT | Tiempo de espera acumulado para los P-locks PAGE para el extracto |
| STAT_SUS_OTHERPLOCKS | FLOAT | Tiempo de espera acumulado para otros P-locks para la declaración |
| PER_STMT_ID | BIGINT | Identificador de sentencia para SQL dinámico estabilizado |
| STBLGRP | VARCHAR (128) | Nombre del grupo de estabilización especificado en un Comienza DYNQRY |
| HASH DE CONSULTA | CHAR(16) | Tiene la clave generada por la sentencia User |
| QUERY_HASH_VERSION | ENTERO | Versión de QUERY_HASH |
| ESTABILIZADO | CHAR(1) | Indica si la declaración fue estabilizada |
| APPLCOMPAT | CHAR(10) | Nivel de compatibilidad de aplicaciones de una sentencia SQL dinámica |
| CNO | BIGINT | Número de comando para el supervisa dinámico de captura de consultas |
| STAT_SUS_PIPE | FLOAT | Tiempo de espera acumulado para solicitudes de latch |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del DB2 que ejecutó EXPLICACIÓN, o en blanco |
| EXPLAIN_TIME | MARCA TEMPORAL | La cuenta de tiempo están procesada, igual que BIND_TIME en PLAN_TABLE |
| STMT_TYPE | CHAR(6) |
Tipo de afirmación que se está explicando: SELECT = SELECT INSERT = INSERT ACTUALIZACIÓN = ACTUALIZACIÓN ELIMINAR = ELIMINAR FUSIÓN = FUSIÓN TRUNCA = TRUNCAR SELUPD = SELECT con FOR UPDATE OF DELCUR = BORRAR DONDE ESTÁ EL CURSOR ACTUAL ACTUALIZADO = ACTUALIZACIÓN DONDE EL CURSOR ESTÁ EN CORRIENTE |
| COST_CATEGORY | CHAR(1) |
Donde DB2 se vio obligado a utilizar valores por defecto al hacer sus estimaciones: A = Estimación de coste realizada sin usar valores por defecto B = existe alguna condición para la cual DB2 se vio obligado a utilizar valores por defecto. Valores en REASON para determinar por qué DB2 no pudo colocar la estimación en la categoría de coste A |
| PROCMS | ENTERO | Coste estimado del procesador en milisegundos para la instrucción SQL |
| PROCSU | ENTERO | Coste estimado del procesador en unidades de servicio para la instrucción SQL |
| RAZÓN | VARCHAR (254) |
Razones para incluir una estimación en la categoría de coste B: ELEGIBLE PARA ACCELMODEL: elegible para aceleración ACCELMODEL NO ELEGIBLE: no elegible para aceleración HACIENDO: Una subselección en la sentencia SQL contiene un HAVING VARIABLES DE ANFITRIÓN: la sentencia utiliza variables anfitriona, marcadores de parámetros o registros especiales CONSEJOS DE OPTIMIZACIÓN: sugerencia a nivel de sentencia o pista de acceso aplicada PROFILEID: ID de perfil si se utiliza monitorización de perfiles RESTRICCIONES REFERENCIALES: existen restricciones referenciales de tipo CASCADE o SET NULL en la tabla objetivo de una sentencia DELETE CARDINALIDAD DE LA TABLA: son ausentes estadísticas de cardinalidad en una o más de las tablas utilizadas en la afirmación UDF: la sentencia utiliza funciones definidas por el usuario TRIGGERS: los disparadores son definidos en la tabla destino de una instrucción INSERT, UPDATE o DELETE |
| STMT_ENCODE | CHAR(1) |
Esquema de codificación de la sentencia. Si la sentencia representa un único conjunto CCSID, los valores posibles son: A = ASCII E = EBCDIC U = UNICODE Si la sentencia tiene varios conjuntos CCSID, el valor de la columna están M |
| TOTAL_COST | FLOAT | Coste estimado global del extracto. Debe usarse solo como referencia |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco. |
| APCOMPARE_STATUS | CHAR(1) |
Estado de la operación de comparación de rutas de acceso para la opción APCOMPARE en BIND o REBIND S = Comparación de rutas de acceso exitosa F = La nueva ruta de acceso no coincide con la anterior, comparación fallida N – Sin coincidencia |
| APREUSE_STATUS | CHAR(1) |
Estado de la operación de comparación de rutas de acceso para la opción APREUSE en BIND o REBIND S = reutilización del camino de acceso lograda F = reutilización del camino de acceso fallida N = sin coincidencia |
| APREUSE_VERSION | VARCHAR (122) | Identificador de versión del paquete |
| APREUSE_COPYID | ENTERO | Número de copia del identificador del paquete |
| EXPLAIN_TYPE | CHAR(1) |
Tipo de acción que creó la fila: A = Reasignación automática B = comando BIND C = INSTRUCCIÓN CACHE DE LA SENTENCIA EXPLICAR D = sentencia EXPLAIN dinámica R = comando REBIND S = INSTRUCCIÓN DE CONSULTA DINÁMICA ESTABILIZADA |
| PER_STMT_ID | BIGINT | Identificador persistente de sentencias para sentencias SQL en tablas de catálogo DB2 |
| QUERY_HASH | CHAR(16) | Clave hash generada por texto de sentencias |
DSN_STAT_FEEDBACK
Recomendaciones para capturar estadísticas faltantes o contradictorias definidas durante EXPLAIN
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| VERSIÓN | VARCHAR (122) | Identificador de versión para el paquete |
| TBCREATOR | VARCHAR (128) | Creador de la tabla |
| TBNAME | VARCHAR (128) | Nombre de la tabla |
| IXCREATOR | VARCHAR (128) | Creador del índice |
| IXNAME | VARCHAR (128) | Nombre del índice |
| COLNAME | VARCHAR (128) | Nombre de la columna |
| NUMCOLUMNS | SMALLINT | Número de columnas en el grupo de columnas |
| COLGROUPCOLNO | VARCHAR (254) | Una representación hexadecimal identifica un conjunto de columnas asociadas a estadísticas |
| TIPO | CHAR(1) |
Tipo de estadística a recopilar: 'C' Cardinalidad 'F' Frecuencia 'H' Histograma 'I' Índice 'T' Mesa |
| DBNAME | VARCHAR (24) | Nombre de la base de datos |
| TSNAME | VARCHAR (24) | Nombre del espacio de tabla |
| RAZÓN | CHAR(8) |
Razón por la que se recomendó la estadística: 'BASIC' – Un valor estadístico básico para una tabla de columnas o índice están falta. No se recogieron estadísticas para el objeto identificado 'KEYCARD' – Faltan las cardinalidades de las columnas clave del índice son 'LOWCARD' – La cardinalidad de la columna están un valor bajo, lo que indica que los datos pueden estar sesgados 'DEFAULT' – un predicado hace referencia a un valor que probablemente están un valor por defecto, lo que indica que los datos podrían estar sesgados 'RANGEPRD' – Estadísticas de histograma no disponibles para un predicado de rango 'PARALELO' – El paralelismo podría mejorarse mediante la partición uniforme de rangos de claves 'CONFLICTO' – Otra estadística contiene un valor que entra en conflicto con el valor de esta estadística 'COMPFFIX' – Se son necesarias estadísticas de cardinalidad de varias columnas para un factor de filtro compuesto índice 'ENTRETENIDO' – Una estadística parece estar desincronizada |
| COMENTARIOS | VARCHAR (254) | Texto libre para extensibilidad |
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| QBLOCKNO | SMALLINT | Un número utilizado para identificar cada bloque de consulta en una consulta |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| PADRE | SMALLINT | Número de bloque de consulta padre del bloque de consulta actual en la estructura de texto SQL; igual que PARENT_QBLOCKNO en PLAN_TABLE |
| TIEMPOS | FLOAT | Número estimado de filas devueltas por el Administrador de Datos y número de ejecuciones del bloque de consulta |
| RECUENTO DE FILAS | ENTERO | Número estimado de filas devueltas por RDS (cardinalidad de consulta) |
| ATOPEN | CHAR(1) | Si el bloque de consulta se está movido hacia adelante para el procesamiento de hacer a la apertura. Y si se hace a la apertura o N de otra forma |
| CONTEXTO | CHAR(10) | Contexto del bloque de consulta actual. Los valores son: NIVEL SUPERIOR, UNIÓN, UNIÓN TODO, PREDICADO, EXP DE LA TABLA, Unknown |
| ORDERNO | SMALLINT | No utilizado |
| DOATOPEN_PARENT | SMALLINT | Número de bloque de consulta padre del bloque de consulta actual. Padre Do-at-open si el bloque de consulta están done-at-open, puede diferir de PARENT_QBLOCKNO en PLAN_TABLE |
| QBLOCK_TYPE | CHAR(6) |
Tipo de bloque de consulta actual: SELECCIONAR, INSERTAR, ACTUALIZAR, ELIMINAR, SELUPD, DELCUR, ACTUALIZAR, CORSUB, NCOSUB, TABLEX, TRIGGR, UNION, UNIONA, CTE Equivalente a QBLOCK_TYPE columna en PLAN_TABLE, excepto para CTE |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMEBR | CHAR(8) | Nombre del miembro del subsistema DB2 que ejecutó EXPLAIN |
| ORIGEN | CHAR(1) |
Indica el origen del bloque de consulta Blank = generado por DB2 C = máscara de columna R = permiso por fila U = especificado por el usuario |
| SECTNOI | ENTERO | Número de sección de la declaración |
| COLISIÓN | VARCHAR (128) |
ID de la colección: DSNDYNAMICSQLCACHE: la fila se origina a partir de la caché dinámica de sentencias DSNEXPLAINMODEYES: la fila se origina en una aplicación que especifica SÍ para el registro especial CURRENT EXPLAIN MODE DSNEXPLAINMODEEXPLAIN: la fila se origina en una aplicación que especifica EXPLAIN para el registro especial ACTUAL DE EXPLAIN MODE Cuando una sentencia SQL está incrustada en una función SQL compilada, procedimiento SQL nativo o disparador avanzado, columna están el esquema de la función SQL compilada, procedimiento SQL nativo o disparador avanzado |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco |
| PER_STMT_ID | BIGINT | Identificador de sentencia persistente para sentencias SQL en el catálogo DB2 |
DSN_VIEWREF_TABLE
Contiene información sobre todas las vistas y tablas de consulta materializadas para procesar una consulta
| Nombre de la columna | Tipo de datos | Descripción |
|---|---|---|
| CONSULTA | ENTERO | Un número destinado a identificar la afirmación que se explica |
| APPLNAME | VARCHAR (24) | Nombre del plan de aplicación para la fila |
| NOMBRE | VARCHAR (128) | Nombre del programa o paquete que contiene la instrucción que se está explicando |
| VERSIÓN | VARCHAR (122) | Identificador de versión del paquete |
| COLISIÓN | VARCHAR (128) | ID de la colección |
| CREADOR | VARCHAR (128) | ID de autorización del propietario del objeto |
| NOMBRE | VARCHAR (128) | Nombre del objeto |
| TIPO | CHAR(1) |
Tipo de objeto: V = Vista R = MQT usado para reemplazar la tabla base para la reescritura M = MQT |
| MQTUSE | SMALLINT | Solo utiliza interna de IBM |
| EXPLAIN_TIME | MARCA TEMPORAL | EXPLICA la marca de tiempo |
| GROUP_MEMBER | VARCHAR (24) | Nombre de Explain del subsistema DB2 que ejecutó EXPLAIN |
| SECTNOI | ENTERO | Número de sección de la declaración |
| EXPANSION_REASON | CHAR(2) | Se aplica solo a sentencias que hacen referencia a tablas de archivo o tablas temporales. Para otras sentencias, esta columna está en blanco. |
Aviso legal: Esta Guía de Referencia de Db2® 12 para z/OS fue desarrollada para ayudar a los usuarios en sus actividades diarias en la administración y programación en Db2 para z/OS. No son garantías expresadas ni implícitas con el contenido de esta guía. Queremos proporcionar una referencia de calidad y útil para los usuarios. Por favor, notifícanos cualquier error o error en esta guía de referencia en blogs@bmc.com. Db2 están una marca registrada de IBM Corporation.
Guía Db2
- Db2 12 para z/OS: Una introducción
- Funciones escalares en Db2 12
- Cómo leer diagramas sintácticos de IBM<sup>®</sup> para Db2 12
- Elementos del lenguaje en Db2 12
- Funciones agregadas en Db2 12
- Funciones de tabla y fila en Db2 12
- Consultas en Db2 12
- Comandos en Db2 12
- Sentencias de control SQL en Db2 12
- Explica las tablas en Db2 12
- DSNZPARM en Db2 12
- Parámetros de enlace en Db2 12
- Límites de Db2 en Db2 12
- Área de Comunicación SQL (SQLCA) en Db2 12
- REXX SQLCA en Db2 12
- Obtén diagnósticos en Db2 12
- IFCIDS en Db2 12
- Tablas de catálogo en Db2 12
- Excepciones en Db2 12
- Tablas del Repositorio de Esquemas XML en Db2 12
- Estadísticas actualizables del catálogo en Db2 12
- IBM Utilities en Db2 12
- Códigos de retorno positivo SQL en Db2 12
- Códigos de retorno de errores SQL en Db2 12
Estas publicaciones son mías y no representan necesariamente la posición, estrategias u opinión de BMC.