Anda di halaman 1dari 107

DB2 versión 9.

1 para z/OS
򔻐򗗠򙳰

Novedades

GC11-3452-02
Contenido
Acerca de esta información . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Terminología y referencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Cómo enviar comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi

Capítulo 1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda . . . . . . . 5


Perfecta integración de datos XML y datos relacionales . . . . . . . . . . . . . . . . . . . . . 5
Compatibilidad y liderazgo con SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Mejoras en la coherencia con SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Cómo aprovechar las capacidades existentes de programación de aplicaciones . . . . . . . . . . . . 13
Mejoras en el soporte de objetos grandes . . . . . . . . . . . . . . . . . . . . . . . . 13
Liderazgo de SQL: novedades de la familia. . . . . . . . . . . . . . . . . . . . . . . . 16
Herramientas que dan soporte a la empresa . . . . . . . . . . . . . . . . . . . . . . . . 18
Acceso a los datos de la empresa bajo demanda con DB2 QMF . . . . . . . . . . . . . . . . . 18
Gestión de la empresa con las Herramientas de DB2. . . . . . . . . . . . . . . . . . . . . 21

Capítulo 3. Disponibilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
REORG en línea sin ninguna fase BUILD2 . . . . . . . . . . . . . . . . . . . . . . . . . 25
Sustitución más rápida de una tabla por otra . . . . . . . . . . . . . . . . . . . . . . . . 25
Espacios de tablas universales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Mejor disponibilidad durante operaciones REBUILD INDEX . . . . . . . . . . . . . . . . . . . 27
Disponibilidad mejorada con capacidades para renombrar columnas e índices . . . . . . . . . . . . . 27
Modificar código EARLY sin una IPL . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Mejoras de ALTER TABLESPACE y de las anotaciones cronológicas de índice . . . . . . . . . . . . . 27
Soporte para la utilización de clases de almacenamiento SMS con conjuntos de datos definidos por DB2 . . . . 28

Capítulo 4. Rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Reducción del tiempo de proceso de CPU para programas de utilidad. . . . . . . . . . . . . . . . 29
Mejoras en la optimización de SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Mejores datos para el optimizador con las estadísticas de histograma . . . . . . . . . . . . . . . 29
Técnicas de optimización mejoradas . . . . . . . . . . . . . . . . . . . . . . . . . . 29
IBM Optimization Service Center for DB2 for z/OS . . . . . . . . . . . . . . . . . . . . . 31
IBM DB2 Optimization Expert for z/OS . . . . . . . . . . . . . . . . . . . . . . . . . 32
Mejoras en la indexación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Rendimiento mejorado para filas de longitud variable . . . . . . . . . . . . . . . . . . . . . 34
Liberación de la inserción secuencial de claves. . . . . . . . . . . . . . . . . . . . . . . . 35
Rendimiento mejorado de la anotación cronológica . . . . . . . . . . . . . . . . . . . . . . 35
Rendimiento mejorado de la inserción de datos . . . . . . . . . . . . . . . . . . . . . . . 36

Capítulo 5. Conformidad con las regulaciones. . . . . . . . . . . . . . . . . . . 37


Roles y contextos fiables de red. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Auditoría mejorada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Soporte del protocolo Secure Socket Layer . . . . . . . . . . . . . . . . . . . . . . . . . 37
Más opciones de seguridad con desencadenantes INSTEAD OF . . . . . . . . . . . . . . . . . . 38

| Apéndice. Planificación para DB2 Versión 9.1 para z/OS . . . . . . . . . . . . . . 39


| Cambios en los mandatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
| Mandatos nuevos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
| Mandatos modificados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
| Cambios en los programas de utilidad . . . . . . . . . . . . . . . . . . . . . . . . . . 48
| Programas de utilidad nuevos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
| Cambios en los programas de utilidad . . . . . . . . . . . . . . . . . . . . . . . . . 48
| Otros cambios en los programas de utilidad . . . . . . . . . . . . . . . . . . . . . . . 54

© Copyright IBM Corp. 2007, 2008 iii


| Cambios en las sentencias de SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
| Sentencias de SQL nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
| Sentencias de SQL modificadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
| Funciones nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
| Palabras reservadas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
| Otros cambios en el lenguaje SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
| Cambios en los catálogos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
| Tablas de catálogo nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
| Tablas de catálogo modificadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
| Índices nuevos y modificados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
| Modificaciones en la supervisión y los ajustes del rendimiento . . . . . . . . . . . . . . . . . . 75
| Cambios en el rendimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
| Cambios en la tabla EXPLAIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
| IFCID nuevos y modificados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
| IFCID nuevos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
| IFCID modificados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Recursos de información para DB2 for z/OS y productos relacionados . . . . . . . . 91

Cómo obtener información de DB2 . . . . . . . . . . . . . . . . . . . . . . . 97

Cómo utilizar la biblioteca de DB2 . . . . . . . . . . . . . . . . . . . . . . . 101

Avisos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Marcas registradas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Índice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

iv Novedades
Capítulo 1. Introducción
DB2 Versión 9.1 para z/OS (V9.1) proporciona nuevas y emocionantes
innovaciones, en áreas clave, que le ayudan a comprender el valor empresarial de
la información de la empresa.

Continúe leyendo para ver una breve visión general de las innovaciones que se
entregan en la Versión 9.1.

Disminución del coste total de propiedad

El coste total de propiedad para mantener una infraestructura de gestión de


información viene determinado por muchos factores, que incluyen los costes de
hardware y software y la cantidad de personal necesario.

Con la Versión 9.1, las reducciones en el coste total de propiedad se pueden llevar
a cabo mediante ahorros en el hardware y software, y la productividad de las
personas. La productividad se proporciona a través de SQL mejorado, la adición de
XML y la reducción en las tareas de administración de bases de datos. Las ofertas
de System z9, tales como zIIP y los nuevos procesadores Business Class y
Enterprise Class, son económicas y proporcionan capacidad adicional y
reducciones en los costes de DB2 para algunas cargas de trabajo de índice de
programa de utilidad, consulta paralela y distribuida. Para facilitar los retos de las
tareas que afrontan los administradores de bases de datos, algunas tareas se han
automatizado o eliminado. Como resultado, un administrador de bases de datos
puede gestionar más terabytes de datos y asumir más tareas de la empresa.

Mayor capacidad para aprovechar la empresa para información


bajo demanda

La Versión 9.1 proporciona una serie de capacidades que le ayudan a aprovechar la


empresa para información bajo demanda mediante el aumento de la productividad
del programador, el aumento de la compatibilidad en la familia de productos de
DB2 y mejoras para la gestión de datos de empresa.

El soporte nativo de pureXML aumenta la productividad de los programadores y


proporciona escalabilidad y rendimiento sin percedentes. Con la Versión 9.1 en el
núcleo de una arquitectura orientada a servicios, puede tener una perfecta
integración de datos XML y datos relacionales. Las mejoras de SQL aumentan la
compatibilidad y el liderazgo de la familia. Las mejoras y las adiciones en la
familia de productos de QMF mejoran el acceso a los datos de empresa. Las
nuevas y mejoradas Herramientas de DB2 mejoran la gestión de los datos de
empresa. La mayoría de estas mejoras también proporcionan ventajas para los
socios de las aplicaciones empresariales clave (por ejemplo, SAP, PeopleSoft y
Siebel) y sus clientes.

Aumento de la disponibilidad mediante definición de bases de


datos bajo demanda

La Versión 8 proporcionaba posibilidades de cambio de esquema en línea que


aumentaban la disponibilidad de las bases de datos con menos interrupciones.

© Copyright IBM Corp. 2007, 2008 1


La Versión 9.1 amplía estas posibilidades al proporcionar definición de datos bajo
demanda. Por ejemplo, se han realizado considerables mejoras en la reorganización
en línea de espacios de tablas para unas pocas particiones. Uno de los cambios
importantes es la capacidad de sustituir rápidamente una tabla por otra. Otro
cambio importante es la capacidad de renombrar una columna o un índice. Otras
capacidades le permiten modificar, alterar, crear y volver a crear objetos y código
bien sea en línea o por otros medios que perturben en menor medida la
disponibilidad de los datos.

Mejor rendimiento

Las aplicaciones complejas incluyen tanto transacciones como creación de informes.


La correcta realización de las transacciones y de los informes es imprescindible
para la correcta gestión de una empresa. La Versión 9.1 proporciona una serie de
mejoras que aumentan el rendimiento de las transacciones y ayudan a reducir el
coste total de propiedad mediante la disminución del tiempo de CPU, la mejora
del rendimiento de consulta, un acceso más rápido al disco y la mejora en el
rendimiento de las anotaciones cronológicas y la inserción.

Se observan reducciones en el tiempo de CPU para los programas de utilidad


LOAD y REORG y los datos de longitud variable. Además, las consultas escritas
en lenguaje de procedimiento de SQL nativo se pueden ejecutar en zIIP. Además,
varias mejoras en el acceso al disco pueden reducir el tiempo para el acceso
secuencial al disco.

Se han realizado mejoras clave para la creación de informes que incluyen mejoras
de optimización que mejoran el rendimiento de las consultas y los informes y la
facilidad de uso. Las mejoras de SQL de rendimiento de consulta mejoradas
incluyen más consultas, más coherencia con el sector de gestión de bases de datos
y dentro de la familia de DB2 (lo que contribuye a la facilidad de uso y a la
capacidad de portar aplicaciones a DB2 para z/OS).

Conformidad con las regulaciones

La conformidad con las regulaciones, la seguridad y la auditoría son temas que


están en primera línea de la actualidad y que adquieren cada día mayor
importancia. La Versión 9.1 le ayuda a responder a la crecientes necesidades para
proteger la seguridad, garantizar la integridad y satisfacer las regulaciones tales
como el Sarbanes-Oxley Act, el Health Insurance Portability and Accountability Act
(HIPAA) y los Payment Card Industry (PCI) Security Standards. El control de
acceso mejorado con roles y contexto fiable de red permite un control más preciso
de la seguridad. El filtro mejorado aumenta la usabilidad de la auditoría. El cifrado
de datos SSL (Capa de sockets seguros) en redes es más seguro.

Aumento de la sinergia con System z

Como en la Versión 8, la Versión 9.1 se beneficia de las mejoras más recientes en


hardware y software de System z9 a fin de proporcionar mejor rendimiento, la
mejora del valor, mayor flexibilidad y mejor función.

Por ejemplo, ahora se han habilitado procedimientos remotos de SQL nativo para
el proceso en IBM System z9 Integrated Information Processor (zIIP). La sinergia
de DB2 con System z9 continúa con un rango de mejoras de E/S en canales, en
discos y en DB2. Las pruebas con la Versión 8 que implican acceso paralelo en un
canal han mostrado tiempos más rápidos de respuesta para acceso secuencial; se
anticipan mejoras similares en la Versión 9.1. Por ejemplo, una de las primeras

2 Novedades
pruebas de rendimiento para el rendimiento secuencial consiguió 183 MB por
segundo. La Versión 9.1 también se beneficia de nuevo soporte de hardware de
System z9 con un nuevo tipo de datos de coma flotante decimal que le permite
utilizar números de coma flotante decimal con mayor precisión. Se puede utilizar
flashcopy para operaciones de copia de seguridad y de restauración de bases de
datos de DB2. Otras mejoras para la Versión 9.1 en System z9 incluyen seguridad y
cifrado y clasificación Unicode adicionales.

Capítulo 1. Introducción 3
Capítulo 2. Cómo aprovechar la empresa para información
bajo demanda
DB2 Versión 9.1 para z/OS proporciona funciones y soporte que aumentan la
compatibilidad dentro de la familia de DB2 y le permiten aprovechar más
fácilmente la empresa para información bajo demanda.

Los aumentos en la compatibilidad de la familia se traducen en aumentos en la


productividad de los programadores que trabajan en un entorno de aplicación
estándar y en aumentos en la portabilidad de las aplicaciones. Las mejoras que
tratan estas áreas incluyen soporte de pureXML en la base de datos de DB2 y
compatibilidad y liderazgo de la familia mediante varias funciones y sentencias de
SQL nuevas y mejoradas.

Además de mejorar la productividad del programador y la portabilidad de las


aplicaciones, las mejoras en DB2 QMF y una serie de Herramientas de DB2, así
como nuevas ofertas de herramientas tales como Optimization Service Center y
DB2 Accessories Suite, le permiten acceder a los datos y gestionar la empresa como
nunca lo ha podido hacer anteriormente.

La mayoría de las nuevas y mejoradas funciones proporcionan ventajas tanto a los


business partners como a los clientes.

Perfecta integración de datos XML y datos relacionales


XML es una innovación importante que permite la comunicación de datos de
empresa a empresa, independientemente de las diferencias en los sistemas que
reciben los datos y trabajan con ellos.

Con XML, puede enviar fácilmente datos semiestructurados a través de la web sin
perder la relación entre los datos de un documento. Debido a que el contenido de
un documento XML es independiente de las instrucciones de formato, los datos se
pueden representar adecuadamente en una variedad de formatos de salida. El
potente soporte de XML dentro de un sistema de gestión de bases de datos
proporciona ventajas que incluyen capacidades más eficaces de almacenamiento,
consulta e indexación.

| El soporte de las funciones y capacidades XML abarca toda la familia de DB2. La


| Versión 8 de DB2 para z/OS y la Versión 8 de DB2 para Linux, UNIX y Windows
| proporcionan soporte básico para almacenar, recuperar y consultar documentos
| XML. DB2 9 para Linux, UNIX y Windows continúa el trabajo proporcionando
| potente soporte de XML. Ahora DB2 V9.1 para z/OS se expande en soporte similar
| proporcionando la perfecta integración de datos XML y datos relacionales en la
| base de datos DB2. Se proporcionan cambios funcionales en las áreas siguientes:
| v almacenamiento de documentos XML
| v Recuperación de documentos XML
| v Desarrollo de aplicaciones
| v Soporte de administración de bases de datos
| v Ventajas de rendimiento mediante el soporte de indexación

© Copyright IBM Corp. 2007, 2008 5


Almacenamiento de documentos XML

DB2 V9.1 para z/OS proporciona almacenamiento completamente integrado de


datos XML en el sistema de bases de datos DB2, lo que permite a las aplicaciones
cliente acceder a los datos XML y gestionarlos aprovechando la funcionalidad de
DB2. El tipo de datos de columna XML se proporciona para almacenar datos XML
en tablas de DB2. La mayoría de las sentencias de SQL dan soporte al tipo de
datos XML. Como resultado, puede realizar muchas operaciones comunes de base
de datos con datos XML, tales como la creación de tablas con columnas XML, la
adición de columnas XML a tablas existentes, la creación de índices sobre columnas
XML, la creación de desencadenantes en tablas con columnas XML, y la inserción,
actualización y supresión de documentos XML. También se proporciona un
procedimiento almacenado de descomposición. Con este procedimiento
almacenado, puede extraer elementos de datos de un documento XML y almacenar
estos elementos de datos en columnas de tablas relacionales.

Recuperación de documentos XML

Puede utilizar SQL para recuperar documentos enteros de columnas XML de forma
similar a cómo se recuperan datos de cualquier otro tipo de columna. Cuando
necesita recuperar partes de documentos, puede especificar expresiones XPath
mediante SQL con extensiones XML (SQL/XML).

Desarrollo de aplicaciones

El soporte de desarrollo de aplicaciones de XML en DB2 V9.1 para z/OS permite a


las aplicaciones combinar XML, acceso a datos relacionales y almacenamiento. Los
siguientes lenguajes de programación dan soporte al nuevo tipo de datos XML:
v Assembler
v C o C++ (SQL incorporado o CLI de DB2)
v COBOL
v Java (JDBC o SQLJ)
v PL/I

Soporte de administración de bases de datos

El soporte de administración de bases de datos incluye lo siguiente:


v Un depósito de esquemas XML para todos los esquemas XML necesarios para
validar y procesar documentos XML almacenados en columnas XML o
descompuestos en tablas relacionales
v La capacidad de utilizar programas de utilidad de DB2 para z/OS para realizar
operaciones en objetos XML de forma similar a cómo se manejan objetos LOB

Ventajas de rendimiento mediante el soporte de indexación

La Versión 9.1 ofrece ventajas de rendimiento mediante el soporte de indexación,


que está disponible para datos almacenados en columnas XML. La utilización de
índices sobre datos XML puede mejorar la eficacia de las consultas que emite
contra documentos XML.

Compatibilidad y liderazgo con SQL


La Versión 9.1 proporciona cambios funcionales en SQL que aumentan la
productividad de los programadores mediante la compatibilidad y el liderazgo de
la familia.

6 Novedades
La Versión 8 de DB2 para z/OS realizó grandes avances hacia la mejora de la
coherencia de SQL en toda la familia de DB2, proporcionando muchas funciones
comunes entre DB2 para Linux, UNIX y Windows. La Versión 9.1 y DB2 9 para
Linux, UNIX y Windows trasladan aún más funciones de SQL del conjunto
exclusivo al conjunto común. Con el aumento en SQL común, también se aumenta
la productividad de los programadores. La Versión 9.1 también presenta varias
funciones nuevas de SQL que son innovaciones en la familia de DB2.

Mejoras en la coherencia con SQL


El aumento de la coherencia con SQL dentro de la familia de DB2 representa una
buena noticia para los programadores que escriben aplicaciones para distintas
plataformas, ya que se facilita la portabilidad y la escritura de los programas de
aplicación.

Las siguientes funciones, sentencias y cláusulas de SQL son coherentes dentro de la


familia de DB2.

Función SELECT FROM UPDATE o SELECT FROM DELETE


La característica de inserción dentro de selección que se presentó en la Versión 8 de
DB2 para z/OS se ha ampliado en la Versión 9.1 para dar soporte a la recuperación
de columnas de filas que se modifican mediante una sentencia SELECT FROM
DELETE o SELECT FROM UPDATE. Ahora, una llamada de SQL a DB2 modifica
el contenido de la tabla y devuelve los cambios resultantes al programa de
aplicación. Además, ahora se puede codificar una aplicación para realizar una
lectura destructiva de una tabla cuando se incluye la sentencia SELECT FROM
DELETE. Esta característica es especialmente útil cuando se utiliza una tabla como
una cola de datos.

Desencadenantes INSTEAD OF
En versiones anteriores de DB2 para z/OS, las operaciones que requerían reglas
distintas para el acceso de lectura y escritura (por ejemplo, cifrado y descifrado)
requerían que los usuarios incorporaran en sus aplicaciones el reconocimiento de
que el objeto para acceso de lectura es una vista y de que el objeto para acceso de
escritura es una tabla base. La Versión 9.1 reduce la complejidad en los programas
de aplicación presentando los desencadenantes INSTEAD OF.

Los desencadenantes INSTEAD OF se definen sólo en las vistas y se utilizan para


procesar operaciones de inserción, actualización y supresión (mediante lógica de
desencadenante) en lugar de basarse en la sentencia INSERT, UPDATE o DELETE
para activar el desencadenante. Con el desencadenante INSTEAD OF, una
aplicación no necesita incluir la complejidad que especifica qué operaciones se
realizan contra vistas y qué operaciones se realizan contra la tabla base porque el
desencadenante activado hace que parezca que las operaciones se realicen contra
una vista.

Los ejemplos de utilización de desencadenantes INSTEAD OF incluyen


actualizaciones mediante consultas de unión o datos de codificación y
descodificación de la base de datos dentro de una vista. En el último caso, es
posible que la vista encapsule funciones de cifrado mientras que los
desencadenantes INSTEAD OF utilizan las funciones de cifrado para garantizar la
seguridad en la base de datos.

Tipo de datos y función BIGINT


La Versión 9.1 presenta un nuevo tipo de datos y función de SQL, BIGINT (entero
grande), que da soporte a enteros grandes y amplía el conjunto de tipos de datos
numéricos exactos soportados actualmente (SMALLINT y INTEGER).

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 7


Un entero grande es un entero binario que tiene una precisión de 63 bits. El tipo
de datos BIGINT puede representar enteros de 63 bits y es compatible con todos
los tipos de datos numéricos. La función BIGINT devuelve una representación de
entero grande de un número o una representación de serie de un número. Puede
almacenar o cargar valores de entero grande en tablas de DB2 y manipular los
datos de distintas formas. Además, puede utilizar la especificación CAST para
aumentar la portabilidad de las aplicaciones.

Tipo de datos y función BINARY


La Versión 9.1 proporciona soporte ampliado para datos de serie binaria
presentando el tipo de datos y función BINARY. También se presenta el tipo de
datos y función VARBINARY (serie binaria de longitud variable). Otros miembros
de la familia de DB2 aún no dan soporte al tipo de datos y función VARBINARY.

El tipo de datos BINARY representa una serie binaria de longitud fija. Cuando se
definen columnas, variables y tipos diferenciados de serie binaria de longitud fija,
se especifica el atributo de longitud y todos los valores tienen la misma longitud.
Una columna de serie binaria se utiliza para almacenar datos que no son de
carácter, tales como datos codificados o comprimidos, imágenes, voz y soporte
mixto. Una columna de serie binaria también puede albergar datos estructurados
para que sean utilizados por tipos diferenciados, funciones definidas por el usuario
y procedimientos almacenados. La función BINARY devuelve una representación
BINARY (serie binaria de longitud fija) de una serie de cualquier tipo o tipo de ID
de fila.
Conceptos relacionados
“Tipo de datos VARBINARY” en la página 17

Variables de referencia de archivo


Una variable de referencia de archivo es una variable de sistema principal definida en
un lenguaje de sistema principal (por ejemplo, C o COBOL) para contener el
nombre de archivo que dirige entrada y salida de archivo para un objeto grande
(LOB). La Versión 9.1 añade soporte para dos nuevas variables de referencia de
archivo, LOB y XML.

El soporte de DB2 para variables de referencia de archivo permite que se inserte


un valor LOB o XML grande desde un archivo o que se seleccione en un archivo
en lugar de una variable de sistema principal; la aplicación no necesita adquirir
almacenamiento para contener el valor LOB o XML. Además, las variables de
referencia de archivo facilitan el movimiento de valores LOB o XML desde el
servidor de bases de datos a una aplicación de cliente o desde una aplicación de
cliente a un servidor de bases de datos sin pasar por el almacenamiento de trabajo
de la aplicación de cliente. Además, las variables de referencia de archivo omiten
las limitaciones de lenguaje de sistema principal sobre el tamaño máximo
permitido para los valores LOB ubicados en el almacenamiento de trabajo. Los
siguientes lenguajes de sistema principal dan soporte a variables de referencia de
archivo:
v C y C++
v COBOL
v PL/I
v Assembler
v REXX

Palabra clave INTERSECT en una selección completa


La nueva palabra clave INTERSECT especifica el operador set, la intersección, en
una operación de selección completa entre dos tablas de resultados.

8 Novedades
Hay dos tipos de operaciones INTERSECT disponibles: INTERSECT ALL e
INTERSECT DISTINCT. Si especifica INTERSECT ALL, el resultado consta de
todas las filas que se encuentran tanto en la primera tabla de resultados como en la
segunda tabla de resultados y se incluyen las filas duplicadas redundantes. Si
especifica INTERSECT DISTINCT, el resultado consta de todas las filas que se
encuentran en la primera y en la segunda tabla de resultados y se eliminan las filas
duplicadas redundantes. En cualquiera de los dos casos, cada fila del resultado sale
en la primera y en la segunda tabla de resultados.

Palabra clave EXCEPT en una subselección


La nueva palabra clave EXCEPT especifica el operador set, la diferencia, en una
operación de selección completa entre dos tablas de resultados.

Hay dos tipos de operaciones EXCEPT disponibles: EXCEPT ALL y EXCEPT


DISTINCT. Si especifica EXCEPT ALL, el resultado consta de todas las filas que se
encuentran solamente en la primera tabla de resultados y se incluyen las filas
duplicadas redundantes. Si especifica EXCEPT DISTINCT, el resultado consta de
todas las filas que se encuentran sólo en la primera tabla de resultados y se
eliminan las filas redundantes. En cualquiera de los dos casos, cada fila del
resultado es una fila de la primera tabla de resultados que no tiene una fila
coincidente en la segunda tabla de resultados.

Soporte nativo para procedimientos de SQL


En la Versión 9.1, el nuevo soporte de procedimientos de SQL nativo simplifica la
definición y la utilización de procedimientos de SQL eliminando la necesidad de
generar un programa C.

En versiones anteriores de DB2 para z/OS, se debe generar un programa C a partir


de las sentencias de SQL transformadas y las sentencias de control de SQL
contenidas en el procedimiento de SQL. A continuación, el programa C resultante
se ejecuta como un procedimiento almacenado externo. Ahora, cuando crea un
procedimiento de SQL nativo en la modalidad de nueva función de la Versión 9.1,
las sentencias de procedimiento se convierten en una representación que se
almacena en el directorio de base de datos, como es cierto para otras sentencias de
SQL. Las opciones de procedimiento de lista de parámetros se almacenan en las
tablas de catálogo de base de datos como en los releases anteriores. Cuando se
llama a un procedimiento de SQL nativo, la representación se carga desde el
directorio y el motor de DB2 ejecuta el procedimiento. Una serie de funciones y
extensiones adicionales en la Versión 9.1 proporcionan coherencia con el Estándar
de SQL y con el resto de la familia de DB2. Los ejemplos de estas mejoras incluyen
soporte para lo siguiente:
v Cambio de la resolución de nombre dentro del cuerpo del procedimiento
v Utilización de identificadores delimitados, incluidos caracteres en minúsculas,
para nombres de condición de SQL, etiquetas de SQL, variables de SQL y
parámetros de SQL
v Sentencias compuestas anidadas, incluida una sentencia compuesta dentro del
cuerpo de un manejador de condiciones
v Creación de versión y gestión de código fuente
v Despliegue de procedimientos de SQL nativo en varios servidores
v Depuración de procedimientos de SQL nativo

Sentencias compuestas anidadas en procedimientos de SQL


Los procedimientos de SQL ahora dan soporte a sentencias compuestas anidadas.

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 9


Las sentencias compuestas presentan un bloque de sentencias de SQL en un
procedimiento de SQL. Antes de la Versión 9.1, el cuerpo de un procedimiento de
SQL podía contener una única sentencia compuesta (que podía contener otras
sentencias de SQL, pero ninguna otra sentencia compuesta) o una única sentencia
de procedimiento de SQL distinta de una sentencia compuesta. Como resultado, un
manejador de condiciones no podía contener tampoco una sentencia compuesta.

Ahora, con el soporte de sentencias compuestas anidadas en procedimientos de


SQL, puede hacer lo siguiente:
v Utilizar una sentencia compuesta dentro de una manejador de condiciones
v Utilizar sentencias compuestas anidadas para definir ámbitos distintos para
variables de SQL, cursores, nombres de condición y manejadores de condiciones.

Soporte ampliado para no anotar cronológicamente espacios de


tablas
La Versión 8 de DB2 para z/OS proporciona soporte para la suspensión de las
anotaciones cronológicas en tablas temporales globales, espacios de tablas LOB,
durante la operación LOAD REPLACE y durante una inserción de una tabla
temporal declarada. Ahora, la Versión 9.1 da soporte a la suspensión de las
anotaciones cronológicas para espacios de tablas base, espacios de tablas XML y los
índices asociados con los mismos. Puede especificar los atributos de anotaciones
cronológicas, LOGGED o NOT LOGGED, a nivel de espacio de tablas cuando
altere o cree tablas y espacios de tablas y cuando cree tablas o tablas auxiliares.
También puede suprimir las anotaciones cronológicas durante el proceso en línea
LOAD RESUME.

Debido a que los recursos de anotaciones cronológicas existentes en DB2 ya están


ajustados de forma precisa, la suspensión de las anotaciones cronológicas
generalmente no mejora el rendimiento del sistema. Sin embargo, la capacidad de
suspender las anotaciones cronológicas de registro es útil en una serie de
situaciones en las que se están duplicando los datos y en las que la pérdida de la
simultaneidad y la capacidad de recuperación no supone una preocupación. En
estos casos, si los datos se pierden, puede volver a crearlos o generarlos a partir de
la fuente original en lugar de hacerlo utilizando una copia de imagen o la
aplicación de registros de anotaciones cronológicas. Entre los ejemplos de tablas
para los que la suspensión de las anotaciones cronológicas supone una ventaja se
incluyen tablas de consultas materializadas, tablas de resumen, tablas a las que se
propagan los datos y tablas temporales que se llenan con un conjunto de
resultados a partir de una consulta como un paso intermedio en una aplicación.
Una ventaja adicional de la suspensión de las anotaciones cronológicas es la mejora
en la escalabilidad, especialmente para operaciones que insertan grandes
volúmenes de datos con la sentencia INSERT.

Especificaciones de OLAP para RANK, DENSE_RANK y


ROW_NUMBER
Las especificaciones de proceso analítico en línea (OLAP) proporcionan la
capacidad de devolver información de clasificación, numeración de filas y función
de totales existente como un valor escalar en el resultado de una consulta.

Puede incluir especificaciones de OLAP en una expresión, en una lista de selección


o en la cláusula ORDER BY de una sentencia select. El resultado al que se aplica la
especificación de OLAP es la tabla de resultados de la subselección más interna
que incluye la especificación de OLAP. La Versión 9.1 proporciona especificaciones
de OLAP para RANK, DENSE_RANK y ROW_NUMBER.

10 Novedades
RANK y DENSE_RANK

RANK y DENSE_RANK especifican que se calcula el rango ordinal de una fila


dentro de la ventana especificada. Las filas que no son distintivas respecto a la
ordenación dentro de la ventana especificada se asignan al mismo rango. Puede
definir los resultados de la ordenación con saltos en la numeración de rangos
secuenciales utilizando la especificación RANK, o sin saltos, utilizando la
especificación DENSE_RANK. Algunos ejemplos comunes de la utilización de
especificaciones RANK o DENSE_RANK incluyen los siguientes:
v Clasificación de cifras de ventas (por ejemplo, determinar qué tiendas de una
cadena tienen las ventas más altas y más bajas)
v Clasificación de los empleados dentro de un departamento o división según los
distintos indicadores
v Creación de las n consultas superiores (por ejemplo, recuperar los cinco
empleados que tienen los salarios más altos)

ROW_NUMBER

ROW_NUMBER especifica que se calcula un número de fila secuencial para la fila


definida por la ordenación, empezando con 1 para la primera fila. Si no se
especifica la cláusula ORDER BY en la ventana, los números de fila se asignan a
las filas en un orden arbitrario, conforme se devuelven las filas (pero no según
ninguna cláusula ORDER BY en la sentencia select). Puede utilizar
ROW_NUMBER para numerar las filas de resultados de una consulta. Los
números de fila también permiten la fácil formulación de consultas calculando
estadísticas de histograma (cálculos cuantiles) y permiten la formación de otras
especificaciones de OLAP (por ejemplo, moviendo sumas, moviendo promedios,
etc.).

Función COLLATION_KEY
La nueva función COLLATION_KEY da soporte a la recopilación sensible a
mayúsculas y minúsculas y culturalmente correcta de datos de Unicode.

La función COLLATION_KEY procesa una serie de entrada Unicode UTF-16 y un


nombre de clasificación, y devuelve una clave de ordenación binaria de longitud
variable. El resultado de la operación COLLATION_KEY se puede comparar al
resultado de otra operación COLLATION_KEY en otra serie para determinar su
orden dentro del nombre de clasificación especificado. Los atributos del nombre de
clasificación especifican las características de clasificación (por ejemplo, el atributo
de entorno local, el tratamiento del acento y de las mayúsculas y minúsculas, etc.)
para la clave de ordenación, y se adecuan a los convenios de los servicios de
conversión Unicode soportados por z/OS.

También puede utilizar la función COLLATION_KEY para realizar comparaciones


que no sean sensibles a mayúsculas o minúsculas (o sin distinción entre mayúsculas y
minúsculas) de expresiones de serie especificando atributos en el nombre de
clasificación que omitan las mayúsculas y minúsculas o ignoren una combinación
de mayúsculas y minúsculas y otros atributos tales como espacios, puntuación y
símbolos.

Capacidad de crear un índice en una expresión


En la Versión 9.1, una extensión a la sentencia CREATE INDEX le permite crear un
índice en una expresión (también denominado índice en expresión).

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 11


Una expresión puede ser una referencia de columna, una invocación de función
incorporada o una expresión general con algunas restricciones. A diferencia de un
índice simple, la clave de índice de un índice en expresión se compone
concatenando el resultado (también denominado destino de clave) de la expresión
especificada en la cláusula ON. Un índice que se crea en una expresión permite
que una consulta se beneficie de acceso al índice (si el optimizador ha elegido el
índice) y evita una exploración de espacio de tablas.

Creación automática de una base de datos, un espacio de tablas


y todos los objetos requeridos por el sistema
La función de la sentencia CREATE TABLE ahora da soporte a la creación
automática (implícita) de una base de datos o de un espacio de tablas.

| Creación implícita de una base de datos, un espacio de tablas y todos los objetos
| requeridos por el sistema: una base de datos, un espacio de tablas y todos los
| objetos requeridos por el sistema se crean implícitamente si no nombra un espacio
| de tablas o una base de datos en la cláusula IN de una sentencia CREATE. Los
| atributos del espacio de tablas (por ejemplo, tipo de espacio de tablas, los
| conjuntos de datos subyacentes y la utilización de la compresión de datos) están
| determinados por los parámetros de instalación del espacio de tablas. Si se crea
| implícitamente un espacio de tablas, también se crean los siguientes objetos
| requeridos por el sistema:
| v Índice de clave primaria de aplicación
| v Índice de clave exclusiva de aplicación
| v Índice ROWID (si la columna ROWID se define como GENERATED BY
| DEFAULT)
| v Un espacio de tablas LOB, tabla auxiliar e índice auxiliar

| Creación implícita de un espacio de tablas: se crea implícitamente un espacio de


| tablas segmentado en DSNDB04 si no nombra un espacio de tablas o una base de
| datos en la cláusula IN de una sentencia CREATE.

IBM Spatial Support for DB2 for z/OS


El nuevo IBM Spatial Support for DB2 for z/OS le permite generar y analizar
información espacial sobre características geográficas y almacenar y gestionar los
datos en los que se basa esta información.

Spatial Support for DB2 for z/OS proporciona un conjunto de tipos de datos
espaciales, funciones definidas por el usuario y procedimientos almacenados para
consultas relacionadas con el espacio. Con Spatial Support, puede hacer lo
siguiente:
v Invocar consultas espaciales para clientes locales y remotos para responder a
preguntas basadas en relaciones geográficas.
v Crear índices espaciales en columnas espaciales, lo que puede mejorar el
rendimiento de consulta cuando utiliza funciones de predicado espacial.
v Gestionar sistemas de coordinadas geográficas, índices espaciales y usos de
columna espacial mediante interfaces de procedimiento almacenado.

Además, Spatial Support incluye un programa ODBC que puede utilizar para
habilitar o inhabilitar la característica espacial. Este programa puede invocar cada
uno de los procedimientos almacenados mediante un conjunto de argumentos de
línea de mandatos.

12 Novedades
Cómo aprovechar las capacidades existentes de
programación de aplicaciones
El aumento de la coherencia dentro de la familia de DB2 le permite aprovechar las
capacidades existentes de los programadores de aplicaciones mediante el soporte
de una gama más amplia de herramientas, entornos y lenguajes. La Versión 9.1
mejora el soporte para el desarrollo de aplicaciones de extremo a extremo
conectando nuevos lenguajes y entornos a la escala y valor de la infraestructura
existente. Las líneas de productos IBM Rational y WebSphere proporcionan parte
de la conexión, con productos como Rational Data Architect, Rational Application
Developer y WebSphere Information Integration. Los clientes de DB2 proporcionan
más soporte para nuevos entornos y nuevos lenguajes.

La Versión 9.1 da soporte a tecnologías clave de base de datos, que incluyen SQL y
procedimientos de SQL nativo, XML, arquitectura orientada a servicios (SOA) y
varios servicios web.

Una amplia variedad de infraestructuras de desarrollo proporcionan soporte de


lenguaje y herramientas de desarrollo y despliegue de aplicaciones para
aplicaciones basadas en la web que funcionan con la familia de DB2. Estas
infraestructuras también dan soporte a lenguajes de programación tradicionales y
lenguajes de código abierto más nuevos. Por ejemplo, existen comunidades de
desarrollo para los siguientes lenguajes de programación tradicionales:
v COBOL, PL/I, REXX, C, C++, Fortran, Assembler y APL2
v Soporte de Java, que incluye JDBC y SQLJ
v Productos de lenguaje de Microsoft, que incluyen .NET, Visual C# for .NET y
Visual Basic for .NET
Los ejemplos de soporte de desarrollo de código abierto incluyen los siguientes:
v Eclipse
v PHP y Zend Core para IBM
v Perl
v Python
v Ruby on Rails
v TOAD para DB2

Mejoras en el soporte de objetos grandes


La Versión 9.1 ofrece muchas mejoras para el manejo de objetos grandes (los LOB)
mediante extensiones a sentencias de SQL y mejoras en los programas de utilidad
y el rendimiento.

Mejoras de SQL para objetos grandes


La Versión 9.1 proporciona varias mejoras de SQL para objetos grandes:
v Mejoras de la sentencia FETCH para datos LOB y XML
v Soporte de variables de referencia de archivo LOB

Mejoras de la sentencia FETCH para datos LOB y XML

En versiones anteriores de DB2, las aplicaciones que funcionaban con LOB tenían
dos métodos principales para captar datos LOB: captación de datos en un
almacenamiento intermedio preasignado y utilización de un localizador de LOB
para recuperar un manejador en los datos. La captación de datos en un
almacenamiento intermedio preasignado tiene potencial para causar problemas de
restricción de almacenamiento virtual, especialmente los LOB que tienen una
longitud máxima grande. Además, una aplicación que utiliza localizadores de LOB
que se confirman con poca frecuencia o no liberan explícitamente los localizadores

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 13


puede utilizar cantidades considerables de recursos de DB2. La introducción de
objetos XML en la Versión 9.1 presenta complicaciones adicionales porque las
columnas XML no tienen localizadores y cuando se crea una tabla que contiene
una columna XML, no se define ninguna longitud máxima para el objeto XML.

La Versión 9.1 presenta la cláusula WITH CONTINUE en la sentencia FETCH para


tratar los problemas que se encuentran cuando una aplicación capta datos LOB y
XML. Puede utilizar la cláusula WITH CONTINUE en una aplicación para
recuperar columnas LOB y XML en varias partes utilizando un localizador de LOB
y continuar una operación FETCH para recuperar los datos restantes para las
columnas LOB y XML cuando se produce un truncamiento. La aplicación gestiona
los almacenamientos intermedios y vuelve a ensamblar las partes de los datos. Dos
utilizaciones comunes para FETCH CONTINUE incluyen:
v Asignación dinámica de tamaño de almacenamiento adecuado: puede utilizar la
sentencia FETCH inicial para captar datos en un almacenamiento intermedio
preasignado de un tamaño moderado. Si el elemento de datos devuelto es
demasiado grande para adecuarse a ese almacenamiento intermedio, puede
utilizar la información de longitud que se devuelve para asignar la cantidad
correcta de almacenamiento y utilizar la sentencia FETCH CONTINUE para
recuperar los datos restantes.
v Modalidad continua de datos a través de un único almacenamiento intermedio
de tamaño fijo: si permanecen más datos después de una operación FETCH,
puede utilizar tantas sentencias FETCH CONTINUE como sean necesarias para
recuperar los datos y utilizar la misma área de almacenamiento intermedio. En
este caso, los datos del almacenamiento intermedio se deben procesar después
de cada operación FETCH o FETCH CONTINUE.

Variables de referencia de archivo para objetos grandes

Una variable de referencia de archivo es una variable de sistema principal definida en


un lenguaje de sistema principal (por ejemplo, C o COBOL) para contener el
nombre de archivo que dirige entrada y salida de archivo para un objeto grande
(LOB). La Versión 9.1 añade soporte para una variable de referencia de archivo
LOB.

Con el soporte de DB2 de las variables de referencia de archivo, se pueden insertar


valores LOB grandes a partir de un archivo o se pueden seleccionar en un archivo
en lugar de una variable de sistema principal; la aplicación no necesita adquirir
almacenamiento para contener el valor LOB. Además, las variables de referencia de
archivo facilitan el movimiento de valores LOB del servidor de bases de datos a
una aplicación de cliente o desde una aplicación de cliente a un servidor de bases
de datos sin pasar por el almacenamiento de trabajo de la aplicación de cliente.
Además, las variables de referencia de archivo omiten las limitaciones de lenguaje
de sistema principal sobre el tamaño máximo permitido para los valores LOB
ubicados en el almacenamiento de trabajo. Los siguientes lenguajes de sistema
principal dan soporte a variables de referencia de archivo:
v C y C++
v COBOL
v PL/I
v Assembler
v REXX

Mejoras de los programas de utilidad para objetos grandes


La Versión 9.1 proporciona mejoras para el manejo de objetos grandes (los LOB) en
los siguientes programas de utilidad: LOAD, UNLOAD, REORG, CHECK LOB y
CHECK DATA.
14 Novedades
Manejo mejorado de LOB para los programas de utilidad LOAD y
UNLOAD

Debido a las mejoras en el programa de utilidad LOAD, un valor de campo de


entrada puede contener el nombre del archivo que contiene un valor de columna
LOB. El valor de columna LOB se carga desde ese archivo.

Las mejoras en el programa de utilidad UNLOAD le permiten almacenar el valor


de una columna LOB en un archivo y registrar el nombre del archivo en el registro
no cargado en la tabla base.

REORG mejorado de espacios de tablas LOB

Antes de la Versión 9.1, no puede acceder a datos LOB durante la operación


REORG y los LOB se trasladan dentro del espacio de tablas LOB existente, lo que
impide que el conjunto de datos LOB reclame el espacio físico. Las mejoras en la
Versión 9.1 superan estas limitaciones anteriores. Ahora, el espacio de tablas LOB
original se ha drenado de escritores. A continuación, todos los LOB se extraen del
conjunto de datos original y se insertan en un conjunto de datos de duplicación.
Cuando esta operación finaliza, todo el acceso al espacio de tablas LOB se detiene
(se drenan los lectores) mientras que el conjunto de datos original se cambia con el
conjunto de datos de duplicación. En este momento, el acceso completo a los
conjuntos de datos nuevos está habilitado y se realiza una copia en línea para
garantizar la capacidad de recuperación de los datos.

Programas de utilidad CHECK LOB y CHECK DATA

Se han añadido las opciones SHRLEVEL REFERENCE y SHRLEVEL CHANGE


tanto al programa de utilidad CHECK LOB como al programa de utilidad CHECK
DATA. Estas opciones reducen drásticamente la cantidad de tiempo durante el cual
los datos están en modalidad de sólo lectura cuando se ejecutan los programas de
utilidad CHECK LOB y CHECK DATA.

El programa de utilidad CHECK DATA comprueba los espacios de tablas para ver
si hay violaciones de restricciones referenciales o de comprobación de tabla e
información de informes sobre las violaciones que detecta. CHECK DATA también
comprueba la coherencia entre un espacio de tablas base y los espacios de tablas
LOB o XML correspondientes. Las nuevas opciones SHRLEVEL REFERENCE y
SHRLEVEL CHANGE proporcionan las funciones siguientes:
v CHECK DATA con SHRLEVEL REFERENCE especifica que las aplicaciones
pueden leer el índice, espacio de tablas o partición que se va a comprobar
durante el proceso, pero no escribir en los mismos.
v CHECK DATA con SHRLEVEL CHANGE especifica que las aplicaciones pueden
leer y escribir en el índice, espacio de tablas o partición que se va a comprobar
durante el proceso de CHECK DATA.

El programa de utilidad CHECK LOB identifica los defectos estructurales en el


espacio de tablas LOB y los valores LOB no válidos. Ejecute el programa de
utilidad CHECK LOB antes del programa de utilidad CHECK DATA si un espacio
de tablas contiene como mínimo una columna LOB. Las nuevas opciones
SHRLEVEL REFERENCE y SHRLEVEL CHANGE proporcionan las funciones
siguientes:
v CHECK LOB con SHRLEVEL REFERENCE especifica que las aplicaciones
pueden leer el espacio de tablas que se va a comprobar durante el proceso de
CHECK LOB, pero no escribir en el mismo.

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 15


v CHECK LOB con SHRLEVEL CHANGE especifica que las aplicaciones pueden
leer y escribir en el espacio de tablas que se va a comprobar durante el proceso
de CHECK LOB.

Mejoras de rendimiento para objetos grandes


Se han realizado varias mejoras que mejoran el rendimiento para la recuperación
de datos para LOB pequeños y medianos y que eliminan bloqueos para las
operaciones de LOB.

Optimización de la recuperación de datos para LOB pequeños y


medianos

En releases anteriores, el proceso de LOB grandes, especialmente desde una


perspectiva distribuida, se ha optimizado para la recuperación de cantidades más
grandes de datos. Muchas aplicaciones utilizan eficazmente localizadores para
recuperar datos LOB independientemente del tamaño de los datos recuperados. El
mecanismo implicado incurrirá en un flujo de red separado para determinar la
longitud de los datos a devolver. Los localizadores de este proceso permanecen
activos para el ámbito de la transacción, que puede ser mayor de lo que es
necesario para cantidades más pequeñas de datos a menos que los localizadores se
liberen explícitamente. Como resultado, se consumen recursos valiosos del
servidor.

La Versión 9.1 presenta la capacidad de que un servidor determine dinámicamente


la forma más eficaz en la que devolver datos LOB o XML. Cuando el formato de
datos dinámicos está habilitado, el periodo de vida del localizador es el ámbito del
cursor (un localizador basado en cursor) en lugar del ámbito de la transacción.
También se proporciona un nuevo mecanismo para permitir al peticionario
recuperar fragmentos secuenciales de los datos LOB al mismo tiempo que
mantiene la posición de los datos (mediante el localizador) en el servidor.

Rendimiento aumentado mediante la eliminación de bloqueos LOB

Se utilizan bloqueos LOB para serializar acceso de espacio de tablas LOB y para
determinar si el espacio LOB desasignado anteriormente se puede volver a asignar.
En releases anteriores, DB2 adquiere un bloqueo en el valor LOB al mismo tiempo
que realiza operaciones de inserción, actualización, supresión y selección, y durante
la asignación de espacio LOB. La Versión 9.1 elimina la adquisición de bloqueos en
cada operación LOB, incluyendo bloqueos LOB que se utilizan para la asignación
de espacio. Se elimina el requisito de un bloqueo LOB para las operaciones de
inserción, supresión, actualización y selección. Además, ya no es necesario un
bloqueo LOB para serializar la coherencia entre el valor del LOB y la columna de
la fila base para la operación de lectura no confirmada. Como resultado, la escala
de bloqueos para bloqueos LOB a nivel de espacio de tablas también se elimina.
Este cambio mejora el tiempo transcurrido global para la recuperación de datos
LOB.

Liderazgo de SQL: novedades de la familia


La Versión 9.1 proporciona liderazgo de SQL ofreciendo una serie de novedades de
la familia de DB2.

Sentencia TRUNCATE TABLE


La sentencia TRUNCATE TABLE proporciona un mecanismo eficaz para suprimir
todas las filas de datos en una tabla de DB2 indicada sin activar desencadenantes
de supresión ni modificar los atributos actuales de tabla del catálogo de DB2. La
sentencia también proporciona una opción IMMEDIATE para vaciar de forma

16 Novedades
permanente la tabla de DB2 designada sin emitir una confirmación, y proporciona
una opción REUSE STORAGE para permitir la reutilización del almacenamiento
desasignado.

Tipo de datos incorporados DECFLOAT


DECFLOAT (coma flotante decimal) es un nuevo tipo de datos incorporado de
SQL que tiene una precisión máxima de 34 dígitos. Los datos DECFLOAT se
pueden manipular, almacenar o cargar en tablas DB2.

Un valor de coma flotante decimal es un número IEEE 754r (finito) con una coma
decimal. La posición de la coma decimal se almacena en cada valor de coma
flotante decimal.

Tipo de datos VARBINARY


La Versión 9.1 proporciona soporte para la función y el tipo de datos VARBINARY.
El tipo de datos VARBINARY representa una serie binaria de longitud variable. La
función VARBINARY devuelve una representación de serie binaria de longitud
variable de una serie de cualquier tipo.
Conceptos relacionados
“Tipo de datos y función BINARY” en la página 8

Mejoras en el control de simultaneidad optimista y la detección


de actualizaciones
Las mejoras en el control de simultaneidad optimista proporcionan una alternativa
de bloqueo más rápida y escalable al bloqueo de base de datos para acceso
simultáneo a datos. Una mejora adicional relacionada proporciona un mecanismo
para detectar actualizaciones recientes de base de datos (diarias, semanales o
mensuales).

Bloqueo optimista

El bloqueo optimista minimiza el tiempo durante el que un recurso determinado


no está disponible para ser utilizado por otras transacciones.

Debido a que DB2 puede determinar cuándo se ha cambiado una fila, puede
garantizar la integridad de los datos al mismo tiempo que limita el tiempo que se
mantienen los bloqueos. Con el control de simultaneidad optimista, DB2 libera los
bloqueos de fila o página inmediatamente después de una operación de lectura.
Para garantizar la integridad de los datos, DB2 también libera el bloqueo de fila
después de cada operación FETCH y toma un nuevo bloqueo en una fila sólo para
una actualización o supresión posicionada.

Una nueva columna de indicación de fecha y hora de cambio de fila que


especifique en la sentencia CREATE TABLE y ALTER TABLE le permite
implementar el control de simultaneidad optimista. La columna se define con una
de dos opciones:
v NOT NULL GENERATED ALWAYS FOR EACH ROW ON UPDATE AS ROW
CHANGE TIMESTAMP
v NOT NULL GENERATED BY DEFAULT FOR EACH ROW ON UPDATE AS
ROW CHANGE TIMESTAMP.
DB2 mantiene el contenido de la columna de indicación de fecha y hora de cambio
de fila. Cuando desea utilizar esta señal de cambio como una condición al realizar
una actualización, puede especificar una condición adecuada para esta columna en
la cláusula WHERE.

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 17


Detección de actualización diaria, semanal y mensual

Los administradores de bases de datos se benefician de saber el volumen de


actualizaciones dentro de rangos de tiempo específicos de forma que puedan
planear la duplicación de datos, crear escenarios de auditoría, etc.

Una nueva expresión, ROW CHANGE, devuelve una señal o indicación de fecha y
hora que representa el último cambio a una fila. Ahora, una aplicación tiene las
opciones siguientes:
v Determinar cuándo se ha cambiado por última vez una fila (o si se ha cambiado
durante un rango de fechas o un número de días) utilizando la expresión ROW
CHANGE TIMESTAMP
v Devolver una señal como un valor BIGINT (entero grande) que representa un
punto relativo en la secuencia de modificación de una fila utilizando la
expresión ROW CHANGE TOKEN

Sentencias MERGE y SELECT FROM MERGE


En releases anteriores, la fusión de datos (de 100 transacciones a una tabla maestra,
por ejemplo) requería muchas operaciones distintas:
v 100 operaciones de actualización para actualizar filas existentes en la tabla
maestra
v Operación de inserción para insertar de cero a 100 filas de las transacciones que
no existen actualmente en la tabla maestra
La Versión 9.1 proporciona un mecanismo más fácil y más eficaz mediante la
sentencia MERGE utilizando matrices de datos de entrada. La sentencia MERGE le
permite actualizar e insertar muchas filas en una tabla a partir de una única
sentencia. Puede incorporar la sentencia MERGE en un programa de aplicación y
emitirlo de forma interactiva. La sentencia es ejecutable y se puede preparar
dinámicamente. Además, puede utilizar la sentencia SELECT FROM MERGE para
devolver todas las filas actualizadas y todas las filas insertadas, incluidos los
valores de columna generados por DB2.

Herramientas que dan soporte a la empresa


IBM ofrece muchas herramientas que le ayudan a realizar tareas de administración,
a acceder e integrar la información, así como a gestionar de forma más eficaz los
programas de utilidad, el rendimiento, la recuperación y las aplicaciones.

Acceso a los datos de la empresa bajo demanda con DB2


QMF
DB2 QMF Versión 9.1 ofrece una estación de trabajo entre plataformas y
completamente rediseñada y una solución basada en la web que proporciona
acceso bajo demanda a datos, informes y soluciones visuales interactivas a través
de una aplicación potente de sobremesa y un navegador web estándar. Además,
este release más reciente de DB2 QMF da soporte a la nueva función en DB2 V9.1
para z/OS.

La familia de productos de DB2 QMF incluye los siguientes:


v DB2 QMF para TSO/CICS
v DB2 QMF High Performance Option (HPO)
v DB2 QMF para Workstation
v DB2 QMF para WebSphere

DB2 QMF Versión 9.1 proporciona las mejoras siguientes:

18 Novedades
v Soporte de DB2 Versión 9.1 para z/OS, incluyendo XML y mejoras a SQL
v Desarrollo de arrastrar y soltar de analíticas OLAP, consultas de SQL, informes
tabulares, informes gráficos, tablas de pivote y vistas de análisis de datos
v Desarrollo de arrastrar y soltar de soluciones visuales interactivas tal como
paneles de instrumentos ejecutivos que pueden representar gráficamente datos
que se extraen desde varias fuentes de datos
v Un potente modelo de seguridad que da soporte a la personalización y
diseminación de datos y realiza informes por usuario o por grupo
v Un nuevo depósito de objetos que simplifica el almacenamiento, el control de
acceso y la distribución de objetos de QMF en la empresa
v Una aplicación de escritorio rediseñada, basada en Eclipse, que amplía QMF a
numerosos sistemas operativos de estación de trabajo, incluyendo Windows,
Linux, Solaris y AIX
v Completa asimilación de la solución anterior Visionary de QMF en el núcleo del
producto DB2 QMF, que amplía los objetos gráficos de Visionary a informes de
QMF y unifica el desarrollo de soluciones visuales dentro de una única
aplicación
v Rediseño de DB2 QMF para WebSphere, que amplía funcionalidad clave de
QMF a usuarios basados en navegador entre varias plataformas

DB2 QMF para TSO/CICS

DB2 QMF para TSO/CICS Versión 9.1 ofrece mejoras significativas en el proceso
de bases de datos, soporte para nuevos tipos de datos de DB2 V9.1 para z/OS,
importación y exportación, seguridad y nuevas capacidades de diagnóstico.

Algunos de los aspectos más importantes de la Versión 9.1 de DB2 QMF para
TSO/CICS incluyen los siguientes:
v Las mejoras en el proceso de bases de datos incluyen un nuevo parámetro de
programa que se beneficia del proceso de captación e inserción de varias filas de
DB2.
v Soporte para los siguientes nuevos tipos de datos de DB2 V9.1 para z/OS:
– BIGINT
– BINARY
– DECFLOAT
– VARBINARY
– XML
v Mejoras en las funciones de importación y exportación, incluyendo las
siguientes:
– Soporte del nuevo formato de datos XML
– Capacidad de importación y exportación de datos utilizando nombres de vía
de acceso de UNIX
– Capacidad de exportación e importación de objetos y datos de QMF
utilizando conjuntos de datos PDSE
– Especificación más fácil del tamaño de conjunto de datos
v Mejora en la seguridad mediante el mandato CONNECT de QMF, que ahora da
soporte a contraseñas en mayúsculas y minúsculas RACF
v Soporte de diagnóstico para varios nuevos códigos de SQL de DB2 V9.1 para
z/OS

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 19


DB2 QMF para Workstation

El producto llamado anteriormente DB2 QMF para Windows se ha rediseñado y


renombrado a DB2 QMF para Workstation.

La nueva arquitectura basada en Eclipse permite a DB2 QMF para Workstation dar
soporte a entornos populares de estación de trabajo tales como Linux, UNIX,
Solaris y AIX, además de a Windows.

Otros cambios y mejoras a DB2 QMF para Workstation incluyen los siguientes:
v Integración completa del anterior producto Visionary de DB2 QMF en DB2 QMF
para Workstation
v Un nuevo depósito de objetos que sustituye al Archivo de definiciones de
servidor (SDF) anterior y ofrece una serie de mejoras
v Varias mejoras en la productividad y en la facilidad de uso, que incluyen las
siguientes:
– Soporte mejorado de OLAP
– Capacidades rediseñadas de edición de tablas
v Una arquitectura distribuida que:
– Permite a los usuarios acceder a fuentes de datos de forma remota utilizando
conexiones de red o de servicio web a través de HTTP/HTTPS
– Permite a los administradores consolidar opcionalmente acceso de base de
datos en un servidor designado o una colección de servidores
– Combina las ventajas de una administración de cliente cero al mismo tiempo
que mantiene la flexibilidad y el rendimiento de una potente aplicación de
sobremesa

DB2 QMF para WebSphere

DB2 QMF para WebSphere proporciona drásticas mejoras en el rendimiento y la


usabilidad. Las mejoras clave incluyen las siguientes:
v Una interfaz de usuario rediseñada con rendimiento mejorado y tiempo
reducido de respuesta del servidor, y un diseño que es similar a DB2 QMF para
Workstation
v Soporte completo de las capacidades que se proporcionaron anteriormente en
DB2 QMF Visionary
v Una consola de administración de QMF basada en la web que permite a los
administradores de QMF gestionar la aplicación QMF para WebSphere mediante
un navegador web normal
v Soporte de tipos de datos nuevos y existentes y nuevas extensiones de SQL en
DB2 V9.1 para z/OS, incluyendo los siguientes:
– BIGINT
– BINARY
– DECFLOAT
– VARBINARY
– XML

DB2 QMF High Performance Option

Las mejoras clave para la Versión 9.1 de DB2 QMF High Performance Option
(HPO) incluyen las siguientes:

20 Novedades
v Aprovechamiento de la captación e inserción de varias filas de DB2 para
aumentar el rendimiento
v Soporte de DSQLLIB para asignar bibliotecas, proporcionando soporte
comparable al de QMF para TSO
v Una nueva opción para sustituir automáticamente un procedimiento almacenado
existente
v Incorpora una interfaz de procedimiento almacenado que toma una consulta y
un formulario como entrada y devuelve el informe resultante como un conjunto
de resultados
v Añade soporte para el nuevo tipo de datos BIGINT de DB2

Opciones de empaquetado para DB2 QMF


Hay disponibles dos opciones de empaquetado para DB2 QMF: DB2 QMF
Enterprise Edition y DB2 QMF Classic Edition.

DB2 QMF Enterprise Edition proporciona toda la familia de tecnologías de DB2


QMF, lo que habilita la información empresarial a nivel de toda la empresa entre
plataformas de base de datos y usuario final. DB2 QMF Enterprise Edition consta
de los componentes siguientes:
v DB2 QMF para TSO/CICS
v DB2 QMF High Performance Option (HPO)
v DB2 QMF para Workstation
v DB2 QMF para WebSphere

DB2 QMF Classic Edition da soporte a usuarios finales que acceden a bases de
datos de DB2 para z/OS únicamente desde emuladores y terminales de sistemas
principales tradicionales, incluyendo IBM Host On Demand. Esta edición consta de
DB2 QMF para TSO/CICS.

Gestión de la empresa con las Herramientas de DB2


Las Herramientas de DB2 para z/OS le ayudan a reducir las tareas manuales, a
mantener la alta disponibilidad y a realizar funciones de duplicación e integración
de la información.

Conjuntamente, el conjunto de herramientas que ofrece IBM puede ayudarle a


satisfacer estándares de rendimiento y a controlar los costes de TI. Puede combinar
una selección de herramientas de cualquier categoría para crear una solución
completa, flexible y asequible personalizada para satisfacer sus necesidades
específicas. Encontrará una amplia variedad de herramientas disponibles y
preparadas para dar soporte a todas las nuevas funciones principales de la Versión
9.1.

Administración de bases de datos

Las herramientas de administración de bases de datos satisfacen requisitos


comunes de servicio y soporte de bases de datos para agilizar la gestión de DB2.
Las herramientas de administración de bases de datos de DB2 incluyen las
siguientes:
v IBM DB2 Administration Tool for z/OS
v IBM DB2 Administration Toolkit for z/OS, SAP Edition
v IBM DB2 Audit Management Expert for z/OS
v IBM DB2 Object Comparison Tool for z/OS
v IBM DB2 Storage Management Utility for z/OS

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 21


v IBM DB2 Thread Expert for z/OS
v IBM Data Encryption for IMS and DB2 Databases for z/OS

Gestión de programas de utilidad

Las herramientas de gestión de programas de utilidad proporcionan un completo


conjunto de programas de utilidad que manejan las tareas de descarga, carga y
otras. Muchos programas de utilidad ampliados le ayudan a mejorar la
productividad, el rendimiento y la disponibilidad. Las herramientas de gestión de
programas de utilidad incluyen las siguientes:
v IBM DB2 Automation Tool for z/OS
v IBM DB2 Automation Toolkit for z/OS, SAP Edition
v IBM DB2 Cloning Tool for z/OS
v IBM DB2 High Performance Unload for z/OS
v IBM DB2 Utilities Suite for z/OS

Importante: En esta versión de DB2 para z/OS, DB2 Utilities Suite está
disponible como un producto opcional. Debe solicitar y adquirir separadamente
una licencia para estos programas de utilidad, y la descripción de las funciones
de estos programas de utilidad en esta publicación no pretende implicar que
tenga una licencia de los mismos. Consulte la Parte 1 del manual DB2 Utility
Guide and Reference para ver detalles del paquete.

Gestión de rendimiento

Las herramientas de gestión de rendimiento le ayudan a mantener DB2 en


ejecución a niveles máximos incluso bajo una fuerte demanda. Las herramientas de
gestión de rendimiento incluyen las siguientes:
v IBM DB2 Buffer Pool Analyzer for z/OS
v IBM DB2 Optimization Expert for z/OS
v IBM DB2 Performance Toolkit for DB2 on z/OS, SAP Edition
v IBM DB2 Query Monitor for z/OS
v IBM DB2 SQL Performance Analyzer for z/OS
v IBM Tivoli OMEGAMON XE for DB2 Performance Expert on z/OS
v IBM Tivoli OMEGAMON XE for DB2 Performance Monitor on z/OS

Gestión de recuperación

Las herramientas de gestión de recuperación gestionan una serie de tareas de copia


de imagen, copia de seguridad y recuperación, que incluyen la acumulación de
cambios, mejoran la flexibilidad de DB2 y aumentan el valor y la disponibilidad de
los datos copiados para DB2. Las herramientas de gestión de recuperación incluyen
las siguientes:
v IBM DB2 Archive Log Accelerator for z/OS
v IBM DB2 Change Accumulation Tool for z/OS
v IBM DB2 Log Analysis Tool for z/OS
v IBM DB2 Object Restore for z/OS
v IBM DB2 Recovery Expert for z/OS
v IBM Application Recovery Tool for IMS and DB2 Databases

Gestión de aplicaciones

Las herramientas de gestión de aplicaciones le ayudan a gestionar las aplicaciones


de DB2 y le ofrecen acceso global y rentable a información y a transacciones
basadas en la web. Las herramientas de gestión de aplicaciones incluyen las
siguientes:

22 Novedades
v IBM DB2 Bind Manager for z/OS
v IBM DB2 Data Archive Expert for z/OS
v IBM DB2 Path Checker for z/OS
v IBM DB2 Table Editor for z/OS
v IBM DB2 Test Database Generator for z/OS

Análisis de empresa

Las herramientas de análisis de empresa ayudan a los analistas de empresa a


aprovechar la nueva inteligencia empresarial de los datos de base de datos. Las
herramientas de análisis de empresa incluyen las siguientes:
v IBM DataQuant for z/OS
v IBM QMF for z/OS
v IBM DB2 Web Query Tool for z/OS

Integración de información

Las herramientas de integración de información ofrecen posibilidades ampliadas de


duplicación de datos y de publicación de sucesos de datos como parte del conjunto
completo de componentes de Information Integration Solutions. Las herramientas
de integración de información incluyen las siguientes:
v IBM WebSphere Classic Data Event Publisher for z/OS
v IBM WebSphere Classic Federation Server for z/OS
v IBM WebSphere Classic Replication Server for z/OS
v IBM WebSphere Data Event Publisher for z/OS
v IBM WebSphere Data Integration Classic Connector for z/OS
v IBM WebSphere DataStage for z/OS
v IBM WebSphere QualityStage for z/OS
v IBM WebSphere Replication Server for z/OS
Información relacionada
Página web de Herramientas de DB2 e IMS

Capítulo 2. Cómo aprovechar la empresa para información bajo demanda 23


Capítulo 3. Disponibilidad
La Versión 9.1 ofrece disponibilidad mejorada mediante un nuevo mandato de DB2
y extensiones a sentencias de SQL y programas de utilidad en línea existentes.

REORG en línea sin ninguna fase BUILD2


Al reorganizar un espacio de tablas con SHRLEVEL CHANGE en versiones
anteriores de DB2, los datos que se están reorganizando no están disponibles a las
aplicaciones durante las fases SWITCH y BUILD2, que son relativamente largas.
Ahora, en la Versión V9.1, la fase BUILD2 se ha eliminado para mejorar la
disponibilidad de los datos.

Sustitución más rápida de una tabla por otra


La Versión 9.1 proporciona la capacidad de sustituir tablas de forma más rápida
mediante el soporte de tablas de réplica.

Con el soporte de las tablas de réplica, puede generar una copia de una tabla
actual, en el mismo espacio de tablas, que tenga los mismos atributos, estructura y
datos que la tabla original. Después de crear una tabla de réplica, puede insertar o
cargar datos en la tabla de réplica y cambiar el nombre de la tabla de réplica por el
nombre de tabla actual.

Las extensiones a la sentencia ALTER TABLE dan soporte a la función de tabla de


réplica y le permiten realizar las acciones siguientes:
v Crear tablas de réplica con la opción ADD CLONE. Las tablas de réplica pueden
estar particionadas o no particionadas y puede realizar copias de imagen de una
tabla de réplica.
v Descartar tablas de réplica con la opción DROP CLONE.
v Cambiar los datos actuales por los datos de réplica con la opción EXCHANGE,
que proporciona una sustitución rápida de los datos originales y es una
alternativa a la capacidad LOAD REPLACE en línea.

Las aplicaciones basadas en la web que necesiten la máxima disponibilidad pueden


beneficiarse de la opción para implementar un par de tablas que tengan estructuras
replicadas. Se pueden crear fácilmente copias para la comprobación y auditoría de
aplicaciones. El soporte de tablas de réplica también proporciona la capacidad
exclusiva de cambiar rápidamente los nombres de tabla. Como resultado, las
aplicaciones pueden conmutar de forma rápida y transparente entre tablas de
réplica dual. Cuando es necesario que los datos de la tabla de réplica pasen a estar
activos para una aplicación, puede utilizar la opción EXCHANGE de la sentencia
ALTER TABLE para cambiar el nombre de tabla, que proporciona la sustitución
rápida de los datos originales.

Espacios de tablas universales


V9.1 presenta un nuevo tipo de espacio de tablas, un espacio de tablas universal. Un
espacio de tablas universal es un espacio de tablas que está segmentado y
particionado. Hay disponibles dos tipos de espacios de tablas universales: el
espacio de tablas de partición por crecimiento y el espacio de tablas particionado
por rango.

© Copyright IBM Corp. 2007, 2008 25


Un espacio de tablas universal ofrece las ventajas siguientes:
v Mejor gestión del espacio en relación a las filas de longitud variable: una página
de correlación de espacio segmentado proporciona más información sobre el
espacio libre que una página de correlación de espacio particionado normal.
v Rendimiento mejorado de supresión masiva: la supresión masiva en una
organización de espacios de tablas segmentados tiende a ser más rápida que los
espacios de tablas organizados de otra forma. Además, puede reutilizar de forma
inmediata todos los segmentos de una tabla o la mayoría de ellos.

Espacio de tablas de partición por crecimiento

Antes de la Versión 9.1, las tablas particionadas requerían rangos de claves para
determinar la partición de destino para la colocación de las filas. Las tablas
particionadas proporcionan operaciones de bloqueo y paralelas más granulares ya
que dividen los datos entre más conjuntos de datos. Ahora, en la Versión 9.1, tiene
la opción de realizar la partición según el crecimiento de los datos, lo que permite
que las tablas segmentadas se particionen según crecen, sin necesidad de rangos de
claves. Como resultado, las tablas segmentadas se benefician de límites
aumentados de espacio de tablas y del paralelismo de programas de utilidad y
SQL que anteriormente sólo estaban disponibles para las tablas particionadas, y
puede evitar la necesidad de reorganizar un espacio de tablas para cambiar las
claves de límite.

Puede implementar la organización de espacios de tablas de partición por


crecimiento de varias formas:
v Puede utilizar la nueva cláusula MAXPARTITIONS en la sentencia CREATE
TABLESPACE para especificar el número máximo de particiones que el espacio
de tablas de partición por crecimiento puede acomodar. El valor que especifica
en la cláusula MAXPARTITIONS se utiliza para proteger contra aplicaciones
descontroladas que realizan una inserción en un bucle infinito.
v Puede utilizar la cláusula MAXPARTITIONS en la sentencia ALTER
TABLESPACE para alterar el número máximo de particiones hasta las que puede
crecer un espacio de tablas de partición por crecimiento existente. Esta operación
ALTER TABLESPACE actúa como un ALTER inmediato.

Espacio de tablas particionado por rango

Un espacio de tablas particionado por rango es un tipo de espacio de tablas universal


que se basa en rangos de partición y que contiene una única tabla.

El nuevo espacio de tablas particionado por rango no sustituye al espacio de tablas


particionado existente y las operaciones a las que se da soporte en un espacio de
tablas particionado o segmentado normal reciben soporte en un espacio de tablas
particionado por rango. Puede crear un espacio de tablas particionado por rango
especificando las palabras clave SEGSIZE y NUMPARTS en la sentencia CREATE
TABLESPACE.

Con un espacio de tablas particionado por rango, también puede controlar el


tamaño de partición, elegir entre una amplia gama de opciones de indexación y
beneficiarse de operaciones a nivel de partición y de las capacidades de
paralelismo. Debido a que el espacio de tablas particionado por rango es también
un espacio de tablas segmentado, puede ejecutar exploraciones de tabla a nivel de
segmento. Como resultado, puede reutilizar de forma inmediata todos los
segmentos de una tabla, o la mayoría de ellos, una vez que la tabla se haya
descartado o se haya realizado una supresión masiva.

26 Novedades
Mejor disponibilidad durante operaciones REBUILD INDEX
El programa de utilidad REBUILD INDEX en línea se ha ampliado en la Versión
9.1 para dar soporte a acceso de lectura y escritura durante un periodo de tiempo
más largo durante la operación del programa de utilidad. Como resultado, las
aplicaciones tienen mayor acceso a los datos mientras se están volviendo a crear
los índices sobre esos datos. Esto complementa el soporte de la Versión 8 en el que
las operaciones de inserción, actualización y supresión están soportadas en índices
que no son exclusivos mientras la recreación del índice está en curso.

Disponibilidad mejorada con capacidades para renombrar columnas e


índices
Dos nuevas capacidades le permiten renombrar una columna sin necesidad de
descartar y volver a crear una tabla, así como renombrar un índice mediante una
operación de catálogo.

La sentencia ALTER TABLE se ha ampliado para incluir la cláusula RENAME


COLUMN. Ahora puede renombrar una columna sin necesidad de descartar y
volver a crear una tabla, lo que lleva menos tiempo, reduce los costes de proceso y
proporciona un mayor grado de disponibilidad. La capacidad de renombrar una
columna de esta forma también permite una mejor reutilización de las columnas
porque no es necesario añadir columnas adicionales.

La sentencia RENAME se ha ampliado para incluir la palabra clave INDEX, que le


permite renombrar un índice mediante una operación de catálogo. La capacidad de
renombrar índices de esta forma también le permite consolidar nombres de índice
que se utilizan en distintos releases de SAP.

Modificar código EARLY sin una IPL


El nuevo mandato DB2, REFRESH DB2,EARLY, le permite renovar código EARLY
cuando DB2 no está activo. No es necesaria ninguna IPL para completar la
operación de renovación. Cuando especifica el mandato, los módulos de código
EARLY se vuelven a cargar y se vuelve a crear el bloque de control EARLY. Las
copias anteriores de los módulos EARLY se suprimirán la próxima vez que inicie
DB2.

Mejoras de ALTER TABLESPACE y de las anotaciones cronológicas de


índice
La capacidad de modificar un espacio de tablas para suprimir las anotaciones
cronológicas se amplía en la Versión V9.1 a espacios de tablas base, espacios de
tablas XML y a los índices asociados con los mismos. Los índices heredan los
atributos de anotaciones cronológicas de la tabla base con la que están asociados.
La supresión de las anotaciones cronológicas comporta ventajas en una serie de
situaciones en las que los datos se están duplicando. En estos casos, si los datos se
pierden, puede volver a generarlos a partir de la fuente original en lugar de a
partir de una copia de imagen y la aplicación subsiguiente de los registros de
anotaciones cronológicas.
Conceptos relacionados
“Soporte ampliado para no anotar cronológicamente espacios de tablas” en la
página 10

Capítulo 3. Disponibilidad 27
Soporte para la utilización de clases de almacenamiento SMS con
conjuntos de datos definidos por DB2
Los usuarios de DB2 para z/OS han solicitado la capacidad de utilizar clases de
almacenamiento SMS con conjuntos de datos definidos por DB2 mediante la
sentencia DB2 STOGROUP. La Versión 9.1 ahora da soporte a esta capacidad. Las
sentencias CREATE STOGROUP y ALTER STOGROUP se han mejorado para
incluir clase de datos SMS, clase de gestión y clase de almacenamiento como
parámetros opcionales. La habilitación de conjuntos de datos definidos por DB2
para utilizar clases de almacenamiento SMS aumenta la flexibilidad del manejo de
estos conjuntos de datos al mismo tiempo que minimiza el esfuerzo manual y el
tiempo que esto implica.

28 Novedades
Capítulo 4. Rendimiento
La Versión 9.1 proporciona rendimiento mejorado mediante reducciones del tiempo
de proceso de CPU para una serie de programas de utilidad, acceso más rápido al
disco, operaciones mejoradas de anotaciones cronológicas e inserción, optimización
mejorada de consultas y mejoras del índice.

Reducción del tiempo de proceso de CPU para programas de utilidad


Ahora se reduce el tiempo de proceso de CPU al extraer claves de índice no
rellenadas de filas de datos utilizando los siguientes programas de utilidad:
v COPY
v REORG
v LOAD
v REBUILD INDEX
v RECOVER
v RUNSTATS
v CHECK INDEX

Mejoras en la optimización de SQL


La Versión 9.1 ofrece una serie de mejoras en la optimización de SQL, que incluyen
soporte para estadísticas de histograma, técnicas de optimización mejoradas y una
mejor gestión con el nuevo DB2 Optimization Services Center.

Mejores datos para el optimizador con las estadísticas de


histograma
Las estadísticas de distribución de datos son importantes para la optimización de
consultas. DB2 elige la mejor vía de acceso en base a los costes. La fundación
básica del coste es una estimación de selectividad de predicados, que se basa
principalmente en las estadísticas de distribución de datos. Las versiones anteriores
de DB2 para z/OS se basan en estadísticas de frecuencia recopiladas (mediante el
programa de utilidad RUNSTATS) en valores únicos, de una única columna o de
varias columnas. Ahora, la Versión 9.1 da soporte a estadísticas de histograma, que
proporcionan mejores datos para el optimizador. Con las estadísticas de
histograma, DB2 puede mejorar la selección de vía de acceso calculando la
selectividad de predicados de estadísticas de distribución de valores recopiladas de
todo el rango de valores de un conjunto de datos, a diferencia de las estadísticas
de frecuencia.

Técnicas de optimización mejoradas


DB2 V91 para z/OS añade o mejora varias técnicas para optimizar el rendimiento
de consulta.

Optimización de consulta global

En versiones anteriores de DB2 para z/OS, se pueden producir problemas de


rendimiento de consulta cuando DB2 divide una consulta en varias partes (por
ejemplo, una subconsulta correlacionada o una consulta externa) y optimiza cada
una de estas partes independientemente. Mientras que cada una de las partes
individuales se puede optimizar para ejecutarse de forma eficaz, el resultado global

© Copyright IBM Corp. 2007, 2008 29


puede ser ineficaz cuando se combinan estas partes. Ahora la Versión 9.1 da
soporte a la optimización de consulta global, que permite a DB2 optimizar una
consulta de forma global en lugar de como una parte independiente. Cuando se
optimiza una consulta como una entidad global, DB2 puede considerar el efecto de
un solo bloque de consulta sobre otro y puede considerar la reordenación de
bloques de consulta para determinar la vía de acceso de consulta más eficaz.

Índice disperso y mejoras de colocación en antememoria de


datos en memoria

En la Versión 8 de DB2 para z/OS, los archivos de trabajo materializados para


consultas de unión en estrella se pueden almacenar en la agrupación de
almacenamientos global por encima de la barra de 2 GB (una antememoria de
datos en memoria) como la alternativa más rentable a la técnica de índice disperso
utilizada en versiones anteriores de DB2 para z/OS. Un índice disperso se utiliza
como un plan alternativo en tiempo de ejecución si no hay suficiente memoria
disponible en la agrupación de almacenamientos global.

En la Versión 9.1, la utilización de la colocación en antememoria de datos en


memoria se ha generalizado para dar soporte a más tipos de consultas. Además,
los datos se colocan en antememoria en una agrupación de almacenamientos local
por encima de la barra de 2 GB, lo que puede reducir la contención de
almacenamiento potencial porque la gestión de almacenamiento de colocación en
antememoria de datos está asociada con cada hebra. Puede asignar hasta 20 MB de
memoria para la colocación en antememoria de datos. Si la memoria necesaria
excede el límite especificado, se utiliza en su lugar un índice disperso. Este método
de acceso ampliado proporciona potenciales ventajas para las tablas que carecen de
un índice adecuado o de suficientes estadísticas, y compite con otras opciones para
obtener la vía de acceso más eficaz.

Optimización de consulta compleja mediante mejoras en la


selección de rango de páginas

El número de particiones a las que accede DB2 para evaluar un predicado de


consulta puede afectar al rendimiento de esa consulta. Una consulta que
proporciona recuperación de datos a través de un índice secundario con particiones
de datos (DPSI) puede acceder a algunas o a todas las particiones del DPSI. Para
una consulta que se basa solamente en un valor o rango de clave DPSI, DB2 debe
examinar todas las particiones. Sin embargo, si la consulta también tiene
predicados en las columnas iniciales de la clave de particionamiento, DB2 no
necesita examinar todas las particiones. La Versión 8 de DB2 para z/OS presentaba
la selección de rango de páginas o exploración de partición limitada como una
técnica para eliminar las particiones inaplicables de la consideración para el acceso.
También se ofrecen varias técnicas para escribir o modificar consultas para
beneficiarse de la selección de rango de páginas.

La Versión 9.1 ofrece dos mejoras adicionales a la función de selección de rango de


páginas que reduce más el número de particiones a las que se accede
innecesariamente. Ahora puede beneficiarse de selección de rango de páginas
creando consultas que unen las tablas en la columna de particionamiento o crean
un predicado no coincidente en las claves de particionamiento.

Reoptimización automática para consultas dinámicas

La vía de acceso para consultas estáticas y dinámicas que contienen variables de


sistema principal la selecciona el optimizador durante el tiempo de vinculación,

30 Novedades
antes de que estén disponibles los valores de las variables de sistema principal.
Debido a que no se consideran los valores de variables de sistema principal, es
posible que la vía de acceso que se elija no sea siempre óptima. En versiones
anteriores a la Versión 8 de DB2 para z/OS, este problema lo resuelve parcialmente
la opción de vinculación REOPT(ALWAYS), que prepara de nuevo la sentencia en
tiempo de ejecución cuando las variables de entrada de sistema principal están
disponibles. Como resultado, el optimizador puede reoptimizar la vía de acceso en
base a los valores de variable de entrada conocidos. Sin embargo, las sentencias de
SQL a las que se llama con frecuencia que tardan poco tiempo en ejecutarse no son
buenas opciones para este método.

La Versión 8 de DB2 para z/OS presentaba la opción de vinculación,


REOPT(ONCE), que reoptimiza la vía de acceso de una consulta dinámica sólo una
vez en tiempo de ejecución, independientemente de cuántas veces se ejecute la
misma sentencia. Con esta técnica, DB2 elige la vía de acceso en base al conjunto
de valores de variables de entrada, y la vía de acceso se almacena en la
antememoria de sentencias dinámicas para ser utilizada por ejecuciones
subsiguientes de la consulta. Mientras que esta opción ofrece flexibilidad adicional,
se continúa observando el impacto de las variables de sistema principal en la
selección de vías de acceso óptimas.

La Versión 9.1 ahora ofrece mayor flexibilidad con la opción REOPT(AUTO), que
habilita DB2 para determinar autonómicamente si es necesaria una nueva vía de
acceso para una sentencia en la antememoria de sentencias dinámicas. Cuando se
especifica REOPT(AUTO), DB2 optimiza la vía de acceso para las sentencias de
SQL dinámicas durante la primera operación de ejecutar o abrir. Cada vez que se
ejecuta una sentencia, DB2 determina si es necesaria una nueva vía de acceso para
mejorar el rendimiento de la sentencia. Si una nueva vía de acceso mejorará el
rendimiento, DB2 genera una nueva vía de acceso y sustituye la vía de acceso
anterior en la antememoria de sentencias dinámicas.

FETCH FIRST n ROWS ONLY y ORDER BY en subselecciones y


selecciones completas

En versiones anteriores de DB2 para z/OS, se daba soporte a las cláusulas ORDER
BY y FETCH FIRST n ROWS ONLY sólo a nivel de sentencia como parte de una
sentencia select o de una sentencia SELECT INTO. La Versión 9.1 proporciona
flexibilidad adicional permitiendo tanto cláusulas FETCH FIRST n ROWS ONLY
como cláusulas ORDER BY cuando se especifican como parte de un sentencia de
subselección o de selección completa. Con el nuevo soporte para FETCH FIRST n
ROWS ONLY, puede seleccionar las n filas superiores de la tabla de resultados de
una expresión de tabla, una parte de una unión o una subconsulta (para una
sentencia completa que es un componente de un predicado). Si especifica la
cláusula FETCH FIRST n ROWS ONLY con la cláusula ORDER BY, la ordenación
se realiza en toda la tabla de resultados antes de que se devuelvan las n primeras
filas.

IBM Optimization Service Center for DB2 for z/OS


IBM Optimization Service Center for DB2 for z/OS (Optimization Service Center)
es una herramienta de estación de trabajo que proporciona un conjunto innovador
de capacidades para mejorar el rendimiento de consultas individuales de DB2 SQL
y cargas de trabajo completas de SQL que se ejecutan en el subsistema DB2 para
z/OS. Puede utilizar Optimization Service Center para identificar y analizar
sentencias de SQL problemáticas y recibir consejo experto sobre las estadísticas que
puede reunir para mejorar el rendimiento de una sentencia individual.

Capítulo 4. Rendimiento 31
Para consultas individuales, Optimization Service Center puede hacer lo siguiente:
v Añadir comentarios a la consulta
v Dibujar una gráfica de plan de acceso
v Generar informes de consulta
v Facilitar la generación de sugerencias de optimización
v Sugerir estadísticas que necesite el optimizador de SQL

Cuando lo solicite, Optimization Service Center puede enviar información


relacionada con consultas de nuevo al servicio de IBM.

Para cargas de trabajo de SQL, Optimization Service Center puede reunir cargas de
trabajo de varias fuentes tales como la antememoria de sentencias dinámicas, tablas
de catálogo, archivos y directorios, tablas de QMF y supervisión de perfiles.

De forma adicional, Optimization Service Center puede hacer lo siguiente:


v Capturar consultas de SQL de forma inmediata o a una hora planificada, bien
periódicamente o una sola vez.
v Sugerir estadísticas importantes a recopilar para mejorar el rendimiento para
toda la carga de trabajo.
v Gestionar y utilizar la supervisión de perfiles. La supervisión de perfiles
proporciona un mecanismo de supervisión de excepciones de poco peso en el
que DB2 sólo coloca sentencias de excepción.

OSC se ofrece como parte de la Suite de accesorios de DB2 para z/OS, una
característica gratuita de DB2 Versión 9.1 para z/OS que se puede solicitar.

IBM DB2 Optimization Expert for z/OS


IBM DB2 Optimization Expert for z/OS (DB2 Optimization Expert) es una
herramienta de la estación de trabajo que ofrece un completo conjunto de
consejeros de índice y estadísticas que puede utilizar para mejorar el rendimiento
del sistema y disminuir el coste total de propiedad. Además de un potente
conjunto de herramientas de consejero experto, DB2 Optimization Expert incluye
todas las funciones del Optimization Service Center.

Con DB2 Optimization Expert, puede hacer lo siguiente:


v Visualizar la actividad de consulta para buscar problemas de rendimiento a
partir de una instantánea de la antememoria de sentencias del subsistema DB2 y
una serie de otras fuentes (el catálogo de DB2, por ejemplo)
v Obtener e implementar recomendaciones de ajuste expertas para mejorar el
rendimiento de una consulta de SQL utilizando algunos de los siguientes
consejeros expertos, o todos ellos:
– Consejero de estadísticas, que recomienda estadísticas a actualizar o recopilar
para mejorar el rendimiento de una consulta
– Consejero de consultas, que recomienda formas de sobreescribir una consulta
de SQL para mejorar el rendimiento
– Consejero de vía de acceso, que le alerta de vías de acceso problemáticas en el
plan de acceso para la consulta que puede causar un bajo rendimiento
– Consejero de índice, que le recomienda nuevos índices para mejorar el
rendimiento de una consulta de SQL y genera sentencias CREATE INDEX que
se pueden ejecutar desde la estación de trabajo para implementar las
recomendaciones.
– Funciones de Optimization Service Center, que da soporte al ajuste avanzado
con potentes herramientas de optimización.

32 Novedades
Todas las funciones de Optimization Service Center de DB2 Accessories Suite
se incluyen con DB2 Optimization Expert. En resumen, permiten a los
administradores de bases de datos experimentados comprender, analizar,
formatear y optimizar sentencias de SQL.
v Visualizar la actividad de grupos de sentencias de SQL para buscar problemas
de rendimiento: Puede supervisar la salud de las cargas de trabajo de SQL.
Cuando el rendimiento de SQL se ha optimizado, puede crear perfiles de
supervisión para el proceso normal y el proceso de excepciones que:
– Supervisen la salud del proceso de SQL en el subsistema
– Le alerten cuando se desarrollen problemas
– Le alerten cuando es posible que sean aconsejables más actividades de ajuste
v Obtengan consejo experto de ajustes de las siguientes funciones de consejero
experto para mejorar el rendimiento de toda una carga de trabajo de SQL:
– Consejero de estadísticas de carga de trabajo, que recomienda estadísticas a
recopilar o actualizar para mejorar el rendimiento general de las sentencias
que componen una carga de trabajo de SQL.
– Consejero de índice de carga de trabajo, que recomienda índices a crear o
modificar para mejorar el rendimiento global de las sentencias que componen
una carga de trabajo de SQL. El consejero de índice de carga de trabajo
también genera sentencias CREATE INDEX que puede ejecutar desde la
estación de trabajo para implementar las recomendaciones.
– Consejero de consulta de carga de trabajo, que recomienda formas de
sobreescribir consultas de SQL específicas para mejorar el rendimiento de una
carga de trabajo. Se recomiendan los arreglos de las mejores prácticas para los
errores comunes de escritura de consultas.

DB2 Optimization Expert for z/OS es una Herramienta de DB2, con un precio
aparte, que se puede solicitar por separado.

Mejoras en la indexación
Las mejoras en la indexación contribuyen a las mejoras generales en el rendimiento
de consultas. Las mejoras específicas incluyen compresión de índice, índice en
expresión, aleatorización de clave de índice y tamaños más grandes de página de
índice.

Compresión de índice
La Versión 9.1 proporciona la capacidad de comprimir un índice sin utilizar un
diccionario. La compresión de un índice reduce el espacio de almacenamiento
físico que requiere un índice. Eliminando la necesidad de un diccionario, los datos
de índice se pueden comprimir tan pronto como las primeras entradas de índice se
añaden a un índice, y el espacio que utilizaría normalmente un diccionario pasa a
estar disponible. Puede elegir si desea utilizar compresión de índice especificando
COMPRESS YES o COMPRESS NO en las sentencias CREATE INDEX o ALTER
INDEX.

Índice en expresión

El soporte de un nuevo tipo de índice, índice en expresión, le permite crear un


índice en una expresión general. El rendimiento de consultas se puede mejorar si el
optimizador elige ese índice. Cuando utiliza un índice en una expresión, los
resultados de las expresiones se evalúan durante el tiempo de inserción o durante
una recreación de índice y se mantienen en el índice. Si el optimizador elige

Capítulo 4. Rendimiento 33
utilizar ese índice, el predicado se evalúa contra los valores que se almacenan en el
índice. Como resultado, se elimina la actividad general de rendimiento en tiempo
de ejecución.

Tamaños más grandes de página de índice

Las versiones anteriores de DB2 para z/OS limitan el tamaño de una página de
índice a 4 KB. El tamaño de una página de índice limita el número de claves de
índice que la página de índice puede acomodar y puede causar contención en los
índices que se dividen con frecuencia. La Versión 9.1 levanta estas restricciones
proporcionando tamaños expandidos de página de índice de 8 KB, 16 KB y 32 KB.
Un tamaño de página de índice mayor de 4 KB acomoda más claves de índice por
página y puede reducir la frecuencia de divisiones de página de índice. Puede
utilizar la opción INDEXBP tanto en la sentencia CREATE DATABASE como en la
sentencia ALTER DATABASE para especificar agrupaciones de almacenamientos
intermedios de 4 KB, 8 KB, 16 KB o 32 KB. También puede utilizar la palabra clave
BUFFERPOOL en la sentencia CREATE INDEX para especificar agrupaciones de
almacenamientos intermedios de 8 KB, 16 KB y 32 KB.

Aleatorización de clave de índice

Actualmente, las cargas de trabajo de proceso de transacción en línea (OLTP) en un


entorno de compartimiento de datos pueden experimentar contención de bloqueo
en la última página de un índice, especialmente cuando un programa de aplicación
utiliza índices en columnas que contienen indicaciones de fecha y hora o valores
secuenciales en continuo aumento crean puntos activos de inserción. Como
resultado de esta contención, una aplicación debe esperar a adquirir una página de
índice. Para aliviar la contención de bloqueo, la Versión 9.1 proporciona soporte
para aleatorizar columnas de clave de índice mediante la nueva opción RANDOM
tanto en sentencias CREATE INDEX como en sentencias ALTER INDEX.

Cuando especifica la opción RANDOM, los valores se almacenan en lugares


aleatorios del árbol de índice. Como resultado, el número de inserciones
consecutivas en una página disminuye y también se disminuye la contención.
Puede utilizar un índice ordenado aleatoriamente para realizar búsquedas de
igualdad en una columna especificada. Además, las columnas de clave que están
en un orden aleatorio se pueden utilizar en exploraciones de índices no
coincidentes, y el acceso sólo a índice en columnas de clave aleatorias es posible.
Aunque los valores se almacenan en un orden aleatorio, puede recuperar el valor
original de la columna de clave aleatoria.
Conceptos relacionados
“Capacidad de crear un índice en una expresión” en la página 11
“Liberación de la inserción secuencial de claves” en la página 35

Rendimiento mejorado para filas de longitud variable


Antes de la Versión 9.1, si almacena un valor cuya longitud es inferior a la
longitud de una columna en una columna de longitud variable, los datos no
rellenan la longitud total de la columna. Como resultado, las columnas que siguen
a columnas de longitud variable se encuentran en un desplazamiento variable en la
fila. Cuando necesita localizar y acceder a una columna de este tipo, debe explorar
las columnas de forma secuencial después de la primera columna de longitud
variable. En la Versión 9.1, el formato en el que una fila que contiene columnas de
longitud variable se almacena en la tabla se ha cambiado para facilitar la
localización de columnas dentro de la fila para la recuperación de datos y la

34 Novedades
evaluación de predicados. Como resultado, ya no necesita ejecutar una exploración
secuencial y se mejora el rendimiento para acceder a los datos en tablas que
almacenan filas con columnas de longitud variable.

Liberación de la inserción secuencial de claves


En releases anteriores, una página de índice se divide de forma que
aproximadamente la mitad de las claves de índice en la página que se divide
permanecen en una página, mientras que el resto de claves de índice pasan a una
página nueva. Esta división 50:50 puede causar divisiones de página frecuentes en
un índice con patrones de inserción secuencial. Como resultado, la mitad de las
páginas que se dividen están vacías. Los índices no particionados actualizados por
los trabajos del programa de utilidad LOAD que se ejecutan en paralelo contra
varias particiones son especialmente susceptibles a estos problemas ya que se
pueden producir inserciones secuenciales en varios rangos en el índice no
particionado. Dos mejoras en la Versión 9.1 alivian estos problemas: soporte para la
división asimétrica de páginas de índice y aumento de los tamaños de las páginas
de índice (mayor de 4 KB).

Si se permite que las páginas de índice se dividan de forma asimétrica, se puede


mejorar la utilización de espacio y reducir la contención resultado de frecuentes
divisiones de página en un índice con patrones de inserción secuencial en medio
del índice. Un tamaño de página de índice mayor de 4 KB también puede aliviar
contención acomodando más claves de índice por página, lo que reduce la
frecuencia de divisiones de página en índices. Puede utilizar la opción INDEXBP
tanto en la sentencia CREATE DATABASE como en la sentencia ALTER
DATABASE para especificar agrupaciones de almacenamientos intermedios de
índice de 4 KB, 8 KB, 16 KB o 32 KB, y la palabra clave BUFFERPOOL en la
sentencia CREATE INDEX para especificar agrupaciones de almacenamientos
intermedios de 8 KB, 16 KB, y 32 KB.

Rendimiento mejorado de la anotación cronológica


Varias mejoras de anotación cronológica de la Versión 9.1 mejoran el rendimiento:
v En versiones anteriores, las cargas de trabajo de compartimiento de datos que
realizan un gran número de anotaciones cronológicas pueden experimentar
retrasos significativos debido al proceso adicional necesario para establecer
valores de LRSN (número de secuencia de registro de anotaciones cronológicas)
exclusivos para cada registro. En la Versión 9.1, el proceso de establecer y
actualizar los valores de LRSN se ha agilizado para mejorar el rendimiento.
v La Versión 8 de DB2 para z/OS y los releases anteriores utilizan el método de
acceso directo básico (BDAM) para leer anotaciones cronológicas de archivado
del disco, lo que facilita el acceso rápido a los intervalos de control de VSAM,
pero no da soporte a conjuntos de datos fragmentados y conjuntos de datos de
formato ampliado. La Versión 9.1 sustituye a BDAM con el método de acceso
secuencial básico (BSAM), que da soporte tanto a conjuntos de datos
fragmentados como a conjunto de datos de formato ampliado, y mejora el
rendimiento de la lectura y escritura.
v En versiones anteriores de DB2 para z/OS, una anotación cronológica activa
puede tener un máximo de 4 GB de pistas en un único volumen de disco,
mientras que el límite de tamaño para una anotación cronológica de archivado
es sólo de aproximadamente 3 GB. Como resultado, las instalaciones que utilizan
anotaciones cronológicas activas de 4 GB están obligadas a poner las anotaciones
cronológicas de archivado en cinta. La Versión 1.7 de z/OS ahora da soporte a
conjuntos de datos grandes y elimina el límite de anotaciones cronológicas de

Capítulo 4. Rendimiento 35
archivado de 64 KB. La Versión 9.1 se beneficia del nuevo límite presentando el
atributo DSNTYPE=LARGE del campo PRIMARY QUANTITY del panel de
instalación DSNTIPA. El nuevo atributo da soporte a una anotación cronológica
de archivado que tiene un máximo de 4 GB de pistas por volumen de disco.

Rendimiento mejorado de la inserción de datos


La opción APPEND de la sentencia CREATE TABLE y ALTER TABLE ofrece
rendimiento mejorado para la inserción de datos al final de una tabla. Esta opción
reduce el proceso que se utiliza para alcanzar las ubicaciones de las nuevas filas

Como el programa de utilidad LOAD RESUME, las filas se colocan al final de la


tabla y no se agrupan en clústeres como lo harían para una operación de inserción
normal. La opción APPEND proporciona una compensación que favorece las
inserciones en lugar de las recuperaciones y la necesidad de una reorganización.

Otras funciones de la Versión 9.1 que pueden mejorar el rendimiento de la


inserción de datos incluyen varias mejoras de índice, mejoras de los rendimientos
de anotaciones cronológicas y no anotar cronológicamente espacios de tablas.
Conceptos relacionados
“Mejoras de ALTER TABLESPACE y de las anotaciones cronológicas de índice”
en la página 27
“Mejoras en la indexación” en la página 33
“Rendimiento mejorado de la anotación cronológica” en la página 35

36 Novedades
Capítulo 5. Conformidad con las regulaciones
La conformidad con las regulaciones, la seguridad y la auditoría son temas que
están en primera línea de la actualidad y que adquieren cada día mayor
importancia. DB2 9 le ayuda a responder a las crecientes demandas para proteger
la seguridad, asegurar la integridad y satisfacer las regulaciones tales como el
Sarbanes-Oxley Act, el Health Insurance Portability and Accountability Act
(HIPAA) y los Payment Card Industry (PCI) Security Standards. El control de
acceso mejorado con roles y contexto fiable de red permite un control más preciso
de la seguridad. El filtro mejorado aumenta la usabilidad de la auditoría. El cifrado
de datos SSL (Secure Sockets Layer) en redes es más seguro.

Roles y contextos fiables de red


El soporte para contexto fiable trata el problema del establecimiento de una
relación fiable entre DB2 y una entidad externa tal como un administrador de base
de datos o un servidor de middleware. Con el soporte de contexto fiable, se
evalúan una serie de atributos fiables para determinar si se puede confiar en un
contexto específico. Una vez que se haya establecido un contexto fiable, puede
definir un conjunto exclusivo de interacciones entre DB2 y la entidad externa, tal
como un servidor de middleware, de forma que un usuario distinto pueda utilizar
la conexión de base de datos existente sin requerir autenticación del nuevo usuario
de conexión.

El soporte del contexto fiable también proporciona la capacidad, dentro de un


contexto fiable específico, de un ID de autorización de DB2 para adquirir un
conjunto especial de privilegios que no están disponibles fuera del contexto fiable
mediante la definición de roles. Un rol es una entidad de base de datos que agrupa
uno o varios privilegios y que se puede asignar a los usuarios. Un rol proporciona
privilegios, además del conjunto actual de privilegios, que se otorgan a los
identificadores de autorización primario y secundario. Un rol puede poseer objetos
si los objetos se crean en un contexto fiable con el rol definido como el propietario.
Si el rol se define como un propietario, sólo los privilegios otorgados al rol se
consideran para la propiedad de objeto.

Auditoría mejorada
El filtro de rastreo mejorado facilita los trabajos de auditoría y de gestión del
rendimiento. Se pueden utilizar muchas otras opciones para minimizar la cantidad
de datos recopilados, de forma que se reduce la actividad general y los datos
extraños que no es necesario procesar.

Soporte del protocolo Secure Socket Layer


DB2 Versión 9.1 para z/OS da soporte al protocolo Secure Socket Layer (SSL)
implementando la función Application Transparent Transport Layer Security
(AT-TLS) de z/OS Communications Server IP.

z/OS V1R7 Communications Server para TCP/IP presenta la función AT-TLS en la


pila TCP/IP para aplicaciones que requieren conexiones TCP/IP seguras. AT-TLS
realiza seguridad de capa de transporte en nombre de la aplicación, tal como DB2,
invocando SSL del sistema z/OS en la capa TCP de la pila TCP/IP. SSL del sistema
z/OS proporciona soporte para los protocolos TLS V1.0, SSL V3.0 y SSL V2.0.
© Copyright IBM Corp. 2007, 2008 37
Más opciones de seguridad con desencadenantes INSTEAD OF
Los desencadenantes INSTEAD OF, que se definen en las vistas, proporcionan otra
forma de garantizar la seguridad dentro de la base de datos. Los desencadenantes
INSTEAD OF se utilizan para procesar operaciones de inserción, actualización y
supresión (mediante lógica de desencadenante) en lugar de la sentencia INSERT,
UPDATE o DELETE que activa el desencadenante. Además de otras capacidades,
puede utilizar los desencadenantes INSTEAD OF para codificar y descodificar
datos de la base de datos dentro de una vista. La vista puede encapsular funciones
de cifrado, mientras que los desencadenantes INSTEAD OF utilizan las funciones
de cifrado para garantizar la seguridad de la base de datos.
Conceptos relacionados
“Desencadenantes INSTEAD OF” en la página 7

38 Novedades
|

| Apéndice. Planificación para DB2 Versión 9.1 para z/OS


| Cada versión nueva de DB2 para z/OS introduce algunos cambios técnicos que
| necesita tener en cuenta cuando planee la migración. Al migrar de la versión 8 a la
| versión 9.1 de DB2 para z/OS, revise los cambios técnicos para asegurase de que la
| migración se realice sin problemas.

| Por ejemplo, en la versión 9.1, DB2 para z/OS incluye cambios en mandatos, en
| programas de utilidad, en sentencias de SQL, en el catálogo de DB2, en la
| supervisión de rendimiento y en los identificadores de componentes de recurso de
| instrumentación (IFCID).

| Esta información va dirigida a todos los usuarios de DB2, incluyendo los


| programadores de aplicaciones, los administradores de bases de datos y los
| programadores del sistema. Se da por supuesto que está familiarizado con la
| versión 8 de DB2 Universal Database para z/OS.

| Esta información asume que el subsistema de DB2 se está ejecutando en la versión


| 9.1, en la modalidad de nueva función. En general, las funciones nuevas descritas,
| incluyendo cambios en las funciones existentes, sentencias y límites, solo están
| disponibles en la modalidad de nuevas funciones. Hay dos nuevas excepciones a
| esta sentencia general y mejoras de la optimización y programas de utilidad
| modificados, que también están disponibles en la modalidad de conversión, salvo
| que se especifique lo contrario.
|
| Cambios en los mandatos
| La Versión 9.1 de DB2 for z/OS incluye mandatos nuevos y modificados.

| Para obtener información detallada sobre todos los cambios, como por ejemplo la
| sintaxis de los mandatos nuevos o modificados, consulte DB2 Command Reference.

| Los temas siguientes proporcionan información adicional.

| Mandatos nuevos
| En la tabla siguiente se muestran los mandatos nuevos de la Versión 9.1.
| Tabla 1. Mandatos nuevos
| Mandato Descripción
| ACCESS DATABASE Fuerza la apertura física de un espacio de tablas, espacio de índices o
| partición, o elimina el estado dependiente de GBP de un espacio de tablas,
| espacio de índices o partición.
| DISPLAY PROFILE Muestra si el perfilado está activo o inactivo.
| REFRESH DB2, EARLY Vuelve a cargar los módulos de código EARLY y vuelve a crear el bloque de
| control EARLY.
| START PROFILE Carga o vuelve a cargar la tabla de perfiles en una estructura de datos en
| memoria.
| STOP PROFILE Detiene o inhabilita la función de perfiles.
|

© Copyright IBM Corp. 2007, 2008 39


| Mandatos modificados
| La Versión 9.1 incluye mandatos modificados.

| En la tabla siguiente se muestra que varios mandatos existentes tienen opciones


| nuevas y modificadas.
| Tabla 2. Cambios en los mandatos existentes
| Mandato Descripción de mejoras y notas
| -ALTER BUFFERPOOL (DB2)
| El mandato ALTER BUFFERPOOL ahora cambia los valores de ciertos
| parámetros.
| Opciones nuevas:
| AUTOSIZE(NO)
| AUTOSIZE(YES)

| La opción AUTOSIZE(NO) es la predeterminada y especifica que la agrupación


| de almacenamiento intermedio no utiliza servicios de Workload Manager (WLM)
| para ajustar automáticamente el tamaño de la agrupación de almacenamiento
| intermedio.

| La opción AUTOSIZE(YES) especifica que la agrupación de almacenamiento


| intermedio utiliza servicios de WLM, si los hay, para ajustar automáticamente el
| tamaño de la agrupación de almacenamiento intermedio en función de la
| supervisión dinámica de los objetivos de carga de trabajo y el almacenamiento
| disponible del sistema.
| -ALTER UTILITY (DB2)
| El mandato ALTER UTILITY ahora cambia los valores de ciertos parámetros de
| una ejecución del programa de utilidad REBUILD que utiliza SHRLEVEL
| CHANGE.
| Opciones nuevas y modificadas:
| REBUILD
| REORG
| DELAY (entero)

| La opción REBUILD especifica que se va a modificar un programa de utilidad


| REBUILD SHRLEVEL CHANGE.

| La opción REORG especifica que se va a modificar un programa de utilidad


| REORG SHRLEVEL REFERENCE o REORG SHRLEVEL CHANGE.

| La opción DELAY (entero) especifica un límite inferior para el intervalo entre el


| momento en que el programa de utilidad envía el mensaje LONGLOG a la
| consola y el momento en que el programa de utilidad lleva a cabo la acción
| especificada por el parámetro LONGLOG. El entero es el retardo en segundos.

40 Novedades
| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas

| Opciones nuevas y modificadas:


| BIND PLAN (DSN)
| BIND PACKAGE DEPLOY
|| BIND PACKAGE (DSN)
DBPROTOCOL
| REBIND PLAN (DSN)
| REOPT(AUTO)
|| REBIND PACKAGE (DSN)
ROUNDING
|
| SET CURRENT PACKAGESET
| SET CURRENT PACKAGE PATH

| La opción de vinculación BIND PACKAGE DEPLOY despliega un procedimiento


| de SQL nativo.

| La opción DBPROTOCOL ahora tiene DBPROTOCAL(DRDA) como valor


| predeterminado.

| La opción REOPT con la palabra clave AUTO especificada determina


| automáticamente si es necesario generar una nueva vía de acceso para optimizar
| más el rendimiento de cada ejecución.

| La opción ROUNDING especifica la modalidad de redondeo durante el tiempo


| de vinculación. La modalidad de redondeo puede utilizarse para manipular
| datos DECFLOAT.

| Puede utilizarse el mandato BIND PACKAGE con la opción SET CURRENT


| PACKAGESET y la opción SET CURRENT PACKAGE PATH.
| -DISPLAY DATABASE (DB2)
| En la Versión 9.1, puede utilizarse DISPLAY DATABASE para mostrar los objetos
| siguientes:
| v Espacios de tablas XML
| v Información de tabla de clones
| El mandato DISPLAY DATABASE puede mostrar información sobre el estado
| de los espacios de tablas XML, que se muestran con el tipo ’XS’.
| El mandato DISPLAY DATABASE puede mostrar información sobre objetos
| de la tabla base y sus clones. La información se muestra automáticamente si
| existe una tabla de clones.
| -DISPLAY DDF (DB2)
| La salida del mandato DISPLAY DDF ahora incluye direcciones IPv6 en formato
| hexadecimal con dos puntos. Si se utilizan direcciones IPv4, el único formato
| aceptado es el formato decimal con puntos de IPv4.
| -DISPLAY LOCATION (DB2)
| La salida del mandato DISPLAY LOCATION ahora incluye direcciones IPv6 en
| formato hexadecimal con dos puntos. Si se utilizan direcciones IPv4, el único
| formato aceptado es el formato decimal con puntos de IPv4.
| -DISPLAY PROCEDURE (DB2)
| En la Versión 9.1 se puede utilizar DISPLAY PROCEDURE para mostrar
| procedimientos de SQL nativos si se ejecuta en modalidad DEBUG. En la versión
| 9, hay que ejecutar el procedimiento en modalidad DEBUG si la columna del
| entorno WLM de la salida contiene el WLM ENVIRONMENT FOR DEBUG
| especificado al crear el procedimiento de SQL nativo. La salida de DISPLAY
| PROCEDURE muestra las estadísticas de los procedimientos de SQL nativos
| como ’0’ si éstos están bajo el efecto de un mandato STOP PROCEDURE.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 41


| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -DISPLAY THREAD (DB2)
| Opciones nuevas y modificadas:
| TYPE (PROC)
| LIMIT

| La palabra clave TYPE ahora tiene una opción PROC que muestra información
| sobre las hebras que ejecutan procedimientos almacenados y funciones definidas
| por el usuario.

| La opción LIMIT acepta una entrada numérica que especifica el número de


| líneas de salida que se desean.

| La salida de este mandato ahora incluye direccionamiento IPv6.

42 Novedades
| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -DISPLAY TRACE (DB2)
| Opciones nuevas:
| ROLE
| XPLAN
| XPKGLOC
| XPKGCOL
| XPKGPROG
| XAUTHID
| XLOC
| XUSERID
| XAPPNAME
| XWRKSTN
| XCONNID
| XCORRID
| XROLE
|
| La opción ROLE especifica los roles de conexión.
| La opción XPLAN proporciona filtros de exclusión para el nombre
| del plan.
| La opción XPKGLOC proporciona filtros de exclusión para el
| nombre de la ubicación del paquete.
| La opción XPKGCOL proporciona filtros de exclusión para el ID de
| la colección de paquetes.
| La opción XPKGPROG proporciona filtros de exclusión para el
| nombre del programa de paquetes.
| La opción XAUTHID proporciona filtros de exclusión para el ID de
| autorización.
| La opción XLOC proporciona filtros de exclusión para la ubicación.
| La opción XUSERID proporciona filtros de exclusión para el ID de
| usuario.
| La opción XAPPNAME proporciona filtros de exclusión IFC para el
| nombre de aplicación o de transacción.
| La opción XWRKSTN proporciona filtros de exclusión IFC para el
| nombre de estación de trabajo.
| La opción XCONNID proporciona filtros de exclusión para el ID de
| conexión.
| La opción XCORRID proporciona filtros de exclusión para el ID de
| correlación.
| La opción XROLE proporciona filtros de exclusión para los roles de
| conexión.

| El mandato DISPLAY TRACE ahora permite especificar direcciones IP en


| LOCATION KEYWORD y acepta el formato hexadecimal con dos puntos para
| las direcciones IP.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 43


| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -DISPLAY UTILITY (DB2)
| Salida nueva:
| Salida durante la fase UNLOAD de REORG con SHRLEVEL
| CHANGE o SHRLEVEL REFERENCE.
| Progreso del programa de utilidad RECOVER.

| Durante la fase UNLOAD de REORG con SHRLEVEL CHANGE o SHRLEVEL


| REFERENCE, se emiten mensajes DSNU111I para las subtareas siguientes:
| descargar índices no particionados, crear índices no particionados duplicados,
| ordenar, compilar y estadísticas incorporadas. La fase de las subtareas de
| descargar índices no particionados es UNLOADIX.

| Durante la fase LOGAPPLY, se puede utilizar el mandato DISPLAY UTILITY


| para verificar el estado de progreso del programa de utilidad RECOVER.

| Opciones nuevas y modificadas:


| MODIFY irlmproc,SET
| DEADLOCK=nnnn
| (z/OS IRLM)
| PVT=nnnn
|
| DEADLOCK especifica, en milisegundos, cada cuánto tiempo se planifican los
| procesos de puntos muertos locales.

| PVT especifica el límite superior de almacenamiento privado que se utiliza para


| bloqueos. Este valor puede especificarse en megabytes o gigabytes indicando M
| (para megabytes) o G (para gigabytes) tras el valor, como sigue nnnnM o nnnnG.
| -RESET INDOUBT DDF (DB2)
| Cuando se ejecuta el mandato RESET INDOUBT, deben especificarse direcciones
| IP y puertos con dos puntos (..) en vez del signo de dos puntos (:). Si se
| especifica el atributo IPADDR, ahora deberá especificar también una dirección IP
| y un puerto.
| -START DATABASE (DB2)
| En la Versión 9.1 se puede utilizar el mandato START DATABASE en los objetos
| siguientes:
| v Bases de datos
| v Espacios de tablas
| v Espacios de índices
| v Particiones físicas de espacios de tablas particionados o de espacios de índices
| (incluyendo espacios de índices que contienen índices secundarios de datos
| particionados)
| v Particiones lógicas de índices secundarios no particionados
| -START DB2 (DB2)
| Opciones nuevas y modificadas:
| LIGHT(YES)
| LIGHT(NOINDOUBTS)

| LIGHT(YES) especifica que ha de realizarse un reinicio ligero. DB2 se inicia con


| almacenamiento reducido y termina normalmente tras liberar los bloqueos
| retenidos. Ahora DB2 espera a que se determinen las unidades de recuperación
| dudosas antes de terminar.

| LIGHT(NOINDOUBTS) especifica que DB2, durante un reinicio ligero, no espere


| a que se determinen las unidades de recuperación dudosas antes de terminar.
| -START PROCEDURE (DB2)
| En la Versión 9.1, el mandato START PROCEDURE afecta de nuevas formas a
| los procedimientos de SQL nativos. El mandato START PROCEDURE afecta a la
| versión actual de los procedimientos de SQL nativos que se especifican en el
| mandato.

44 Novedades
| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| START irlmproc (z/OS IRLM)
| Opciones nuevas y modificadas:
| LTE=nnnn
| MAXCSA=
| PC=

| LTE especifica el número de entradas de la tabla de bloqueos necesarios en la


| estructura de bloqueos de recursos asociada.

| MAXCSA es un parámetro posicional obligatorio pero actualmente no se utiliza.

| PC es un parámetro posicional obligatorio pero actualmente no se utiliza.

| MAXCSA y PC actualmente no se utilizan porque IRLM Versión 2 Release 2


| coloca bloqueos solamente en almacenamiento privado.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 45


| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -START TRACE (DB2)
| Opciones nuevas:
| ROLE
| XPLAN
| XPKGLOC
| XPKGCOL
| XPKGPROG
| XAUTHID
| XLOC
| XUSERID
| XAPPNAME
| XWRKSTN
| XCONNID
| XCORRID
| XROLE
|
| La opción ROLE especifica los roles de conexión.
| La opción XPLAN proporciona filtros de exclusión para el nombre
| del plan.
| La opción XPKGLOC proporciona filtros de exclusión para el
| nombre de la ubicación del paquete.
| La opción XPKGCOL proporciona filtros de exclusión para el ID de
| la colección de paquetes.
| La opción XPKGPROG proporciona filtros de exclusión para el
| nombre del programa de paquetes.
| La opción XAUTHID proporciona filtros de exclusión para el ID de
| autorización.
| La opción XLOC proporciona filtros de exclusión para la ubicación.
| La opción XUSERID proporciona filtros de exclusión para el ID de
| usuario.
| La opción XAPPNAME proporciona filtros de exclusión IFC para el
| nombre de aplicación o de transacción.
| La opción XWRKSTN proporciona filtros de exclusión IFC para el
| nombre de estación de trabajo.
| La opción XCONNID proporciona filtros de exclusión para el ID de
| conexión.
| La opción XCORRID proporciona filtros de exclusión para el ID de
| correlación.
| La opción XROLE proporciona filtros de exclusión para los roles de
| conexión.

| El mandato START TRACE ahora permite especificar direcciones IP en


| LOCATION KEYWORD y acepta el formato hexadecimal con dos puntos para
| las direcciones IP.
| -STOP PROCEDURE (DB2)
| En la Versión 9.1, el mandato STOP PROCEDURE afecta de nuevas formas a los
| procedimientos de SQL nativos. El mandato STOP PROCEDURE afecta a la
| versión actual de los procedimientos de SQL nativos que se especifican en el
| mandato.

46 Novedades
| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -STOP TRACE (DB2)
| Opciones nuevas:
| ROLE
| XPLAN
| XPKGLOC
| XPKGCOL
| XPKGPROG
| XAUTHID
| XLOC
| XUSERID
| XAPPNAME
| XWRKSTN
| XCONNID
| XCORRID
| XROLE
|
| La opción ROLE especifica los roles de conexión.
| La opción XPLAN proporciona filtros de exclusión para el nombre
| del plan.
| La opción XPKGLOC proporciona filtros de exclusión para el
| nombre de la ubicación del paquete.
| La opción XPKGCOL proporciona filtros de exclusión para el ID de
| la colección de paquetes.
| La opción XPKGPROG proporciona filtros de exclusión para el
| nombre del programa de paquetes.
| La opción XAUTHID proporciona filtros de exclusión para el ID de
| autorización.
| La opción XLOC proporciona filtros de exclusión para la ubicación.
| La opción XUSERID proporciona filtros de exclusión para el ID de
| usuario.
| La opción XAPPNAME proporciona filtros de exclusión IFC para el
| nombre de aplicación o de transacción.
| La opción XWRKSTN proporciona filtros de exclusión IFC para el
| nombre de estación de trabajo.
| La opción XCONNID proporciona filtros de exclusión para el ID de
| conexión.
| La opción XCORRID proporciona filtros de exclusión para el ID de
| correlación.
| La opción XROLE proporciona filtros de exclusión para los roles de
| conexión.

| El mandato STOP TRACE ahora permite especificar direcciones IP en


| LOCATION KEYWORD y acepta el formato hexadecimal con dos puntos para
| las direcciones IP.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 47


| Tabla 2. Cambios en los mandatos existentes (continuación)
| Mandato Descripción de mejoras y notas
| -STOP DATABASE (DB2)
| En la Versión 9.1 se puede utilizar el mandato STOP DATABASE en los objetos
| siguientes:
| v Bases de datos
| v Espacios de tablas
| v Espacios de índices
| v Particiones físicas de espacios de tablas particionados o de espacios de índices
| (incluyendo espacios de índices que contienen índices secundarios de datos
| particionados)
| v Particiones lógicas de índices secundarios no particionados
|
|
| Cambios en los programas de utilidad
| Esta información resume los cambios efectuados en los programas de utilidad de la
| Versión 9.1 de DB2 for z/OS. Los temas siguientes proporcionan información
| adicional.

| Programas de utilidad nuevos


| La versión 9.1 no contiene programas de utilidad nuevos.

| Cambios en los programas de utilidad


| La versión 9.1 incluye programas de utilidad modificados.

| En la tabla siguiente se enumeran y describen las opciones nuevas y modificadas


| de muchos de los programas de utilidad de DB2 for z/OS existentes.
| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| BACKUP SYSTEM
| Opción nueva:
| DUMP, DUMPONLY, DUMPCLASS, FORCE, TOKEN, ESTABLISH
| FCINCREMENTAL y END FCINCREMENTAL

| Se han añadido DUMP, DUMPONLY, DUMPCLASS, FORCE y TOKEN para dar


| soporte a copias de replicación rápidas de la agrupación de copia de la base de datos
| o de la agrupación de copia del registro.

| Se han añadido ESTABLISH FCINCREMENTAL y END FCINCREMENTAL para


| especificar que se va a establecer una relación FlashCopy persistente o última
| incremental.
| CATMAINT
| Opción nueva:
| SCHEMA SWITCH, OWNER FROM y VCAT SWITCH

| SCHEMA SWITCH actualiza el nombre del propietario, creador o esquema, OWNER


| FROM cambiando la propiedad de los objetos de un usuario a un rol, y VCAT
| SWITCH cambia el nombre de catálogo utilizado por los grupos de almacenamiento,
| índices de usuario y espacios de tabla.

48 Novedades
| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| CHECK DATA
| Opción nueva:
| CLONE, LOBERROR y XMLERROR
| Opción modificada:
| SHRLEVEL REFERENCE, SHRLEVEL CHANGE, PUNCHDDN,
| DRAIN_WAIT, RETRY y RETRY_DELAY

| Se ha añadido CLONE para dar soporte a la comprobación de tablas de clones.

| Se han añadido LOBERROR y XMLERROR para especificar qué acción hay que
| llevar a cabo si se produce un error LOB XML.

| Se han añadido SHRLEVEL REFERENCE y SHRLEVEL CHANGE para dar soporte a


| los espacios de tablas LOB.

| Se ha añadido PUNCHDDN para especificar una sentencia DD para un conjunto de


| datos.

| Se han añadido DRAIN_WAIT, RETRY y RETRY_DELAY para mejorar la


| disponibilidad.
| CHECK INDEX
| Opción nueva:
| CLONE

| Se ha añadido CLONE para verificar únicamente los índices especificados que están
| en tablas de clones.
| CHECK LOB
| Opción nueva:
| CLONE
| Opción modificada:
| SHRLEVEL REFERENCE, SHRLEVEL CHANGE, PUNCHDDN,
| DRAIN_WAIT, RETRY y RETRY_DELAY

| Se ha añadido CLONE para verificar el espacio de tablas LOB únicamente para la


| tabla de clones, no para los datos LOB de la tabla base.

| Se han añadido SHRLEVEL REFERENCE y SHRLEVEL CHANGE para dar soporte a


| los espacios de tablas LOB.

| Se ha añadido PUNCHDDN para especificar una sentencia DD para un conjunto de


| datos.

| Se han añadido DRAIN_WAIT, RETRY y RETRY_DELAY para mejorar la


| disponibilidad.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 49


| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| COPY
| Opción nueva:
| CLONE, SCOPE ALL y SCOPE PENDING
| Opción modificada:
| CHANGELIMIT

| Se ha añadido CLONE para copiar solamente datos de clones en un espacio de


| tablas o espacio de índices determinado.

| SCOPE ALL copia todos los objetos especificados y SCOPE PENDING permite
| copiar solamente objetos en estado pendiente de COPY o en estado pendiente de
| COPY informativo.

| Se ha añadido CHANGELIMIT ANY para hacer una copia de imagen completa si se


| ha modificado alguna página desde la última copia de imagen.
| COPYTOCOPY
| Opción nueva:
| CLONE

| Se ha añadido CLONE para poder procesar únicamente los conjuntos de datos de la


| copia de imagen que se hicieron a partir de tablas de clones o índices en tablas de
| clones.
| DIAGNOSE
| Opción nueva:
| CLONE

| Se ha añadido CLONE para poder mostrar información únicamente de los objetos


| especificados que son tablas de clones, espacios de tablas que contienen tablas de
| clones, índices en tablas de clones o espacios de índices que contienen tablas de
| clones.
| LISTDEF
| Opción nueva:
| CLONED y XML

| CLONED indica que la expresión INCLUDE o EXCLUDE ha de devolver


| únicamente los nombres de las tablas de clones, espacios de tablas que contienen
| tablas de clones, índices en tablas de clones o espacios de índices que contienen
| índices en tablas de clones.

| Se ha añadido XML para especificar que en este elemento de la lista únicamente


| deben incluirse objetos XML.
| LOAD
| Opciones nuevas:
| BIGINT, BINARY, VARBINARY, DECFLOAT_ROUNDMODE y DECFLOAT

| Se han añadido los tipos de datos BIGINT, BINARY y VARBINARY para especificar
| una serie binaria en una columna.

| Se ha añadido DECFLOAT_ROUNDMODE para permitir varias modalidades de


| redondeo.

| Se ha añadido DECFLOAT para permitir el tipo de datos coma flotante decimal.


| MERGECOPY
| Opción nueva:
| CLONE

| Se ha añadido CLONE para poder procesar únicamente los conjuntos de datos de la


| copia de imagen que se hicieron a partir de objetos de tipo clon.

50 Novedades
| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| MODIFY RECOVERY
| Opción nueva:
| CLONE, LAST (entero) y LOGLIMIT

| Se ha añadido CLONE para poder suprimir registros SYSCOPY y los registros


| SYSLGRNX relacionados únicamente para objetos de tipo clon.

| Se ha añadido LAST (entero) para especificar el número de registros recientes que


| han de conservarse en SYSIBM.SYSCOPY.

| Se ha añadido LOGLIMIT para determinar la indicación de fecha y hora más antigua


| del registro de archivado.
| QUIESCE
| Opción nueva:
| CLONE

| Se ha añadido CLONE para poder crear un punto de inmovilización únicamente


| para los espacios de tablas especificados que contienen tablas de clones.
| REBUILD INDEX
| Opción nueva:
| CLONE y SHRLEVEL CHANGE

| Se ha añadido CLONE para poder volver a crear únicamente los índices


| especificados que están en tablas de clones.

| Se ha añadido SHRLEVEL CHANGE para permitir que la aplicación lea y grabe en


| el índice, espacio de tablas o partición que se va a verificar.
| RECOVER
| Opción nueva:
| CLONE, RESTOREBEFORE X’serie-de-bytes’, CURRENTCOPYONLY,
| FROMDUMP y DUMPCLASS

| Se ha añadido CLONE para poder recuperar únicamente datos de tablas de clones


| de los espacios de tablas especificados o de los espacios de índices especificados que
| contienen índices o tablas de clones.

| Se ha añadido RESTOREBEFORE para recuperar una copia de imagen con un valor


| RBA o LRSN previo al valor X’serie-de-bytes’ especificado para utilizarlo en la fase
| RESTORE.

| Se ha añadido CURRENTCOPYONLY para especificar que para la restauración se va


| a utilizar la copia primaria.

| Se han añadido FROMDUMP y DUMPCLASS para dar soporte a copias de


| replicación rápidas de la agrupación de copia de la base de datos o de la agrupación
| de copia del registro.
| REORG INDEX
| Opción nueva:
| CLONE

| Se ha añadido CLONE para poder reorganizar únicamente los espacios de índices


| especificados que contienen índices en tablas de clones.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 51


| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| REORG TABLESPACE
| Opción nueva:
| CLONE
| Opciones modificadas:
| SHRLEVEL REFERENCE

| Se ha añadido CLONE para poder reorganizar únicamente tablas de clones a partir


| de los espacios de tablas especificados.

| Se ha actualizado SHRLEVEL REFERENCE para dar soporte a los espacios de tablas


| LOB.

| Se ha modificado REORG para reducir la cantidad de almacenamiento virtual que


| utiliza para crear diccionarios de compresión.
| REPAIR
| Opciones nuevas:
| CLONE, VERSIONS, INDEXSPACE, NOAREORENDSTAR
| Opciones modificadas:
| DBD REBUILD

| Se ha añadido CLONE para poder procesar únicamente los espacios de tablas


| especificados que contienen tablas de clones.

| La opción VERSIONS actualiza la información acerca de la versión del espacio de


| tabla especificado o índice del catálogo y directorio. Utilice esta opción para mover
| objetos de un sistema a otro o como parte de la gestión de los números de versiones.

| La opción INDEXSPACE permite identificar el índice especificando el nombre


| calificado del espacio de índices, que puede obtenerse de la tabla
| SYSIBM.SYSINDEXES.

| Puede utilizar la opción NOAREOPENDSTAR para restablecer el estado informativo


| pendiente de REORG (AREO*) del espacio de tablas o índice especificado.

| Ya no es necesario iniciar una base de datos para que los programas de utilidad
| accedan a ella únicamente antes de que REPAIR DBD REBUILD pueda ejecutarse.
| Ahora DB2 realiza este paso por nosotros.
| REPORT
| Opciones nuevas:
| SHOWDSNS

| Se ha añadido SHOWDSNS para incluir nombres de conjuntos de datos VSAM en el


| informe TABLESPACESET.
| RESTORE SYSTEM
| Opciones nuevas:
| FROMDUMP, DUMPCLASS, TAPEUNITS y RSA

| Se han añadido FROMDUMP y DUMPONLY para dar soporte a copias de


| replicación rápidas de la agrupación de copia de la base de datos o de la agrupación
| de copia del registro.

| Se ha añadido TAPEUNITS para limitar el número de unidades de cintas que el


| programa de utilidad debe asignar dinámicamente.

| Se ha añadido RSA para especificar una etiqueta clave en la sentencia de control del
| programa de utilidad.

52 Novedades
| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| RUNSTATS
| Opciones nuevas:
| HISTOGRAM y NUMQUANTILES
| Opciones modificadas:
| INDEX LIST

| Se han añadido HISTOGRAM y NUMQUANTILES para recopilar estadísticas de


| histogramas a partir de columnas.

| Se ha añadido soporte para las palabras clave de especificación de estadísticas de


| correlación, cuando se especifican con las palabras clave RUNSTATS INDEX LIST.
| TEMPLATE
| Opciones nuevas:
| LIMIT

| Se ha añadido LIMIT para permitir la conmutación de plantillas.


| UNLOAD
| Opciones nuevas:
| CLONE, BIGINT, BINARY, VARBINARY, SKIP LOCKED DATA,
| DECFLOAT_ROUNDMODE, DECFLOAT y XML
| Opciones modificadas:
| INTEGER EXTERNAL

| Se ha añadido CLONE para poder descargar datos únicamente de tablas de clones


| de los espacios de tabla especificados.

| Se han añadido los tipos de datos BIGINT, BINARY y VARBINARY para especificar
| una serie binaria en una columna.

| Se ha añadido SKIP LOCKED DATA para pasar por alto las filas en que otras
| transacciones mantienen bloqueos incompatibles.

| Se ha añadido DECFLOAT_ROUNDMODE para permitir varias modalidades de


| redondeo.

| Se ha añadido DECFLOAT para permitir el tipo de datos coma flotante decimal.

| Se ha añadido XML para especificar que una columna XML se va a descargar


| directamente en el registro de salida.

| Para INTEGER EXTERNAL, los valores ″mayor que″ y ″menor que″ de los datos
| originales se han cambiado para que tengan un rango mayor.
| DSNJU003 (inventario del
|| registro de cambios) Opciones nuevas:
| IPV4, IPV6, GRPIPV4, GRPIPV6, NOIPV4, NOIPV6, NGRPIPV4, NGRPIPV6

| Se han añadido IPV4, IPV6, GRPIPV4 y GRPIPV6 a la sentencia DDF para identificar
| una dirección IP.
| Opciones modificadas:
| SYSPITR

| Se ha añadido el valor FFFFFFFFFFFF para que se produzca la restauración del


| sistema en un instante específico sin corte de registro.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 53


| Tabla 3. Opciones nuevas y modificadas de los programas de utilidad (continuación)
| Nombre del programa de Descripción de mejoras y notas
| utilidad
| DSNJU004 (imprimir
|| correlación del registro) Opciones nuevas:
| IPV4, IPV6, GRPIPV4, GRPIPV6,

| Se han añadido IPV4, IPV6, GRPIPV4 y GRPIPV6 a la salida del registro de


| impresión.
|

| Otros cambios en los programas de utilidad


| La versión 9.1 incluye cambios generales en los programas de utilidad.

| Estos otros cambios en los programas de utilidad en la Versión 9.1 son:


| v Los siguientes programas de utilidad pueden utilizarse para interactuar con los
| nuevos espacios de tablas de partición por crecimiento: COPY, LOAD, REBUILD
| INDEX, RECOVER, REORG TABLESPACE y DSN1COPY.
| v Los datos XML ahora pueden cargarse o descargarse.
| v Puede utilizar el programa de utilidad RUNSTATS para explorar un índice de
| una expresión.
| v No se puede ejecutar REORG TABLESPACE SHRLEVEL CHANGE PART
| entero simultáneamente en el mismo espacio de tablas. En vez de enviar varios
| trabajos, pueden fusionarse en un único trabajo y especificar un intervalo
| mediante REORG TABLESPACE SHRLEVEL CHANGE PART entero1:entero2 o
| bien se puede especificar REORG TABLESPACE SHRLEVEL CHANGE SCOPE
| PENDING si varias particiones están en estado pendiente de REORG.
|
| Cambios en las sentencias de SQL
| La Versión 9.1 de DB2 for z/OS ofrece sentencias de SQL nuevas y modificadas.

| Para obtener información detallada sobre todos los cambios, como por ejemplo la
| sintaxis de las sentencias de SQL nuevas o modificadas, descripciones completas de
| las palabras clave y ejemplos de uso, consulte DB2 SQL Reference.

| Los temas siguientes proporcionan información adicional.

| Sentencias de SQL nuevas


| En la tabla siguiente se muestran las sentencias de SQL nuevas de la Versión 9.1.
| Tabla 4. Sentencias de SQL nuevas
| Sentencia de SQL Descripción
| ALTER PROCEDURE (SQL - nativa) Cambia la descripción o define versiones adicionales de un procedimiento de
| SQL nativo
| ALTER TRUSTED CONTEXT Cambia la descripción de un contexto acreditado
| CREATE PROCEDURE (SQL - nativa) Define un procedimiento de SQL nativo
| CREATE ROLE Define un rol
| CREATE TRUSTED CONTEXT Define un contexto acreditado
| EXCHANGE Intercambia los datos entre una tabla base y la tabla de clones asociada
| MERGE Actualiza o inserta una o varias filas de una tabla

54 Novedades
| Tabla 4. Sentencias de SQL nuevas (continuación)
| Sentencia de SQL Descripción
| RENAME Renombra una tabla o índice existentes
| SET CURRENT DEBUG MODE Asigna un valor al registro especial CURRENT DEBUG MODE
| SET CURRENT DECFLOAT Asigna un valor al registro especial CURRENT DECFLOAT ROUNDING
| ROUNDING MODE MODE
| SET CURRENT ROUTINE VERSION Asigna un valor al registro especial CURRENT ROUTINE VERSION
| TRUNCATE Suprime todas las filas de una tabla
|

| Sentencias de SQL modificadas


| Como se puede ver en la tabla siguiente, muchas sentencias de SQL existentes
| tienen cláusulas nuevas y modificadas.
| Tabla 5. Cambios en las sentencias de SQL existentes
| Sentencia de SQL Descripción de mejoras y notas
| ALTER FUNCTION (externa)
| Cláusulas nuevas:
| NO PACKAGE PATH o PACKAGE PATH vía-acceso-paquete
| ALTER INDEX
| Cláusulas nuevas:

| REGENERATE
|
| ALTER PROCEDURE (externa)
| Cláusulas nuevas:
| NO PACKAGE PATH o PACKAGE PATH vía-acceso-paquete
| ALTER STOGROUP
| Cláusulas nuevas:

| DATACLAS nombre-cd
| MGMTCLAS nombre-cm
| STORCLAS nombre-cs
|
| ALTER TABLE
| Cláusulas nuevas:

| FOR EACH ROW ON UPDATE AS ROW CHANGE TIMESTAMP


| HIDDEN
| ADD CLONE
| DROP CLONE
| APPEND NO o APPEND YES
| RENAME COLUMN nombre-columna-origen TO nombre-columna-destino
| Cláusulas modificadas:

| SESSION USER o USER


|
| ALTER TABLESPACE
| Cláusulas nuevas:

| LOGGED o NOT LOGGED


| MAXPARTITIONS entero
| SEGSIZE entero
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 55


| Tabla 5. Cambios en las sentencias de SQL existentes (continuación)
| Sentencia de SQL Descripción de mejoras y notas
| COMMENT
| Cláusulas nuevas:
| ACTIVE VERSION o VERSION id-versión-rutina
| ROLE
| TRUSTED CONTEXT nombre-contexto
|
| CREATE DATABASE
| Cláusulas nuevas:
| AS WORKFILE
| ROLE
| TRUSTED CONTEXT nombre-contexto
|
| CREATE FUNCTION (escalar
|| externo)
Cláusulas nuevas:

| NO PACKAGE PATH o PACKAGE PATH vía-acceso-paquete


|
| CREATE FUNCTION (tabla
|| externa)
Cláusulas nuevas:

| NO PACKAGE PATH o PACKAGE PATH vía-acceso-paquete


|
| CREATE INDEX
| Cláusulas nuevas:
| RANDOM
| expresión-clave
| GENERATE KEY USING XMLPATTERN
| prolog
| expresión-patrón
| AS SQL tipo-datos
|
| CREATE PROCEDURE
|| (externa)
Cláusulas nuevas:
| ALLOW DEBUG MODE, DISALLOW DEBUG MODE
| o DISABLE DEBUG MODE
| NO PACKAGE PATH o PACKAGE PATH vía-acceso-paquete
|
| CREATE STOGROUP
| Cláusulas nuevas:
| DATACLAS nombre-cd
| MGMTCLAS nombre-cm
| STORCLAS nombre-cs
|

56 Novedades
| Tabla 5. Cambios en las sentencias de SQL existentes (continuación)
| Sentencia de SQL Descripción de mejoras y notas
| CREATE TABLE
| Cláusulas nuevas:
| FOR EACH ROW ON UPDATE AS ROW CHANGE TIMESTAMP
| HIDDEN
| PARTITION BY SIZE
| APPEND NO o APPEND YES
| Cláusulas modificadas:
| SESSION_USER o USER

| Si no se especifica un nombre de base de datos o un nombre de espacio de tablas


| para la sentencia CREATE TABLE, y DB2 está en modalidad de conversión, DB2
| creará un espacio de tablas segmentado con un SEGSIZE de 4 y LOCKSIZE ROW. Si
| DB2 está en modalidad de función nueva y no se especifica un nombre de base de
| datos o un nombre de espacio de tablas, DB2 creará implícitamente una base de
| datos o un espacio de tablas.
| CREATE TABLESPACE
| Cláusulas nuevas:
| LOGGED o NOT LOGGED
| MAXPARTITIONS entero

| Si no se especifican las cláusulas SEGSIZE, NUMPARTS o MAXNUMPARTS, se crea


| un espacio de tablas segmentado con un SEGSIZE predeterminado de 4. Si no se
| especifica el nombre de una base de datos, se crea un espacio de tablas segmentado
| con un SEGSIZE de 4 en la base de datos predeterminada, DSNDB04.
| CREATE TRIGGER
| Cláusulas nuevas:
| INSTEAD OF
| ON nombre-vista
|
| DECLARE GLOBAL
|| TEMPORARY TABLE
Cláusulas nuevas:
| SESSION_USER o USER
|
| DELETE
| Cláusulas nuevas:

| columna-include
| SKIP LOCKED DATA
|
| DROP
| Cláusulas nuevas:
| ROLE
| TRUSTED CONTEXT nombre-contexto
|
| EXECUTE
| Cláusulas nuevas:
| datos-fila-origen
|
| EXPLAIN
| Cláusulas nuevas:
| v STMTS MONITORED
| v STMTS ALL
| v STMTS SCOPE
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 57


| Tabla 5. Cambios en las sentencias de SQL existentes (continuación)
| Sentencia de SQL Descripción de mejoras y notas
| FETCH
| Cláusulas nuevas:
| WITH CONTINUE
| CONTINUE
|
| GET DIAGNOSTICS
| Cláusulas nuevas:
| DB2_LINE_NUMBER
|
| GRANT
| Cláusulas nuevas:
| ROLE nombre-rol
| DEBUGSESSION
|
| INSERT
| Cláusulas nuevas:
| columna-include
|
| PREPARE
| Cláusulas nuevas:
| SKIP LOCKED DATA
|
| RENAME
| Cláusulas nuevas:
| INDEX
|
| REVOKE
| Cláusulas nuevas:
| ROLE nombre-rol
| DEBUGSESSION
|
| SELECT INTO
| Cláusulas nuevas:
| SKIP LOCKED DATA
| SET PATH
| Cláusulas nuevas:
| SESSION_USER o USER
| SET SCHEMA
| Cláusulas nuevas:
| SESSION_USER o USER
| SET variable-transición
|| asignación Cláusulas nuevas:
| DEFAULT
| UPDATE
| Cláusulas nuevas:

| columna-include
| DEFAULT
| SKIP LOCKED DATA
|
|

| Funciones nuevas
| En la tabla siguiente se muestran las funciones incorporadas nuevas de la Versión
| 9.1, que mejoran la potencia del lenguaje SQL.

58 Novedades
| Tabla 6. Funciones nuevas
| Nombre de la función Descripción
| ADMIN_TASK_LIST Devuelve una tabla con una fila para cada una de las tareas definidas en la lista
| de tareas del Planificador administrativo
| ADMIN_TASK_STATUS Devuelve una tabla con una fila para cada tarea de la lista de tareas del
| Planificador administrativo que contiene el estado de la última vez que se
| ejecutó la tarea
| ASCII_CHR Devuelve el carácter que corresponde al valor del código ASCII especificado por
| el argumento
| ASCII_STR Devuelve la versión ASCII del carácter o argumento de la serie gráfica
| COLLATION_KEY Devuelve una serie que representa la clave de clasificación del argumento de la
| clasificación especificada
| COMPARE_DECFLOAT Devuelve un valor SMALLINT que indica si dos argumentos son iguales o sin
| ordenar, o si un argumento es mayor que el otro
| CORRELATION Devuelve el coeficiente de la correlación de un conjunto de pares de números
| COVARIANCE o Devuelve la covarianza (población) de un conjunto de pares de números
| COVARIANCE_SAMP
| DECFLOAT Devuelve una representación DECFLOAT de su argumento
| DECFLOAT_SORTKEY Devuelve un valor binario que puede utilizarse al ordenar valores DECFLOAT
| DECRYPT_BINARY Devuelve el valor descifrado de un argumento cifrado
| DIFFERENCE Devuelve un valor que representa la diferencia entre el sonido de dos series
| basado en la aplicación de la función SOUNDEX a las series
| EBCDIC_CHR Devuelve el carácter que corresponde al valor del código EBCDIC especificado
| por el argumento
| EBCDIC_STR Devuelve una versión EBCDIC del argumento de tipo serie
| EXTRACT Devuelve una parte de una fecha o una indicación de fecha y hora en función
| de sus argumentos
| GENERATE_UNIQUE Devuelve una serie de caracteres de datos de bits que es exclusiva comparada
| con cualquier otra ejecución de la función
| GETVARIABLE Devuelve una serie de caracteres de longitud variable que es una representación
| del valor de una variable de sesión
| LEFT Devuelve una serie que consta del número de bytes de la izquierda especificado
| o de las unidades de longitud de una serie especificadas
| LOCATE_IN_STRING Devuelve la posición en que aparece por primera vez un argumento en una
| serie específica
| LPAD Devuelve una serie rellenada a la izquierda con blancos o una serie determinada
| NORMALIZE_DECFLOAT Devuelve un valor DECFLOAT que es el resultado de normalizar el argumento
| de entrada
| NORMALIZE_STRING Devuelve un valor de tipo serie que es el resultado de normalizar el valor
| Unicode de entrada
| OVERLAY Devuelve una serie formada por un argumento insertado en otro argumento en
| la misma posición en que se ha suprimido cierto número de bytes
| QUANTIZE Devuelve un valor DECFLOAT que es igual en valor (excepto por el redondeo)
| y signo a un argumento y cuyo exponente se ha establecido para que sea igual
| que el exponente del segundo argumento
| RID Devuelve el RID de una fila
| RIGHT Devuelve una serie que consta del número de bytes de la derecha especificado o
| de las unidades de código de una serie especificadas

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 59


| Tabla 6. Funciones nuevas (continuación)
| Nombre de la función Descripción
| RPAD Devuelve una serie rellenada a la derecha con blancos o una serie determinada
| SOUNDEX Devuelve un valor que representa el sonido de las palabras del argumento
| TIMESTAMPADD Devuelve una indicación de fecha y hora obtenida sumando el intervalo
| especificado a una indicación de fecha y hora
| TIMESTAMP_ISO Devuelve una indicación de fecha y hora a partir de sus argumentos
| TOTALORDER Devuelve un valor SMALLINT que indica el orden de comparación de dos
| argumentos
| UNICODE Devuelve el valor del código Unicode (UTF-16) del carácter de más a la
| izquierda del argumento como un entero
| UNICODE_STR Devuelve una serie en Unicode (UTF-8 o UTF-16) que representa una
| codificación Unicode del argumento
| VARCHAR_FORMAT Devuelve una serie de caracteres de longitud variable que es una representación
| de una indicación de fecha y hora con la serie en un formato dado
| XMLATTRIBUTES Devuelve una secuencia de XML que contiene el nodo de un atributo XQuery
| para cada argumento no nulo
| XMLCOMMENT Devuelve un valor XML con un solo nodo de comentarios a partir de una
| expresión de tipo serie
| XMLDOCUMENT Devuelve un valor XML con un solo nodo de documento y cero o más nodos
| como sus hijos
| XMLPARSE Devuelve un valor XML a partir del análisis del argumento como documento
| XML
| XMLPI Devuelve un valor XML con un solo nodo de instrucción del procesamiento
| XMLQUERY Devuelve un valor XML a partir de la evaluación de la expresión XPath con un
| conjunto de argumentos
| XMLSERIALIZE Devuelve una serie de caracteres SQL o un valor BLOB a partir de un valor
| XML
| XMLTEXT Devuelve un valor XML con un solo nodo de texto que contiene el valor del
| argumento
|

| Palabras reservadas
| Algunas palabras no se pueden usar como identificadoes normales en algunos
| contextos, porque estas palabras se pueden interpretar como palabras claves de
| SQL. Por ejemplo, ALL no puede ser un nombre de columna en una sentencia
| SELECT. No obstante, cada palabra se puede utilizar como identificador
| delimitador en contextos donde no se puede utilizar como identificador normal.
| Por ejemplo, si las comillas (″) son un carácter de escape que empieza y finaliza
| identificadores delimitados, “ALL” puede aparecer como nombre de columna en
| una sentencia SELECT.

| Mediante notas en cada sección de este tema, se identifican nuevas palabras


| reservadas para esta versión de DB2 for z/OS. Además, algunos temas de esta
| sección pueden indicar palabras que no se pueden usar en un contexto específico
| que se describe.

| IBM SQL tiene palabras reservadas adicionales que DB2 for z/OS no cumple. Por
| lo tanto, no debería usar estas palabras reservadas adicionales como identificadores
| normales en nombres que se usan continuamente. Consulte IBM DB2 SQL Reference
| for Cross-Platform Development para obtener una lista de palabras.

60 Novedades
| A
|
| ADD ALTER ASSOCIATE
| AFTER AND ASUTIMEAT1
| ALLALLOCATE ANYAS AUDITAUX
| ALLOW ASENSITIVE AUXILIARY
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| B
||
| BEFORE
| BEGIN
| BETWEENBUFFERPOOL
| BY
|
| C
|
| CALL CLUSTER CONTAINS
| CAPTURE COLLECTION CONTENT
| CASCADED COLLID COLUMN CONTINUECREATE
| CASE COMMENTCOMMIT CURRENT
| CAST CONCAT CURRENT_DATE
| CCSIDCHARCHARACTER CONDITIONCONNECT CURRENT_LC_CTYPE
| CHECK CONNECTION CURRENT_PATH
| CLONE1 CONSTRAINT CURRENT_SCHEMA1
| CLOSE CURRENT_TIME
| CURRENT_TIMESTAMP
| CURSOR
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| D
|
| DATADATABASE DELETEDESCRIPTOR DO
| DAY DETERMINISTIC DOCUMENT1
| DAYS DISABLEDISALLOW DOUBLEDROPDSSIZE
| DBINFO DISTINCT DYNAMIC
| DECLARE
| DEFAULT
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| E
|
| EDITPROC ENDINGEND-EXEC1 EXECUTEEXISTS
| ELSE ERASE EXIT
| ELSEIF ESCAPE EXPLAIN
| ENCODING EXCEPTEXCEPTION EXTERNAL
| ENCRYPTIONEND
| Nota: Solo COBOL
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 61


| F

||
| FENCED FREE
| FETCHFIELDPROC FROM
| FINAL FULL
| FOR FUNCTION
|
| G
||
| GENERATED GRANTGROUP
| GET
| GLOBAL
| GO
| GOTO
|
| H

||
| HANDLER
| HAVING
| HOLD
| HOUR
| HOURS
|
| I
|
| IF INF1 INSERTINTERSECT1
| IMMEDIATE INFINITY1 INTO
| IN INHERIT IS
| INCLUSIVE INNER ISOBID
| INDEX INOUT ITERATE
| INSENSITIVE
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| J
||
| JARJOIN
|
| K
||
| KEEP1
| KEY
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|

62 Novedades
| L
|
| LABEL LIKELOCALLOCALE LOCK
| LANGUAGE LOCATOR LOCKMAX
| LC_CTYPE LOCATORS LOCKSIZELONG
| LEAVE LOOP
| LEFT
|
| M
||
| MAINTAINED MINUTES
| MATERIALIZED MODIFIES
| MICROSECOND MONTH
| MICROSECONDS MONTHS
| MINUTE
|
| N

||
| NAN1 NULLNULLSNUMPARTS
| NEXTVAL
| NONONENOT
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| O
||
| OBID OPTIMIZE
| OF OR
| ON ORDEROUT
| OPENOPTIMIZATION OUTER
|
| P
|
| PACKAGEPARAMETER PATHPIECESIZE PRIQTY
| PART PLAN PRIVILEGES
| PADDEDPARTITION PRECISION PROCEDURE
| PARTITIONED PREPAREPREVVAL PROGRAM
| PARTITIONING PSID
| PUBLIC1
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| Q
||
| QUERY
| QUERYNO
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 63


| R
|
| READSREFERENCES RESULT_SET_LOCATOR ROUND_DOWN1
| REFRESH RETURN ROUND_FLOOR1
| RESIGNAL RETURNS ROUND_HALF_DOWN1
1
| RELEASERENAMEREPEAT REVOKERIGHTROLE ROUND_HALF_EVEN1
| RESTRICT ROLLBACKROUND_CEILING1ROUND_HALF_UP1
| RESULT ROUND_UP1
| ROW1
| ROWSET
| RUN
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| S
|
| SAVEPOINT SET STOGROUP
| SCHEMASCRATCHPAD SIGNAL STORES
| SECOND SIMPLE STYLESUMMARYSYNONYM
| SECONDS SNAN1 SYSFUN
| SECQTY SOME SYSIBMSYSPROC
| SECURITY SOURCE SYSTEM
| SEQUENCE SPECIFIC
1
| SELECTSENSITIVESESSION_USER
STANDARD
| STATIC
| STATEMENT1
| STAY
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| T
||
| TABLETABLESPACE THEN TRUNCATE1
| TO TYPE1
| TRIGGER
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| U
||
| UNDO USERUSING
| UNIONUNIQUE
| UNTIL
| UPDATE
|
| V

||
| VALIDPROC VCAT
| VALUEVALUES VIEW
| VARIABLE VOLATILE
| VARIANT VOLUMES
|

64 Novedades
| W

||
| WHEN
| WHENEVER
| WHERE
| WHILE
| WITH
| WLM
|
| X
||
| XMLELEMENT
| XMLEXISTS1
| XMLNAMESPACES1
| XMLCAST1
| Nota: 1. Nuevas palabras reservadas para la versión 9.1.
|
| S

||
| YEAR
| YEARS
|

| Otros cambios en el lenguaje SQL


| Además de las muchas sentencias y funcionas de SQL nuevas, la Versión 9.1 ofrece
| otras mejoras al lenguaje SQL, como se puede ver en la tabla siguiente.
| Tabla 7. Otros cambios en el lenguaje SQL
| Elemento Descripción
| Expresiones La expresión ROW CHANGE y las especificaciones OLAP se ofrecen como
| expresiones nuevas. Una expresión ROW CHANGE devuelve una señal o una
| indicación de fecha y hora que representa el último cambio realizado en una
| fila. Las especificaciones OLAP (RANK, DENSE_RANK y ROW_NUMBER)
| permiten devolver información de clasificación y numeración de filas como un
| valor escalar en el resultado de una consulta. A RANK, DENSE_RANK y
| ROW_NUMBER a veces se les denomina funciones de ventana.
| Funciones Las funciones siguientes ahora permiten series fuente cuyo tipo de datos sea
| CHAR FOR BIT DATA, VARCHAR FOR BIT DATA o CLOB FOR BIT DATA:
| v CHAR
| v INSERT
| v LEFT
| v LOCATE
| v RIGHT
| v SUBSTRING
| v VARCHAR
| Predicados Se proporciona XMLEXISTS como nuevo predicado. XMLEXISTS evalúa una
| expresión XPath y devuelve un valor verdadero o falso.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 65


| Tabla 7. Otros cambios en el lenguaje SQL (continuación)
| Elemento Descripción
| Registros especiales La Versión 9.1 de DB2 presenta varios registros especiales nuevos.

| CURRENT DEBUG MODE especifica el valor predeterminado para la opción


| DEBUG MODE de la sentencia CREATE PROCEDURE para un procedimiento
| de SQL nativo o un procedimiento de Java.

| CURRENT DECFLOAT ROUNDING MODE especifica la modalidad de


| redondeo predeterminada que se utilizará para los valores DECFLOAT.

| CURRENT ROUTINE VERSION especifica el identificador de versión que se va


| a utilizar para invocar una rutina de SQL nativa.

| El registro especial ENCRYPTION PASSWORD especifica la contraseña de


| cifrado y la pista para recordar la contraseña (si la hay) utilizadas por las
| funciones incorporadas ENCRYPTION y DECRYPTION.

| El registro especial SESSION_USER sustituye al registro especial USER (USER


| puede especificarse como sinónimo de SESSION_USER).
| Variables de sesión De forma parecida a los registros especiales, las variables de sesión son otra
| forma de proporcionar información a las aplicaciones. La Versión 9.1 soporta
| muchas variables de sesión definidas para DB2 nuevas que almacenan
| información a la se puede hacer referencia desde sentencias de SQL. La función
| incorporada GETVARIABLE puede utilizarse para recuperar los valores de
| variables de sesión.

| Las nuevas variables de sesión definidas para DB2 son:


| v SYSIBM.APPLICATION_ENCODING_SCHEME
| v SYSIBM.COBOL_STRING_DELIMITER
| v SYSIBM.DATE_FORMAT
| v SYSIBM.DATE_LENGTH
| v SYSIBM.DECIMAL_ARITHMETIC
| v SYSIBM.DECIMAL_POINT
| v SYSIBM.DEFAULT_DECFLOAT_ROUND_MODE
| v SYSIBM.DEFAULT_DEFAULT_SSID
| v SYSIBM.DEFAULT_LANGUAGE
| v SYSIBM.DEFAULT_LOCALE_LC_CTYPE
| v SYSIBM.DISTRIBUTED_SQL_STRING_DELIMITER
| v SYSIBM.DSNHDECP_NAME
| v SYSIBM.DYNAMIC_RULES
| v SYSIBM.ENCODING_SCHEME
| v SYSIBM.MIXED_DATA
| v SYSIBM.NEWFUN
| v SYSIBM.PAD_NUL_TERMINATED
| v SYSIBM.SQL_STRING_DELIMITER
| v SYSIBM.SSID
| v SYSIBM.STANDARD_SQL
| v SYSIBM.TIME_FORMAT
| v SYSIBM.TIME_LENGTH
| Soporte para cambiar las columnas Aunque se sigue dando soporte a LONG VARCHAR y LONG VARGRAPHIC,
| existentes de LONG VARCHAR y debe definir las columnas como VARCHAR o VARGRAPHIC. Para ayudarle a
| LONG VARGRAPHIC a cambiar las columnas de las tablas existentes de LONG VARCHAR y LONG
| VARCHAR y VARGRAPHIC VARGRAPHIC a VARCHAR y VARGRAPHIC, se ha añadido soporte a ALTER
| TABLE para cambiar los tipos de datos de las columnas de LONG VARCHAR y
| LONG VARGRAPHIC a VARCHAR y VARGRAPHIC.
|

66 Novedades
|
| Cambios en los catálogos
| La Versión 9.1 de DB2 for z/OS incluye catálogos modificados y algunos catálogos
| e índices nuevos.

| Para ver una descripción completa de las columnas de las tablas de catálogo
| nuevas y modificadas, consulte DB2 SQL Reference. Si va a migrar a la Versión 9.1
| desde la versión 8, en la DB2 Installation Guide encontrará un resumen de cuándo
| se han hecho los cambios en los catálogos.

| Los temas siguientes proporcionan información adicional.

| Tablas de catálogo nuevas


| En la tabla siguiente se muestran las tablas de catálogo nuevas.
| Tabla 8. Tablas de catálogo nuevas
| Nombre de tabla de catálogo Descripción
| SYSIBM.SYSCONTEXT Contiene una fila por cada contexto acreditado.
| SYSIBM.SYSCONTEXTAUTHIDS Contiene una fila por cada ID de autorización con que
| puede utilizarse el contexto acreditado.
| SYSIBM.SYSCTXTTRUSTATTRS Contiene una fila por cada lista de atributos de un
| contexto acreditado concreto.
| SYSIBM.SYSDEPENDENCIES Registra las dependencias entre objetos.
| SYSIBM.SYSENVIRONMENT Registra las variables de entorno cuando se crea un
| objeto.
| SYSIBM.SYSINDEXSPACESTATS Contiene estadísticas en tiempo real de espacios de
| índices.
| SYSIBM.SYSJAVAPATHS Contiene la vía de acceso completa de resolución de
| clases JAR y registra las dependencias que un JAR
| tiene con los JAR de la vía de acceso de Java.
| SYSIBM.SYSKEYTARGETS Contiene una fila por cada objetivo clave que
| participa en una definición de índices ampliada.
| SYSIBM.SYSKEYTARGETSTATS Contiene estadísticas de partición para objetivos clave
| específicos. Para cada objetivo clave, existe una fila
| por cada partición de la tabla. Se insertan filas cuando
| RUNSTATS recopila estadísticas de claves indexadas o
| de claves no indexadas de un espacio de tablas
| particionado. No se insertan filas si el espacio de
| tablas es no particionado.
| SYSIBM.SYSKEYTARGETS_HIST Contiene filas de la tabla SYSKEYTARGETS. Siempre
| que se añaden o modifican filas en SYSKEYTARGETS,
| las filas también se graban en esta tabla.
| SYSIBM.SYSKEYTGTDIST Contiene una o varias filas para el primer objetivo
| clave de una clave de índice ampliada.
| SYSIBM.SYSKEYTGTDISTSTATS Contiene cero o más filas por partición para el primer
| objetivo clave de un índice secundario de datos
| particionados. Se insertan filas cuando RUNSTATS
| explora un índice secundario de datos particionados.
| No se insertan filas si el índice es un índice
| secundario.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 67


| Tabla 8. Tablas de catálogo nuevas (continuación)
| Nombre de tabla de catálogo Descripción
| SYSIBM.SYSKEYTGTDIST_HIST Contiene filas de la tabla SYSKEYTGTDIST. Siempre
| que se añaden o modifican filas en SYSKEYTGTDIST,
| las filas también se graban en esta tabla.
| SYSIBM.SYSOBJROLEDEP Enumera los objetos dependientes de cada rol.
| SYSIBM.SYSROLES Contiene una fila por cada rol.
| SYSIBM.SYSROUTINESTEXT Tabla auxiliar de la columna TEXT de
| SYSIBM.SYSROUTINES, necesaria para contener los
| datos LOB.
| SYSIBM.SYSTABLESPACESTATS Contiene estadísticas en tiempo real de espacios de
| tablas.
| SYSIBM.SYSXMLRELS Contiene una fila por cada tabla XML creada por una
| columna XML.
| SYSIBM.SYSXMLSTRINGS Cada fila contiene una sola serie y su ID exclusivo,
| que se utiliza para condensar datos XML. La serie
| puede ser el nombre de un elemento, el nombre de
| un atributo, el prefijo de un espacio de nombres o el
| URI de un espacio de nombres.
| SYSIBM.XSRCOMPONENT Tabla auxiliar de la columna BLOB COMPONENT de
| SYSIBM.SYSXSROBJECTCOMPONENTS. Está en el
| espacio de tablas LOB SYSXSRA3.
| SYSIBM.XSROBJECTS Contiene una fila por cada esquema XML registrado.
| Las filas de esta tabla sólo pueden modificarse
| mediante sentencias de SQL estáticas emitidas por los
| procedimientos almacenados XSR suministrados por
| DB2.
| SYSIBM.XSROBJECTCOMPONENTS Contiene una fila por cada componente (documento)
| de un esquema XML. Las filas de esta tabla sólo
| pueden modificarse mediante sentencias de SQL
| estáticas emitidas por los procedimientos almacenados
| XSR suministrados por DB2.
| SYSIBM.XSROBJECTGRAMMAR Tabla auxiliar de la columna BLOB GRAMMAR de
| SYSIBM.SYSXSROBJECTS. Está en el espacio de tablas
| LOB SYSXSRA1.
| SYSIBM.XSROBJECTHIERARCHIES Contiene una fila por cada componente (documento)
| de un esquema XML para registrar la relación
| jerárquica del documento del esquema XML. Las filas
| de esta tabla sólo pueden modificarse mediante
| sentencias de SQL estáticas emitidas por los
| procedimientos almacenados XSR suministrados por
| DB2.
| SYSIBM.XSROBJECTPROPERTY Tabla auxiliar de la columna BLOB PROPERTIES de
| SYSIBM.SYSXSROBJECTS. Está en el espacio de tablas
| LOB SYSXSRA2.
| SYSIBM.XSRPROPERTY Tabla auxiliar de la columna BLOB COMPONENT de
| SYSIBM.SYSXSROBJECTCOMPONENTS. Está en el
| espacio de tablas LOB SYSXSRA3.
|

68 Novedades
| Tablas de catálogo modificadas
| En la Versión 9.1 se han modificado muchas tablas de catálogo existentes. En la
| tabla siguiente se muestra lista de las columnas nuevas y de las columnas
| existentes que se han revisado. Las revisiones hechas a las columnas incluyen
| descripciones nuevas o valores nuevos de una columna, tipos de datos
| modificados, longitudes modificadas o bien tipos de datos y longitudes
| modificados.
| Tabla 9. Resumen de columnas de tablas de catálogo nuevas o revisadas
| Nombre de tabla de
| catálogo Columna nueva Columna revisada
| IPLIST IPADDR
| IPNAMES IPADDRUSERNAMES
| SECURITY_OUT
| LOCATIONS TRUSTED
| SECURE
| SYSAUXRELS RELCREATED TBOWNER
| AUXTBOWNER
| SYSCHECKDEP TBOWNER
| SYSCHECKS RELCREATED TBOWNER
| SYSCHECKS2 RELCREATED TBOWNER
| SYSCOLAUTH GRANTORTYPE GRANTEETYPE
| CREATOR
| SYSCOLDIST QUANTILENOLOWVALUEHIGHVALUE
TYPECARDFFREQUENCYFTBOWNER
| SYSCOLDIST_HIST QUANTILENOLOWVALUEHIGHVALUE
TYPECARDFFREQUENCYFTBOWNER
| SYSCOLDISTSTATS QUANTILENOLOWVALUEHIGHVALUE
TYPECARDFFREQUENCYFTBOWNER
| SYSCOLSTATS TBOWNER
| HIGHKEYHIGH2KEYLOWKEYLOW2KEY
| SYSCOLUMNS RELCREATED COLTYPELENGTHHIGH2KEYLOW2KEYLENGTH2
| DEFAULT
| DEFAULTVALUE
| TBOWNER
| SYSCOLUMNS_HIST TBCREATORCOLTYPELENGTHLENGTH2
| TBOWNER
| SYSCONSTDEP DTBOWNER DTBCREATOR
| OWNERTYPE
| SYSCOPY LOGGED STYPE
| TTYPE ICTYPE
| INSTANCE RELCREATED
| RELCREATED TIMESTAMPPIT_RBA
| SYSDATABASE IMPLICIT
| CREATORTYPE
| RELCREATED
| SYSDATATYPES OWNERTYPE CREATEDBY
| RELCREATED
| SYSDBAUTH GRANTEETYPE
| GRANTORTYPE
| SYSDBRM PLCREATORTYPE
| RELCREATED

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 69


| Tabla 9. Resumen de columnas de tablas de catálogo nuevas o revisadas (continuación)
| Nombre de tabla de
| catálogo Columna nueva Columna revisada
| SYSINDEXES KEYTARGET_COUNT PGSIZETBCREATORUNIQUERULECLUSTERRATIOFCREATOR
| UNIQUE_COUNT
| IX_EXTENSION_TYPE
| COMPRESSOWNEROWNERTYPE
| DATAREPEATFACTORF
| ENVID
| SYSINDEXES_HIST DATAREPEATFACTORF TBCREATORCREATOR
| SYSINDEXPART IXCREATORLEAFDISTFAROFFPOSFNEAROFFPOSF
| SYSINDEXPART_HIST IXCREATOR
| SYSINDEXSTATS DATAREPEATFACTORF OWNER
| SYSINDEXSTATS_HIST DATAREPEATFACTORF OWNER
| SYSJAROBJECTS OWNERTYPE
| SYSKEYS COLSEQ
| ORDERING
| SYSPACKAGE OWNERTYPE TYPEREOPTVAR
| ROUNDING
| SYSPACKAUTH GRANTORTYPE GRANTEETYPE
| SYSPACKDEP DOWNERTYPE BTYPE
| DTYPE
| BQUALIFIER
| SYSPACKSTMT SEQNO
| SYSPARMS VERSIONOWNERTYPE ROWTYPE
| PARMNAME
| CCSID
| SYSPLAN CREATORTYPE REOPTVAR
| ROUNDING
| SYSPLANAUTH GRANTEETYPE
| GRANTORTYPE
| SYSPLANDEP BTYPE
| BCREATOR
| SYSRELS RELCREATED CREATORREFTBCREATOR
| IXOWNER
| SYSRESAUTH GRANTEETYPE
| GRANTORTYPE
| SYSROUTINEAUTH GRANTORTYPE GRANTEETYPE
| SYSROUTINES VERSIONCONTOKEN ORIGIN
| ACTIVE FENCED
| DEBUG_MODE CREATEDBY
| TEXT_ENVID WLMENVIRONMENT
| TEXT_ROWID EXTERNAL_SECURITY
| TEXTOOWNERTYPE
| PARAMETER_VARCHARFORM
| RELCREATED
| PACKAGEPATH
| SYSSCHEMAAUTH GRANTEETYPE
| GRANTORTYPE
| SYSSEQUENCEAUTH GRANTORTYPE GRANTEETYPE

70 Novedades
| Tabla 9. Resumen de columnas de tablas de catálogo nuevas o revisadas (continuación)
| Nombre de tabla de
| catálogo Columna nueva Columna revisada
| SYSSEQUENCES OWNERTYPE SEQTYPE
| RELCREATED CREATEDBY
| SYSSEQUENCESDEP DOWNER DTYPE
| DOWNERTYPE
| SYSSTMT PLCREATORTYPE
| SYSSTOGROUP CREATORTYPE
| DATACLAS
| MGMTCLAS
| STORCLAS
| RELCREATED
| SYSSYNONYMS CREATORTYPE TBCREATOR
| RELCREATED
| SYSTABAUTH GRANTORTYPE GRANTEETYPE
| SCREATOR
| TCREATOR
| SYSTABCONST CREATORTYPE TBCREATORIXOWNER
| RELCREATED
| SYSTABLEPART FORMAT IXCREATOR
| REORG_LR_TS
| RELCREATED
| SYSTABLES APPEND DBIDOBID
| OWNEROWNERTYPE TYPECREATORTBCREATOR
| RELCREATED
| SYSTABLES_HIST CREATOR
| SYSTABLESPACE MAXPARTITIONS LOG
| CREATORTYPE TYPE
| INSTANCE
| CLONE
| RELCREATED
| SYSTABSTATS OWNER
| SYSTABSTATS_HIST OWNER
| SYSTRIGGERS OWNERTYPE OWNERCREATEDBY
| ENVID TRIGTIME
| RELCREATED TBOWNER
| TBNAME
| SYSUSERAUTH GRANTEETYPE
| GRANTORTYPE
| DEBUGSESSIONAUTH
| SYSVIEWDEP DOWNER DCREATOR
| OWNERTYPE
| SYSVIEWS OWNEROWNERTYPE CREATOR
| RELCREATED
| SYSVOLUMES RELCREATED
| USERNAMES TYPE
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 71


| Índices nuevos y modificados
| En la tabla siguiente se muestran los índices nuevos y modificados de la Versión
| 9.1.
| Tabla 10. Índices nuevos y modificados
| Espacio de tablasTabla de catálogo ÍNDICE
| DSNDB06. ... SYSIBM. ... SYSIBM. ... CAMPOS DE ÍNDICES
| SYSCONTX SYSCONTEXT DSNCTX01 NAME
| DSNCTX02 SYSTEMAUTHID
| DSNCTX03 CONTEXID
| DSNCTX04 DEFAULTROLE
| SYSCONTEXTAUTHIDS DSNCDX01 CONTEXTID.AUTHID
| DSNCDX02 ROLE
| SYSCTXTTRUSTATTRS DSNCAX01 CONTEXTID.NAME.VALUE
|
| SYSDBASE SYSRELS DSNDLX03 IXOWNER.IXNAME
| SYSTABAUTH DSNATX01 GRANTOR.GRANTORTYPE
| SYSTABLEPART DSNDPX04 IXCREATOR.IXNAME
|
| SYSDBAUT SYSDBAUTH DSNADH01 GRANTEE.NAME.GRANTEETYPE
| DSNADX01 GRANTOR.NAME.GRANTORTYPE
|
| SYSGPAUT SYSRESAUTH DSNAGH01 GRANTEE.QUALIFIER.NAME.OBTYPE.
| GRANTEETYPE
| DSNAGX01 GRANTOR.QUALIFIER.NAME.OBTYPE.
| GRANTORTYPE
|
| SYSHIST SYSKEYTARGETS_HIST DSNHKX01 IXSCHEMA.IXNAME.KEYSEQ.STATSTIME
| SYSKEYTGTDIST_HIST DSNTDX02 IXSCHEMA.IXNAME.KEYSEQ.STATSTIME
|
| SYSJAVA SYSJAVAPATHS DSNJIPX01 JARSCHEMA.JAR_ID.ORDINAL
| DSNJIPX02 PE_JARSCHEMA.PE_JAR_ID
|

72 Novedades
| Tabla 10. Índices nuevos y modificados (continuación)
| Espacio de tablasTabla de catálogo ÍNDICE
| DSNDB06. ... SYSIBM. ... SYSIBM. ... CAMPOS DE ÍNDICES
| SYSOBJ SYSDEPENDENCIES DSNONX01 BSCHEMA.BNAME.BCOLNAME.BTYPE.
| DSCHEMA.DNAME.DCOLNAME.DTYPE
| DSNONX02 DSCHEMA.DNAME.DCOLNAME.DTYPE.
| BSCHEMA.BNAME.BCOLNAME.BTYPE
| SYSENVIRONMENT DSNOEX01 ENVID
| SYSPARMS DSNOPX04 SCHEMA.SPECIFICNAME.ROUTINETYPE.VERSION
| SYSROUTINEEAUTH DSNOAX01 GRANTOR.SCHEMA.SPECIFICNAME.
| ROUTINETYPE.GRANTEETYPE.EXECUTEAUTH.
| GRANTORTYPE
| SYSROUTINES DSNOFX01 NAME.PARM_COUNT.
| ROUTINETYPE.PARM_SIGNATURE.
| SCHEMA.PARM1.PARM2.PARM3.
| PARM4.PARM5.PARM6.PARM7.
| PARM8.PARM9.PARM10.PARM11.
| PARM12.PARM13.PARM14.PARM15.
| PARM16.PARM17.PARM18.PARM19.
| PARM20.PARM21.PARM22.PARM23.
| PARM24.PARM25.PARM26.PARM27.
| PARM28.PARM29.PARM30.
| VERSION
| DSNOFX02 SCHEMA.SPECIFICNAME.
| ROUTINETYPE.
| VERSION
| DSNOFX07 NAME.PARM_COUNT.
| ROUTINETYPE. SCHEMA.
| PARM_SIGNATURE.
| PARM1.PARM2.PARM3.
| PARM4.PARM5.PARM6.PARM7.
| PARM8.PARM9.PARM10.PARM11.
| PARM12.PARM13.PARM14.PARM15.
| PARM16.PARM17.PARM18.PARM19.
| PARM20.PARM21.PARM22.PARM23.
| PARM24.PARM25.PARM26.PARM27.
| PARM28.PARM29.PARM30.
| VERSION
| SYSSCHEMAAUTH DSNSKX01 GRANTEE.SCHEMANAME.GRANTEETYPE
| DSNSKX02 GRANTOR.GRANTORTYPE
|
| SYSPKAGE SYSPACKAUTH DSNKAX01 GRANTOR.LOCATION.COLLID.NAME.
| GRANTORTYPE
| DSNKAX02 GRANTEE.LOCATION.COLLID.NAME.BINDAUTH.
| COPYAUTH.EXECUTEAUTH.GRANTEETYPE
| SYSPACKSTMT DSNKSX01 LOCATION.COLLID.NAME.CONTOKEN.STMTNOI.
| SECTNOI.SEQNO
|
| SYSPLAN SYSPLANAUTH DSNAPH01 GRANTEE.NAME.EXECUTEAUTH.GRANTEETYPE
| DSNAPX01 GRANTOR.GRANTORTYPE
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 73


| Tabla 10. Índices nuevos y modificados (continuación)
| Espacio de tablasTabla de catálogo ÍNDICE
| DSNDB06. ... SYSIBM. ... SYSIBM. ... CAMPOS DE ÍNDICES
| SYSROLES SYSOBJROLESEP DSNRDX01 DSCHEMA.DNAME.DTYPE.ROLENAME
| DSNRDX02 ROLENAME
| SYSROLES DSNRLX01 NAMES
|
| SYSRTSTS SYSTABLESPACESTATS DSNRTX01 DBID.PSID.PARTITION.INSTANCE
| SYSINDEXSPACESTAT DSNRTX02 DBID.ISOBID.PARTITION.INSTANCE
|
| SYSSEQ2 SYSSEQUENCEAUTH DSNWCX02 GRANTOR.SCHEMA.NAME.GRANTORTYPE
| DSNWCX03 GRANTEE.SCHEMA.NAME.GRANTEETYPE
|
| SYSSTATS SYSKEYTARGETSTATS DSNTKX01 IXSCHEMA.IXNAME.KEYSEQ.PARTITION
| SYSKEYTGDIST DSNTDX01 IXSCHEMA.IXNAME.KEYSEQ
| SYSKEYTGTDISTSTATS DSNTSX01 IXSCHEMA.IXNAME.KEYSEQ.PARTITION
|
| SYSTARG SYSKEYTARGETS DSNRKX01 IXSCHEMA.IXNAME.KEYSEQ
| DSNRKX02 DATATYPEID.KEYSPEC_INTERNAL
|
| SYSUSER SYSUSERAUTH DSNAUH01 GRANTEE.GRANTEDTS.GRANTEETYPE
| DSNAUX01 GRANTOR.GRANTORTYPE
|
| SYSXML SYSXMLRELS DSNXRX01 TBOWNER.TBNAME
| DSNXRX02 XMLTBOWNER.XMLTBNAME
| SYSXMLSTRINGS DSNXSX01 STRINGID
| DSNXSX02 STRING
|
| SYSXSR XSROBJECTS XSROBJ01 XSROBJECTID
| XSROBJ02 XSROBJECTSCHEMA.XSROBJECTNAME
| XSROBJ03 TARGETNAMESPACE.SCHEMALOCATION
| XSROBJ04 SCHEMALOCATION
| XSROBJECT- XSRCOMP01 XSRCOMPONENTID
| COMPONENTS
| XSRCOMP02 TARGETNAMESPACE.SCHEMALOCATION
| XSROBJECT- XSRHIER01 XSROBJECTID.TARGETNAMESPACE.
| HIERARCHIES SCHEMALOCATION
| XSRHIER02 XSROBJECTID.TARGETNAMESPACE
|
| SYSXSRA1 XSROBJECTGRAMMAR XSRXOG01 GRAMMAR
|
| SYSXSRA2 XSROBJECTPROPERTY XSRXOP01 PROPERTIES
|

74 Novedades
| Tabla 10. Índices nuevos y modificados (continuación)
| Espacio de tablasTabla de catálogo ÍNDICE
| DSNDB06. ... SYSIBM. ... SYSIBM. ... CAMPOS DE ÍNDICES
| SYSXSRA3 XSRCOMPONENT XSRXCC01 COMPONENT
|
| SYSXSRA4 XSRPROPERTY XSRXCP01 PROPERTIES
|
|
|
| Modificaciones en la supervisión y los ajustes del rendimiento
| La Versión 9.1 de DB2 for z/OS incluye cambios que afectan al rendimiento y
| modificaciones en herramientas de supervisión como EXPLAIN, PLAN_TABLE y
| DSN_STATEMNT_TABLE.

| Los temas siguientes proporcionan información adicional.

| Cambios en el rendimiento
| En DB2 for z/OS, los cambios en el rendimiento incluyen cambios en los procesos
| en paralelo, los métodos de selección de un rango de páginas, un supervisor del
| sistema de DB2 nuevo y cambios en la forma en que DB2 selecciona vías de acceso.

| Cambios en el paralelismo

| En releases anteriores de DB2, si la vía de acceso de una consulta utilizaba un


| índice secundario de datos particionados que permitía ordenar los datos, DB2 no
| podía utilizar el paralelismo cuando ejecutaba la consulta. En DB2 Version 9.1 for
| z/OS, se contempla la posibilidad de utilizar el paralelismo si DB2 ejecuta este tipo
| de consulta.

| Por ejemplo, supongamos que la tabla T1 tiene dos columnas, C1 y C2, y que en
| C1 se ha definido un índice secundario de datos particionados. En DB2 Version 9.1
| for z/OS versión 8, no se contemplaba la posibilidad de utilizar el paralelismo
| para la consulta siguiente:
| SELECT * FROM TABLE1 ORDER BY C1;

| En la versión 9.1, DB2 sí considera la posibilidad de utilizar el paralelismo para


| esta consulta.

| Selección de un rango de páginas para tablas con índices


| secundarios de datos particionados

| Ahora se puede aumentar el rendimiento escribiendo consultas de forma que la


| selección de un rango de páginas reduzca el número de particiones que acceden a
| DB2. Se puede beneficiar de la selección de un rango de páginas para tablas:
| v Uniendo las tablas en la columna de particionamiento
| v Creando un predicado no coincidente en las claves de particionamiento

| Supervisor del sistema de DB2

| El supervisor del sistema de DB2 busca detenciones de la CPU que dan lugar a
| una contención de mecanismo de cierre. Cuando detecta la detención de una CPU,
| el supervisor del sistema de DB2 intenta solucionar la contención de mecanismo de

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 75


| cierre aumentando temporalmente la prioridad de WLM. Además, el supervisor
| del sistema emite el mensaje DSNV508I para notificar que el almacenamiento
| DBM1 que hay por debajo de los 2 GB llega a niveles de almacenamiento críticos,
| y una serie de mensajes DSNV512I para identificar los agentes que consumen la
| mayor parte del almacenamiento.

| Establezca el espacio de direcciones xxxxMSTR en la prioridad de asignación de


| tareas de SYSSTC en WLM para que el supervisor funcione con eficacia.

| RUNSTATS y columnas de clave aleatoria

| Los valores de las columnas HIGH2KEY y LOW2KEY de las tablas de catálogo


| SYSCOLSTATS y SYSCOLUMNS se actualizan con valores decodificados si la
| columna es una columna de clave aleatoria.

| Selección de vía de acceso mejorada para índices en orden


| invertido y duplicados

| Para índices que contienen muchos valores de clave duplicados o valores de clave
| muy agrupados en clúster en orden invertido, la estimación del coste basada
| solamente en CLUSTERRATIOF puede generar exploraciones de índice repetitivas.
| En el peor de los casos, se puede explorar toda una página una vez para cada fila
| de la página. La selección de vía de acceso de DB2 puede evitar este problema de
| rendimiento mediante la utilización de una fórmula de estimación de costes nueva
| basada en la estadística DATAREPEATFACTORF para elegir índices. Si DB2 utiliza
| esta estadística depende del valor del parámetro STATCLUS del subsistema. Para
| beneficiarse de la fórmula nueva, establezca el parámetro STATCLUS en
| ENHANCED. Si no, establezca el valor en STANDARD.

| Cambios en la tabla EXPLAIN


| Esta información incluye las definiciones completas de las principales tablas
| EXPLAIN de DB2. También ofrece una descripción de las columnas de las tablas
| EXPLAIN nuevas y modificadas de DB2 for z/OS.

| Para poder utilizar EXPLAIN, primero debe crear una tabla denominada
| PLAN_TABLE para que contenga los resultados de EXPLAIN. Si tiene una tabla
| PLAN_TABLE existente de un subsistema que se ejecutaba en una versión anterior
| de DB2 puede modificarla para incluir las columnas nuevas. En “Formato de
| PLAN_TABLE de la Versión 9.1” se muestra el formato de PLAN_TABLE.

| También pueden crearse tablas EXPLAIN denominadas DSN_STATEMNT_TABLE,


| DSN_FUNCTION_TABLE y DSN_STATEMENT_CACHE_TABLE para capturar
| distintos tipos de información sobre sentencias de SQL. Los temas relacionados
| ofrecen información adicional sobre los cambios realizados en estas tablas
| EXPLAIN.

| Formato de PLAN_TABLE de la Versión 9.1


| En DB2 for z/OS, PLAN_TABLE tiene una columna nueva, PARENT_PLANNO.

| La columna PARENT_PLANNO de PLAN_TABLE corresponde al número de plan


| del bloque de consulta padre en que se invoca una subconsulta correlacionada.
| Para subconsultas no correlacionadas, corresponde al número de plan del bloque
| de consulta padre que representa al archivo de trabajo de la subconsulta.En la
| figura siguiente se muestra el formato de PLAN_TABLE para la Versión 9.1.
|

76 Novedades
| CREATE TABLE id_usuario.PLAN_TABLE
| (QUERYNO INTEGER NOT NULL,
| QBLOCKNO SMALLINT NOT NULL,
| APPLNAME CHAR(8) NOT NULL,
| PROGNAME VARCHAR(128) NOT NULL,
| PLANNO SMALLINT NOT NULL,
| METHOD SMALLINT NOT NULL,
| CREATOR VARCHAR(128) NOT NULL,
| TNAME VARCHAR(128) NOT NULL,
| TABNO SMALLINT NOT NULL,
| ACCESSTYPE CHAR(2) NOT NULL,
| MATCHCOLS SMALLINT NOT NULL,
| ACCESSCREATOR VARCHAR(128) NOT NULL,
| ACCESSNAME VARCHAR(128) NOT NULL,
| INDEXONLY CHAR(1) NOT NULL,
| SORTN_UNIQ CHAR(1) NOT NULL,
| SORTN_JOIN CHAR(1) NOT NULL,
| SORTN_ORDERBY CHAR(1) NOT NULL,
| SORTN_GROUPBY CHAR(1) NOT NULL,
| SORTC_UNIQ CHAR(1) NOT NULL,
| SORTC_JOIN CHAR(1) NOT NULL,
| SORTC_ORDERBY CHAR(1) NOT NULL,
| SORTC_GROUPBY CHAR(1) NOT NULL,
| TSLOCKMODE CHAR(3) NOT NULL,
| TIMESTAMP CHAR(16) NOT NULL,
| REMARKS VARCHAR(762) NOT NULL
| PREFETCH CHAR(1) NOT NULL WITH DEFAULT,
| COLUMN_FN_EVAL CHAR(1) NOT NULL WITH DEFAULT,
| MIXOPSEQ SMALLINT NOT NULL WITH DEFAULT,
| VERSION VARCHAR(64) NOT NULL WITH DEFAULT,
| COLLID VARCHAR(128) NOT NULL WITH DEFAULT,
| ACCESS_DEGREE SMALLINT ,
| ACCESS_PGROUP_ID SMALLINT ,
| JOIN_DEGREE SMALLINT ,
| JOIN_PGROUP_ID SMALLINT ,
| SORTC_PGROUP_ID SMALLINT ,
| SORTN_PGROUP_ID SMALLINT ,
| PARALLELISM_MODE CHAR(1) ,
| MERGE_JOIN_COLS SMALLINT ,
| CORRELATION_NAME VARCHAR(128) ,
| PAGE_RANGE CHAR(1) NOT NULL WITH DEFAULT,
| JOIN_TYPE CHAR(1) NOT NULL WITH DEFAULT,
| GROUP_MEMBER CHAR(8) NOT NULL WITH DEFAULT,
| IBM_SERVICE_DATA VARCHAR(254) FOR BIT DATA NOT NULL WITH DEFAULT
| WHEN_OPTIMIZE CHAR(1) NOT NULL WITH DEFAULT,
| QBLOCK_TYPE CHAR(6) NOT NULL WITH DEFAULT,
| BIND_TIME TIMESTAMP NOT NULL WITH DEFAULT,
| OPTHINT VARCHAR(128) NOT NULL WITH DEFAULT,
| HINT_USED VARCHAR(128) NOT NULL WITH DEFAULT
| PRIMARY_ACCESSTYPE CHAR(1) NOT NULL WITH DEFAULT,
| PARENT_QBLOCKNO SMALLINT NOT NULL WITH DEFAULT,
| TABLE_TYPE CHAR(1) ,
| TABLE_ENCODE CHAR(1) NOT NULL WITH DEFAULT,
| TABLE_SCCSID SMALLINT NOT NULL WITH DEFAULT
| TABLE_MCCSID SMALLINT NOT NULL WITH DEFAULT,
| TABLE_DCCSID SMALLINT NOT NULL WITH DEFAULT,
| ROUTINE_ID INTEGER NOT NULL WITH DEFAULT,
| CTEREF SMALLINT NOT NULL WITH DEFAULT
| STMTTOKEN VARCHAR(240)
| PARENT_PLANNO SMALLINT NOT NULL WITH DEFAULT) IN nombre-base-datos.nombre-espacio-tablas
| CCSID EBCDIC;
|
| Figura 1. Formato de 59 columnas de PLAN_TABLE
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 77


v Intel, el logotipo de Intel, Intel Inside, el logotipo de Intel Inside, Intel Centrino,
el logotipo de Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium y
Pentium son marcas registradas de Intel Corporation o de sus subsidiarias en
Estados Unidos y en otros países.
v Java y las marcas registradas basadas en Java son marcas registradas de Sun
Microsystems, Inc. en Estados Unidos o en otros países.
v UNIX es una marca registrada de The Open Group en Estados Unidos y en otros
países.
v Linux es una marca registrada de Linus Torvalds en Estados Unidos o en otros
países.
v Adobe, el logotipo de Adobe, Postscript y el logotipo de Postscript son marcas
registradas o marcas comerciales de Adobe Systems Incorporated en Estados
Unidos o en otros países.

Puede haber otros nombres de compañías, productos o servicios que sean marcas
registradas o de servicio de otras empresas.

Avisos 107
| La tabla PLAN_TABLE puede utilizar muchos otros formatos con menos columnas.
| Sin embargo, el formato de 59 columnas proporciona la información más completa.
| Para cambiar una tabla de plan existente que tenga menos de 59 columnas al
| formato de 59 columnas, siga estos pasos:
| 1. Determine si PLAN_TABLE tiene las siguientes columnas:
| v PROGNAME
| v CREATOR
| v TNAME
| v ACCESSTYPE
| v ACCESSNAME
| v REMARKS
| v COLLID
| v CORRELATION_NAME
| v IBM_SERVICE_DATA
| v OPTHINT
| v HINT_USED
| 2. Para las columnas que existan, utilice los valores de la figura anterior para
| cambiar los tipos de datos de estas columnas por los tipos de datos apropiados.
| 3. Para las columnas que no están en PLAN_TABLE, inclúyalas en la tabla
| utilizando las definiciones de columna de la figura anterior.

| Descripciones de las columnas nuevas y modificadas de PLAN_TABLE:

| En la tabla siguiente se muestra el contenido de todas las columnas nuevas o


| modificadas de la Versión 9.1.
| Tabla 11. Descripciones de las columnas nuevas y modificadas de PLAN_TABLE
| Nuevo o
| Nombre de columna Tipo de datos Descripción modificado
| QUERYNO INTEGER NOT Un número pensado para identificar la sentencia que se Modificada
| NULL explica. Para una fila producida por una sentencia
| EXPLAIN, especifique el número en la cláusula QUERYNO.
| Para una fila producida por sentencias no EXPLAIN,
| especifique el número utilizando la cláusula QUERYNO, que
| es una parte opcional de la sintaxis de las sentencias
| SELECT, INSERT, UPDATE, MERGE y DELETE. De lo
| contrario, DB2 asigna un número basado en el número de
| línea de la sentencia de SQL del programa fuente.

| Cuando los valores de QUERYNO se basan en el número de


| sentencia del programa fuente, los valores mayores que
| 32767 se notifican como 0. Sin embargo, en un programa
| muy largo, no se puede garantizar que el valor sea
| exclusivo. Si QUERYNO no es exclusivo, el valor de
| TIMESTAMP es exclusivo.
| APPLNAME VARCHAR(24) El nombre del plan de aplicación para la fila. Sólo se aplica Modificada
| NOT NULL a sentencias EXPLAIN incorporadas ejecutadas desde un
| plan o a sentencias explicadas cuando se vincula un plan. En
| blanco si no se aplica.

78 Novedades
| Tabla 11. Descripciones de las columnas nuevas y modificadas de PLAN_TABLE (continuación)
| Nuevo o
| Nombre de columna Tipo de datos Descripción modificado
| ACCESSTYPE CHAR(2) NOT El método de acceso a la tabla nueva: Modificada
| NULL
| DI Mediante una intersección de múltiples listas de
| DOCID para devolver la lista de DOCID final
| DU Mediante una unión de múltiples listas de DOCID
| para devolver la lista de DOCID final
| DX Mediante una exploración de índice XML en el
| índice especificado en ACCESSNAME para
| devolver una lista de DOCID
| I Mediante un índice (identificado en
| ACCESSCREATOR y ACCESSNAME)
| I1 Mediante una exploración de índice de una
| captación
| M Mediante una exploración de múltiples índices
| (seguida de MX, MI o MU)
| MI Mediante una intersección de múltiples índices
| MU Mediante una unión de múltiples índices
| MX Mediante una exploración de índice en el índice
| nombrado en ACCESSNAME. Cuando el método
| de acceso MX viene a continuación del método de
| acceso DX, DI o DU, el índice DOCID accede a la
| tabla utilizando la lista de DOCID devuelta por DX,
| DI o DU.
| N Mediante una exploración de índice cuando el
| predicado coincidente contiene la palabra clave IN
| MATCHCOLS SMALLINT NOT Para ACCESSTYPE I, I1, N, MX o DX, el número de claves Modificada
| NULL de índice utilizadas en una exploración de índice; de lo
| contrario, 0.
| ACCESSCREATOR VARCHAR(128) Para ACCESSTYPE I, I1, N, MX o DX, el creador del índice; Modificada
| NOT NULL de lo contrario, blanco.
| ACCESSNAME VARCHAR(128) Para ACCESSTYPE I, I1, N, MX o DX, el nombre del índice; Modificada
| NOT NULL de lo contrario, blanco.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 79


| Tabla 11. Descripciones de las columnas nuevas y modificadas de PLAN_TABLE (continuación)
| Nuevo o
| Nombre de columna Tipo de datos Descripción modificado
| TSLOCKMODE CHAR(3) NOT Indicación de la modalidad de bloqueo que se adquirirá en Modificada
| NULL la tabla nueva, en su espacio de tablas o en particiones de
| espacio de tablas. Si el aislamiento se puede determinar
| durante el tiempo de vinculación, los valores son:
| IS Bloqueo de compartimiento de intención
| IX Bloqueo exclusivo de intención
| S Bloqueo de compartimiento
| U Bloqueo de actualización
| X Bloqueo exclusivo
| SIX Compartimiento con bloqueo exclusivo de intención
| N Aislamiento UR; sin bloqueo
| Si el aislamiento no se puede determinar durante el tiempo
| de vinculación, la modalidad de bloqueo determinada por el
| aislamiento durante el tiempo de ejecución viene indicada
| por los valores siguientes.
| 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 IS.
| NSS Para aislamiento UR, sin bloqueo; para CS o RS, un
| bloqueo IS; para RR, un bloqueo S.
| SS Para aislamiento UR, CS o RS, un bloqueo IS; para
| RR, un bloqueo S.

| Los datos de esta columna están justificados a la derecha.


| Por ejemplo, IX aparece como un blanco seguido de I
| seguido de X. Si la columna contiene un blanco, no se
| adquiere ningún bloqueo.

| Si el método de acceso de la columna ACCESSTYPE es DX,


| DI o DU, no se adquiere ningún mecanismo de cierre en la
| página de índice del valor XML y no se adquiere ningún
| bloqueo en la página de datos de la tabla base nueva ni en
| la tabla XML y los espacios de tablas correspondientes. En
| este caso, TSLOCKMODE es un blanco.
| MIXOPSEQ SMALLINT NOT El número de secuencia de un paso en una operación de Modificada
| NULL WITH múltiples índices.
| DEFAULT
| 1, 2,...n
| Para los pasos del procedimiento de múltiples
| índices (ACCESSTYPE es MX, MI, MU, DX, DI o
| DU.)
| 0 Para cualquier otra fila (ACCESSTYPE es I, I1, M,
| N, R o en blanco.)

80 Novedades
| Tabla 11. Descripciones de las columnas nuevas y modificadas de PLAN_TABLE (continuación)
| Nuevo o
| Nombre de columna Tipo de datos Descripción modificado
| JOIN_TYPE CHAR(1) El tipo de unión: Modificada
| F FULL OUTER JOIN
| L LEFT OUTER JOIN
| P Unión en pares
| S Unión en estrella
| blanco INNER JOIN o ninguna unión
| QBLOCK_TYPE CHAR(6) NOT Para cada bloque de consulta, una indicación del tipo de Modificada
| NULL WITH operación de SQL realizada. Para la consulta más exterior,
| DEFAULT esta columna identifica el tipo de sentencia. Valores posibles:
| SELECT
| SELECT
| INSERT
| INSERT
| UPDATE
| UPDATE
| MERGE
| MERGE
| DELETE
| DELETE
| SELUPD
| SELECT con FOR UPDATE OF
| DELCUR
| DELETE WHERE CURRENT OF CURSOR
| TRUNCA
| TRUNCATE
| UPDCUR
| UPDATE WHERE CURRENT OF CURSOR
| CORSUB
| Subselección correlacionada o selección completa
| NCOSUB
| Subselección no correlacionada o selección completa
| TABLEX
| Expresión de tabla

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 81


| Tabla 11. Descripciones de las columnas nuevas y modificadas de PLAN_TABLE (continuación)
| Nuevo o
| Nombre de columna Tipo de datos Descripción modificado
| PRIMARY_ CHAR(1) NOT Indica si se intentará primero el acceso directo de fila: Modificada
| ACCESSTYPE NULL WITH
|| DEFAULT
D DB2 intenta utilizar el acceso directo de fila. Si DB2
| no puede utilizar el acceso directo de fila durante el
| tiempo de ejecución, utiliza la vía de acceso descrita
| en la columna ACCESSTYPE de PLAN_TABLE.
| T La tabla base o el archivo de resultados se
| materializará en un archivo de trabajo y a éste se
| accederá mediante un acceso de índice disperso.
| Cuando hay implicada una tabla base,
| ACCESSTYPE indica cómo se accede a la tabla
| base.
| blanco DB2 no intenta utilizar un acceso directo de fila
| utilizando una columna rowid ni un acceso de
| índice disperso para un archivo de trabajo. El valor
| de la columna ACCESSTYPE de PLAN_TABLE
| proporciona información sobre el método de acceso
| a la tabla.
| TABLE_TYPE CHAR(1) El tipo de la tabla nueva: Modificada
| B Almacenamientos intermedios para la sentencia
| SELECT from INSERT, SELECT from UPDATE,
| SELECT from MERGE o SELECT from DELETE.
| C Expresión de tabla común
| F Función de tabla
| M Tabla de consulta materializada
| Q Tabla de resultados intermedios temporales (no
| materializada). Para el nombre de una vista o
| expresión de tabla anidada, un valor de Q indica
| que la materialización ha sido virtual y no real. La
| materialización puede ser virtual cuando la vista o
| la definición de expresión de tabla anidada
| contienen un UNION ALL que no es no
| distribuido.
| R Expresión de tabla común recursiva
| T Tabla
| W Archivo de trabajo
| PARENT_PLANNO SMALLINT NOT Corresponde al número de plan del bloque de consulta Nueva
| NULL WITH padre en el que se invoca una subconsulta correlacionada.
| DEFAULT Para subconsultas no correlacionadas, corresponde al
| número de plan del bloque de consulta padre que representa
| al archivo de trabajo de la subconsulta.
|

| La tabla PLAN_TABLE puede utilizar muchos otros formatos con menos columnas.
| Sin embargo, debe utilizar el formato de 59 columnas puesto que es el que
| proporciona más información. Para cambiar una tabla de plan existente que tenga
| menos de 59 columnas al formato de 59 columnas, siga estos pasos:
| 1. Determine si PLAN_TABLE tiene las siguientes columnas:
| v PROGNAME
| v CREATOR

82 Novedades
| v TNAME
| v ACCESSTYPE
| v ACCESSNAME
| v REMARKS
| v COLLID
| v CORRELATION_NAME
| v IBM_SERVICE_DATA
| v OPTHINT
| v HINT_USED
| 2. Para las columnas que existan, utilice los valores de Figura 1 en la página 77
| para cambiar los tipos de datos de estas columnas por los tipos de datos
| apropiados para la versión 8.
| 3. Para las columnas que no están en PLAN_TABLE, inclúyalas en la tabla
| utilizando las definiciones de columna de Figura 1 en la página 77.

| Formato de DSN_STATEMNT_TABLE de la versión 9.1


| En DB2 for z/OS, DSN_STATEMNT_TABLE tiene una columna nueva,
| TOTAL_COST.

| La tabla de sentencias contiene información de EXPLAIN sobre el coste estimado


| de una sentencia.
|
| CREATE TABLE DSN_STATEMNT_TABLE (
| QUERYNO INTEGER NOT NULL WITH DEFAULT,
| APPLNAME VARCHAR(24) NOT NULL WITH DEFAULT,
| PROGNAME VARCHAR(128) NOT NULL WITH DEFAULT,
| COLLID VARCHAR(128) NOT NULL WITH DEFAULT,
| GROUP_MEMBER VARCHAR(24) NOT NULL WITH DEFAULT,
| EXPLAIN_TIME TIMESTAMP NOT NULL WITH DEFAULT,
| STMT_TYPE CHAR(6) NOT NULL WITH DEFAULT,
| COST_CATEGORY CHAR(1) NOT NULL WITH DEFAULT,
| PROCMS INTEGER NOT NULL WITH DEFAULT,
| PROCSU INTEGER NOT NULL WITH DEFAULT,
| REASON VARCHAR(254) NOT NULL WITH DEFAULT
| STMT_ENCODE CHAR(1) NOT NULL WITH DEFAULT
| TOTAL_COST FLOAT NOT NULL WITH DEFAULT
| );
| IN nombre-base-de-datos.nombre-espacio-tablas
| CCSID UNICODE;
|
| Figura 2. La sentencia CREATE TABLE de DSN_STATEMNT_TABLE de la Versión 9.1.
|
| Descripciones de las columnas nuevas y modificadas de
| DSN_STATEMNT_TABLE:

| La tabla de sentencias, DSN_STATEMNT_TABLE, contiene información acerca del


| coste estimado de las sentencias de SQL especificadas.

| En la tabla siguiente se describen las columnas nuevas y modificadas de


| DSN_STATEMNT_TABLE.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 83


| Tabla 12. Descripciones de las columnas nuevas y modificadas de DSN_STATEMNT_TABLE
| Nombre de columna Tipo de datos Descripción Nueva o modificada
| STMT_TYPE CHAR(6) El tipo de sentencia que se Modificada
| explica. Los valores posibles
| son:
| SELECT
| SELECT
| INSERT
| INSERT
| UPDATE
| UPDATE
| MERGE
| MERGE
| DELETE
| DELETE
| SELUPD
| SELECT con FOR
| UPDATE OF
| DELCUR
| DELETE WHERE
| CURRENT OF
| CURSOR
| UPDCUR
| UPDATE WHERE
| CURRENT OF
| CURSOR

84 Novedades
| Tabla 12. Descripciones de las columnas nuevas y modificadas de DSN_STATEMNT_TABLE (continuación)
| Nombre de columna Tipo de datos Descripción Nueva o modificada
| REASON VARCHAR(254) Una serie que indica las Modificada
| razones para colocar una
| estimación en la categoría B
| de costes.
| HAVING CLAUSE
| Una subselección
| de la sentencia de
| SQL contiene una
| cláusula HAVING.
| HOST VARIABLES
| La sentencia utiliza
| variables de
| sistema principal,
| marcadores de
| parámetros o
| registros especiales.
| REFERENTIAL
| CONSTRAINTS
| Existen
| restricciones de
| referencia del tipo
| CASCADE o SET
| NULL en la tabla
| de destino de una
| sentencia DELETE.
| TABLE CARDINALITY
| Faltan las
| estadísticas de
| cardinalidad para
| una o varias tablas
| que se utilizan en
| la sentencia.
| TRIGGERS
| Hay
| desencadenantes
| definidos en la
| tabla de destino de
| una operación de
| inserción,
| actualización o
| supresión.
| UDF La sentencia utiliza
| funciones definidas
| por el usuario.
| MATERIALIZATION
| Faltan estadísticas
| porque la sentencia
| utiliza vistas
| materializadas o
| expresiones de
| tabla anidadas.

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 85


| Tabla 12. Descripciones de las columnas nuevas y modificadas de DSN_STATEMNT_TABLE (continuación)
| Nombre de columna Tipo de datos Descripción Nueva o modificada
| TOTAL_COST FLOAT El coste estimado global de Nueva
| la sentencia. Este coste sólo
| se debe utilizar para
| referencia.
|

| Formato de DSN_FUNCTION_TABLE de DB2 Version 9.1 for z/OS


| En DB2 for z/OS, DSN_FUNCTION_TABLE tiene dos columnas con tipos de datos
| modificados.

|
| CREATE TABLE DSN_FUNCTION_TABLE
| (QUERYNO INTEGER NOT NULL WITH DEFAULT,
| QBLOCKNO INTEGER NOT NULL WITH DEFAULT,
| APPLNAME VARCHAR(24) NOT NULL WITH DEFAULT,
| PROGNAME VARCHAR(128) NOT NULL WITH DEFAULT,
| COLLID VARCHAR(128) NOT NULL WITH DEFAULT,
| GROUP_MEMBER VARCHAR(24) NOT NULL WITH DEFAULT
| EXPLAIN_TIME TIMESTAMP NOT NULL WITH DEFAULT,
| SCHEMA_NAME VARCHAR(128) NOT NULL WITH DEFAULT,
| FUNCTION_NAME VARCHAR(128) NOT NULL WITH DEFAULT,
| SPEC_FUNC_NAME VARCHAR(128) NOT NULL WITH DEFAULT,
| FUNCTION_TYPE CHAR(2) NOT NULL WITH DEFAULT,
| VIEW_CREATOR VARCHAR(128) NOT NULL WITH DEFAULT,
| VIEW_NAME VARCHAR(128) NOT NULL WITH DEFAULT,
| PATH VARCHAR(2048) NOT NULL WITH DEFAULT,
| FUNCTION_TEXT VARCHAR(1500) NOT NULL WITH DEFAULT)
| IN nombre-base-de-datos.nombre-espacio-tablas CCSID UNICODE;
|
| Figura 3. La sentencia CREATE TABLE de DSN_STATEMNT_TABLE de la Versión 9.1.
|
| Descripciones de las columnas nuevas y modificadas de
| DSN_FUNCTION_TABLE:

| La tabla de funciones, DSN_FUNCTION_TABLE, contiene información acerca de


| las funciones definidas por el usuario a las que se hace referencia en sentencias de
| SQL.

| En la tabla siguiente se describen las columnas nuevas y modificadas de


| DSN_FUNCTION_TABLE.
| Tabla 13. Descripciones de las columnas nuevas y modificadas de DSN_FUNCTION_TABLE
| Nueva o
| Nombre de columna Tipo de datos Descripción modificada
| APPLNAME VARCHAR(24) Nombre del plan de aplicación para la fila, o en Modificada
| blanco.
| GROUP_MEMBER VARCHAR(24) Nombre de miembro del subsistema de DB2 que ha Modificada
| ejecutado EXPLAIN, o en blanco.
|

| Tabla de antememoria de sentencias nueva


| Para obtener información sobre cómo crear y utilizar
| DSN_STATEMENT_CACHE_TABLE, consulte DB2 SQL Reference y DB2 Application
| Programming and SQL Guide.

86 Novedades
|
| IFCID nuevos y modificados
| La Versión 9.1 de DB2 for z/OS contiene varias mejoras de rastreo.

| PSPI

| Las mejoras de rastreo de la Versión 9.1 son:


| v Más formas de filtrar registros de rastreo
| DB2 Versión 9.1 añade estos tipos de filtros nuevos al bloque de restricción de
| un mandato START TRACE, STOP TRACE o DISPLAY TRACE:
| – PKGPROG: paquete
| – PKGLOC: ubicación
| – PKGCOL: ID de colección
| – USERID: ID de usuario
| – APPNAME: nombre de aplicación
| – WKRSTN: nombre de estación de trabajo
| – CONNID: ID de conexión
| – CORRID: ID de correlación
| – ROLE: rol
| Además, se pueden excluir registros de rastreo, además de incluir registros de
| rastreo por cualquier tipo de filtro. Por ejemplo, la sentencia siguiente excluye
| los registros de rastreo de los planes denominados A, B o C:
| -START TRACE(ACCTG) XPLAN(A,B,C)
| v La longitud del registro del archivo sin formato del IFCID (DSNWMSGS) se ha
| aumentado de 87 a 92, para acomodar nombres de campos de rastreo más
| grandes.

| Esta información describe brevemente los IFCID nuevos y los cambios hechos en
| los IFCID existentes para cada función nueva. Para obtener una descripción
| detallada de los campos de cada registro del IFCID, consulte la biblioteca del
| conjunto de datos de macros de correlación DSN910.SDSNMACS. PSPI

| IFCID nuevos

| PSPI

| En la tabla siguiente se enumeran los IFCID nuevos.


| Tabla 14. IFCID nuevos

| IFCID Rastreo Clase Macro de correlación


Descripción
| Conexiones acreditadas
| 0269 AUDIT 10 DSNDQW04 Graba información sobre el establecimiento y la
| reutilización de una conexión acreditada.
| Uso excesivo de almacenamiento temporal
| 0343 PERFORMANCE 3 DSNDQW04 Graba información sobre un agente si se sobrepasa el
| valor del parámetro MAXTEMPS del subsistema.
| STATISTICS 4
| Detalle del paquete READS
| 0346 DSNDQW04 Graba información de detalle del paquete.
|

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 87


| PSPI

| IFCID modificados

| PSPI

| La Versión 9.1 de DB2 presenta cambios en varios registros de rastreo.

| Cambios en determinados registros de rastreo: en la tabla siguiente se ofrece una


| visión general de los cambios realizados en determinados IFCID. No se incluyen
| los cambios en el IFCID 0106, el registro de parámetros del sistema.
| Tabla 15. IFCID modificados
| IFCID Descripción de los cambios
| Soporte para tablas de clones
| 0006, 0007, 0008, 0010, 0011, En el campo ID de conjunto de páginas (PSID) de cada registro, si el bit más
| 0012, 0013, 0015, 0016, 0017, significativo está activado, el número de instancia asociado con el objeto es el número
| 0019, 0020, 0021, 0023, 0024, de instancia 2. En el caso de los campos PSID representados como FIXED(15), si el
| 0025, 0044, 0105, 0107, 0108, número de instancia es 2, el valor de PSID del registro de rastreo es un valor negativo.
| 0124, 0125, 0127, 0128, 0143,
| 0144, 0150, 0172, 0196, 0198,
| 0199, 0211, 0212, 0213, 0215,
| 0216, 0218, 0221, 0223, 0226,
| 0227, 0251, 0252, 0255, 0258,
| 0259, 0263, 0337, 0342
| Tipo de datos de coma flotante decimal
| Se ha añadido el tipo de datos de coma flotante decimal a los campos de tipo de
| 0184, 0247, 0248
| datos.
| Sentencia FETCH con CONTINUE
| Se ha añadido un contador para anotar el número de sentencias FETCH CURRENT
| 0002, 0003, 0148
| CONTINUE que se han ejecutado.
| Se ha añadido un campo para indicar si se ha especificado la cláusula WITH
| 0059
| CONTINUE o CURRENT CONTINUE en una sentencia FETCH.
| Optimización de consulta global
| Se han añadido y se han modificado campos para sincronizar este registro de rastreo
| 0022
| con la tabla PLAN_TABLE de la Versión 9.1.
| Procedimientos de SQL nativos
| La información de contabilidad de nivel de plan para procedimientos de SQL incluye
| 0003 datos del procedimiento de SQL nativo además de datos del procedimiento de SQL
| externo.
| Se ha actualizado el campo que especifica el tipo de paquete para incluir un paquete
| 0148, 0239
| para un procedimiento de SQL nativo.
| Recuperación hasta un momento de coherencia
| 0023, 0024 Se han añadido las fases LOGCSR y LOGUNDO nuevas o RECOVER.
| Sentencia RENAME INDEX
| 0062 Se ha añadido RENAME INDEX al principio del registro de ejecución.
| 0140 Se ha añadido RENAME INDEX al registro de anomalía de autorización.
| Mejoras de REORG

88 Novedades
| Tabla 15. IFCID modificados (continuación)
| IFCID Descripción de los cambios
|| 0023, 0024, 0025 v Se graban registros de rastreo para nuevas subtareas para descargar índices no
| particionados.
| v Debido a la eliminación de la fase BUILD2, ya no se graban los registros del IFCID
| 0024 con la fase BUILD2.
| 0140 Se ha añadido RENAME INDEX al registro de anomalía de autorización.
| Pasar por alto filas bloqueadas
| 0018 Se ha añadido un campo para anotar el número de filas que se han pasado por alto
| porque otra transacción bloqueaba esas filas.
| soporte de XML
| 0020, 0021, 0044, 0107, 0150, Se han añadido y se han modificado campos para los bloqueos XML.
| 0172, 0196, 0337.
| Cambios diversos
| 0001, 0225 Se han añadido campos para anotar estadísticas de almacenamiento de la pila.

| v Estos registros de rastreo ahora incluyen tiempo de espera de lectura de captura


| previa del registro activo, además de tiempo de espera de lectura. El IFCID 0034
| 0034, 0035 incluye un distintivo nuevo que indica el tipo de tiempo de espera.
| v Estos registros de rastreo ahora se incluyen en las clases de contabilidad 3 y 8, y las
| clases de supervisión 3 y 8.
| 0104 Los registros del IFCID 0104 ahora están disponibles mediante la interfaz IFI READS.
| Los registros del IFCID 0142 ahora rastrean operaciones ALTER, independientemente
| 0142
| de si el atributo AUDIT de la tabla ha cambiado.

| v Se ha añadido una sección nueva.


|| 0191 v Cuando se produce un error de la DRDA que da lugar al código de razón 00D3444E
| o 00D3444F, y hay activo un rastreo del IFCID 0191, también se generarán registros
| de rastreo del IFCID 0274.
| Se ha añadido un campo para indicar si el conjunto de datos en que se notifican las
| 0199
| estadísticas es un conjunto de datos duplicado.
| Se han añadido campos para anotar si la agrupación de almacenamiento intermedio
| 0201, 0202
| automática está vigente.
| Se han añadido campos para anotar la cantidad de almacenamiento compartido virtual
| 0217, 0225
| que utiliza el espacio de direcciones ssnmDBM1.
| Estos registros de rastreo se han cambiado del SMF tipo 102 al SMF tipo 100 y subtipo
| 0225
| 4.
| Se ha añadido un campo para anotar el número de veces que se ha asignado un
| 0239
| paquete.
|

| PSPI

Apéndice. Planificación para DB2 Versión 9.1 para z/OS 89


Recursos de información para DB2 for z/OS y productos
relacionados
Hay disponibles muchos recursos de información para ayudarle a utilizar DB2 for
z/OS y muchos productos relacionados. Ahora hay disponible una gran cantidad
de información técnica sobre productos IBM en línea, en los centros de información
o en los sitios web de las bibliotecas.

Limitación de responsabilidad: Cualquier dirección web aquí incluida era exacta


en el momento de la publicación de esta información. Sin embargo, las direcciones
web a veces cambian. Si visita una dirección web que se liste aquí pero que ya no
sea válida, puede intentar encontrar la dirección web actual para la información
del producto que está buscando en uno de los siguientes sitios:
v http://www.ibm.com/support/publications/us/library/index.shtml, que lista
los centros de información de IBM disponibles para varios productos IBM
v http://www.elink.ibmlink.ibm.com/public/applications/publications/cgibin/
pbi.cgi, que es el IBM Publications Center, donde puede descargar manuales
PDF en línea y realizar pedidos de manuales impresos para varios productos
IBM

Información del producto DB2 for z/OS Información del producto

El lugar principal donde se puede encontrar y utilizar información sobre DB2 for
z/OS es el Centro de información de Information Management Software for z/OS
Solutions (http://publib.boulder.ibm.com/infocenter/imzic), que también contiene
la información sobre IMS, QMF y muchos productos de Herramientas de DB2 e
IMS. La mayor parte de la información de DB2 for z/OS en este centro de
información también está disponible en los manuales identificados en la tabla
siguiente. Puede acceder a estos manuales en el sitio web de la biblioteca de DB2
for z/OS (http://www.ibm.com/software/data/db2/zos/library.html) o en IBM
Publications Center (http://www.elink.ibmlink.ibm.com/public/applications/
publications/cgibin/pbi.cgi).
Tabla 16. Títulos de manuales de DB2 Versión 9.1 para z/OS
Disponible
en el centro Disponible en Disponible
Número de de Disponible formato en manual
Título publicación información en PDF BookManager impreso
DB2 Version 9.1 for z/OS SC18-9840 X X X X
Administration Guide
DB2 Version 9.1 for z/OS Application SC18-9841 X X X X
Programming & SQL Guide
DB2 Version 9.1 for z/OS Application SC18-9842 X X X X
Programming Guide and Reference for
Java
DB2 Version 9.1 for z/OS Codes GC18-9843 X X X X
DB2 Version 9.1 for z/OS Command SC18-9844 X X X X
Reference
DB2 Version 9.1 for z/OS Data Sharing: SC18-9845 X X X X
Planning and Administration

© Copyright IBM Corp. 2007, 2008 91


Tabla 16. Títulos de manuales de DB2 Versión 9.1 para z/OS (continuación)
Disponible
en el centro Disponible en Disponible
Número de de Disponible formato en manual
Título publicación información en PDF BookManager impreso
DB2 Version 9.1 for z/OS Diagnosis LY37-3218 X X X
Guide and Reference 1
DB2 Version 9.1 for z/OS Diagnostic LY37-3219 X
Quick Reference
DB2 Version 9.1 for z/OS Installation GC18-9846 X X X X
Guide
DB2 Versión 9.1 para z/OS Introducción SC11-3682 X X X X
a DB2
DB2 Version 9.1 for z/OS Licensed GC18-9848 X X
Program Specifications
DB2 Version 9.1 for z/OS Messages GC18-9849 X X X X
DB2 Version 9.1 for z/OS ODBC Guide SC18-9850 X X X X
and Reference
DB2 Versión 9.1 para z/OS Guía de SC11-3759 X X X X
supervisión y ajuste del rendimiento
DB2 Versión 9.1 para z/OS - X
Optimization Service Center
DB2 Version 9.1 for z/OS Program GI10-8737 X X
Directory
DB2 Version 9.1 for z/OS RACF Access SC18-9852 X X
Control Module Guide
DB2 Version 9.1 for z/OS Reference for SC18-9853 X X X
Remote DRDA Requesters and Servers
DB2 Version 9.1 for z/OS Reference SX26-3854
Summary
DB2 Version 9.1 for z/OS SQL Reference SC18-9854 X X X X
DB2 Version 9.1 for z/OS Utility Guide SC18-9855 X X X X
and Reference
DB2 Versión 9.1 para z/OS Novedades GC11-3452 X X X X
DB2 Version 9.1 for z/OS XML Extender SC18-9857 X X X X
Administration and Programming
DB2 Version 9.1 for z/OS XML Guide SC18-9858 X X X X
Nota:
1. El manual DB2 Version 9.1 for z/OS Diagnosis Guide and Reference está disponible en los formatos PDF y
BookManager en DB2 Version 9.1 for z/OS Licensed Collection kit, LK3T-7195. Puede solicitar este License
Collection kit en el sitio de IBM Publications Center (http://www.elink.ibmlink.ibm.com/public/applications/
publications/cgibin/pbi.cgi). Este manual también está disponible en formato en línea en el archivo de DB2
DSN910.SDSNIVPD(DSNDR).

Recursos de información para productos relacionados

En la tabla siguiente, los nombres de productos relacionados se listan en orden


alfabético y se indican las direcciones web asociadas de los centros de información
del producto o las páginas web de biblioteca.

92 Novedades
Tabla 17. Ubicaciones de recursos de información de productos relacionados
Producto relacionado Recursos de información
C/C++ for z/OS Sitio web de la biblioteca: http://www.ibm.com/software/awdtools/czos/library/

Este producto se denomina ahora z/OS XL C/C++.


CICS Transaction Server for Centro de información: http://publib.boulder.ibm.com/infocenter/cicsts/v3r1/index.jsp
z/OS
COBOL Centro de información: http://publib.boulder.ibm.com/infocenter/pdthelp/v1r1/
index.jsp

Este producto se denomina ahora Enterprise COBOL for z/OS.


DB2 Connect Centro de información: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp

Este recurso es para DB2 Connect 9.


DB2 Database para Linux, Centro de información: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp
UNIX y Windows
Este recurso es para DB2 9 for Linux, UNIX y Windows.
DB2 Query Management Centro de información: http://publib.boulder.ibm.com/infocenter/imzic
Facility
DB2 Server para VSE y VM Una de las ubicaciones siguientes:
v Para VSE: http://www.ibm.com/support/docview.wss?rs=66&uid=swg27003758
v Para VM: http://www.ibm.com/support/docview.wss?rs=66&uid=swg27003759
DB2 Tools Una de las ubicaciones siguientes:
v Centro de información: http://publib.boulder.ibm.com/infocenter/imzic
v Sitio web de la biblioteca: http://www.ibm.com/software/data/db2imstools/
library.html

Estos recursos incluyen información sobre los siguientes productos y otros distintos:
v DB2 Administration Tool
v DB2 Automation Tool
v DB2 DataPropagator (también denominado WebSphere Replication Server for z/OS)
v DB2 Log Analysis Tool
v DB2 Object Restore Tool
v DB2 Query Management Facility
v DB2 SQL Performance Analyzer
DB2 Universal Database Centro de información: http://www.ibm.com/systems/i/infocenter/
for iSeries
Debug Tool for z/OS Centro de información: http://publib.boulder.ibm.com/infocenter/pdthelp/v1r1/
index.jsp
Enterprise COBOL for Centro de información: http://publib.boulder.ibm.com/infocenter/pdthelp/v1r1/
z/OS index.jsp
Enterprise PL/I for z/OS Centro de información: http://publib.boulder.ibm.com/infocenter/pdthelp/v1r1/
index.jsp
IMS Centro de información: http://publib.boulder.ibm.com/infocenter/imzic

Recursos de información para DB2 for z/OS y productos relacionados 93


Tabla 17. Ubicaciones de recursos de información de productos relacionados (continuación)
Producto relacionado Recursos de información
IMS Tools Una de las ubicaciones siguientes:
v Centro de información: http://publib.boulder.ibm.com/infocenter/imzic
v Sitio web de la biblioteca: http://www.ibm.com/software/data/db2imstools/
library.html

Estos recursos incluyen información sobre los siguientes productos y otros distintos:
v IMS Batch Terminal Simulator for z/OS
v IMS Connect
v IMS HALDB Conversion and Maintenance Aid
v Productos IMS High Performance Utility
v IMS DataPropagator
v IMS Online Reorganization Facility
v IMS Performance Analyzer
PL/I Centro de información: http://publib.boulder.ibm.com/infocenter/pdthelp/v1r1/
index.jsp

Este producto se denomina ahora Enterprise PL/I for z/OS.


System z http://publib.boulder.ibm.com/infocenter/eserver/v1r2/index.jsp
| Tivoli OMEGAMONXE for Centro de información: http://publib.boulder.ibm.com/infocenter/tivihelp/v15r1/
| DB2 Performance Expert index.jsp?topic=/com.ibm.ko2pe.doc/ko2welcome.htm
| on z/OS
En releases anteriores, este producto se denominó DB2 Performance Expert for z/OS.
WebSphere Application Centro de información: http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/
Server index.jsp
WebSphere Message Broker Centro de información: http://publib.boulder.ibm.com/infocenter/wmbhelp/v6r0m0/
with Rules and Formatter index.jsp
Extension
Este producto se denomina también WebSphere MQ Integrator Broker.
WebSphere MQ Centro de información: http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/
index.jsp

El recurso incluye información sobre MQSeries.


WebSphere Replication Una de las ubicaciones siguientes:
Server for z/OS v Centro de información: http://publib.boulder.ibm.com/infocenter/imzic
v Sitio web de la biblioteca: http://www.ibm.com/software/data/db2imstools/
library.html

Este producto se denomina también DB2 DataPropagator.


z/Architecture Sitio del centro de bibliotecas: http://www.ibm.com/servers/eserver/zseries/zos/
bkserv/

94 Novedades
Tabla 17. Ubicaciones de recursos de información de productos relacionados (continuación)
Producto relacionado Recursos de información
z/OS Sitio del centro de bibliotecas: http://www.ibm.com/servers/eserver/zseries/zos/
bkserv/

Este recurso incluye información sobre los siguientes elementos y componentes de


z/OS:
v Character Data Representation Architecture
v Device Support Facilities
v DFSORT
v Fortran
v High Level Assembler
v NetView
v SMP/E for z/OS
v SNA
v TCP/IP
v TotalStorage Enterprise Storage Server
v VTAM
v z/OS C/C++
v z/OS Communications Server
v z/OS DCE
v z/OS DFSMS
v z/OS DFSMS Access Method Services
v z/OS DFSMSdss
v z/OS DFSMShsm
v z/OS DFSMSdfp
v z/OS ICSF
v z/OS ISPF
v z/OS JES3
v z/OS Language Environment
v z/OS Managed System Infrastructure
v z/OS MVS
v z/OS MVS JCL
v z/OS Parallel Sysplex
v z/OS RMF
v z/OS Security Server
v z/OS UNIX System Services
z/OS XL C/C++ http://www.ibm.com/software/awdtools/czos/library/

Los siguientes recursos de información de IBM no son necesariamente específicos


de un único producto:
v Guía de información de DB2 for z/OS; disponible en: http://www.ibm.com/
software/data/db2/zos/roadmap.html
v DB2 Redbooks y Redbooks sobre productos relacionados, disponibles en:
http://www.ibm.com/redbooks
v Recursos de formación de IBM:
– La información acerca de ofertas de formación de IBM está disponible en la
web en la dirección: http://www.ibm.com/software/sw-training/

Recursos de información para DB2 for z/OS y productos relacionados 95


– Hay disponible una colección de glosarios de términos de IBM en varios
idiomas en el sitio web de Terminología de IBM en la dirección:
http://www.ibm.com/software/globalization/terminology/index.jsp
v Información de soporte de idioma nacional, disponible en IBM Publications
Center en la dirección: http://www.elink.ibmlink.ibm.com/public/applications/
publications/cgibin/pbi.cgi
v SQL Reference for Cross-Platform Development; disponible en el siguiente sitio de
developerWorks: http://www.ibm.com/developerworks/db2/library/
techarticle/0206sqlref/0206sqlref.html

Los siguientes recursos de información no han sido publicados por IBM pero
pueden ser de utilidad a los usuarios de DB2 for z/OS y productos relacionados:
v Temas de diseño de bases de datos:
– DB2 for z/OS and OS/390 Development for Performance Volume I, by Gabrielle
Wiorkowski, Gabrielle & Associates, ISBN 0-96684-605-2
– DB2 for z/OS and OS/390 Development for Performance Volume II, by Gabrielle
Wiorkowski, Gabrielle & Associates, ISBN 0-96684-606-0
– Handbook of Relational Database Design, by C. Fleming and B. Von Halle,
Addison Wesley, ISBN 0-20111-434-8
v Especificaciones de Distributed Relational Database Architecture (DRDA);
http://www.opengroup.org
v Sistema de nombres de dominio: DNS and BIND, Third Edition, Paul Albitz and
Cricket Liu, O’Reilly, ISBN 0-59600-158-4
v Información de Microsoft Open Database Connectivity (ODBC);
http://msdn.microsoft.com/library/
v Información de Unicode; http://www.unicode.org

96 Novedades
Cómo obtener información de DB2
Puede acceder a la información oficial sobre el producto DB2 de varias formas.
v “DB2 en la web”
v “Información sobre el producto DB2”
v “Formación sobre DB2” en la página 98
v “Cómo solicitar la biblioteca de DB2” en la página 98

DB2 en la web

Procure estar al corriente de la información más reciente sobre DB2 visitando la


página inicial de DB2 en la web:

www.ibm.com/software/db2zos

En la página inicial de DB2, puede encontrar enlaces a una gran variedad de


recursos de información sobre DB2. Puede leer artículos de noticias que le
mantendrán informado sobre las mejoras más recientes del producto. Los anuncios
de productos, los anuncios de prensa, los folletos y los artículos técnicos le
ayudarán a planificar e implementar la estrategia de gestión de bases de datos.

Información sobre el producto DB2

La información oficial de DB2 para z/OS está disponible en diversos formatos y


métodos de entrega. IBM proporciona actualizaciones entre versiones respecto a la
información mediante actualizaciones del Centro de información y en copia
software que encontrará disponibles en la web y en CD-ROM.
Centro de información de Information Management Software for z/OS
Solutions
La información sobre el producto DB2 la puede consultar en el Centro de
información, que es el principal vehículo de entrega por lo que a
información respecta sobre DB2 para z/OS, IMS, QMF y las herramientas
relacionadas. Este Centro de información le permite buscar información
relacionada con el producto en diversos idiomas para obtener soluciones
de gestión de datos para el entorno de z/OS así como imprimir temas
individuales o conjuntos de temas relacionados. También puede acceder,
descargar e imprimir los PDF de las publicaciones que están asociadas a
los temas del Centro de información. Se proporciona información técnica
del producto en un formato que ofrece diversas opciones y herramientas
de acceso, integración y personalización de los recursos de la información.
El Centro de información se basa en la tecnología de código abierto de
Eclipse.
El Centro de información de Information Management Software for z/OS
Solutions se puede consultar en el siguiente sitio web:

http://publib.boulder.ibm.com/infocenter/imzic
CD-ROM y DVD
Las publicaciones de DB2 están disponibles en un CD-ROM que se incluye
con el envío del producto:
v DB2 V9.1 for z/OS Licensed Library Collection, LK3T-7195, en inglés

© Copyright IBM Corp. 2007, 2008 97


El CD-ROM contiene la recopilación de las publicaciones de DB2 V9.1 para
z/OS en los formatos PDF y BookManager. IBM renueva periódicamente
las publicaciones en ediciones posteriores de este CD-ROM.
Las publicaciones de DB2 para z/OS también están disponibles en los
siguientes kits de colecciones de CD-ROM y DVD, que contienen
publicaciones en línea para la mayoría de productos de IBM:
v IBM z/OS Software Products Collection , SK3T-4270, en inglés
v IBM z/OS Software Products DVD Collection , SK3T–4271, en inglés
Formato PDF
Muchas de las publicaciones de DB2 están disponibles en formato PDF
(Portable Document Format) para consultarlas o imprimirlas desde un
CD-ROM o desde la página inicial de DB2 en el sitio web o desde el
Centro de información. Descargue las publicaciones en formato PDF en la
intranet para distribuirlas por su empresa.
Formato BookManager
Puede utilizar las publicaciones en línea en CD-ROM para leer y efectuar
búsquedas en las publicaciones, imprimir partes del texto y tomar notas en
estas publicaciones BookManager. Mediante IBM Softcopy Reader, los
correspondientes IBM Library Readers o el producto BookManager Read,
puede ver estar publicaciones en los entornos z/OS, Windows y VM.
También puede ver y buscar la mayoría de las publicaciones de DB2 en
formato BookManager en la web.

Formación sobre DB2

IBM Education and Training ofrece una gran variedad de cursos que le ayudarán
de forma rápida y eficaz a tener experiencia con DB2. IBM planifica cursos en
todas las ciudades del mundo. Puede encontrar información sobre los cursos,
según su país, en el sitio web IBM Learning Services:

www.ibm.com/services/learning

IBM también ofrece clases en su emplazamiento, a la hora que más le convenga.


IBM puede personalizar cursos para que se ajusten a sus requisitos exactos. Para
obtener más información, incluida la planificación local actual, póngase en contacto
con el representante de IBM.

Cómo solicitar la biblioteca de DB2

Para solicitar publicaciones, visite IBM Publication Center (el centro de


publicaciones) en la web:

www.elink.ibmlink.ibm.com/public/applications/publications/cgibin/pbi.cgi

Desde IBM Publication Center, puede ir al sistema de notificación de publicaciones


(PNS - Publication Notification System). Los usuarios de PNS reciben avisos por
correo electrónico de las publicaciones actualizadas en sus perfiles. Tiene la
posibilidad de solicitar las actualizaciones utilizando la aplicación de solicitud
directa de publicaciones o cualquier otro canal para solicitar publicaciones de IBM.
La aplicación PNS no realiza envíos automáticos de las publicaciones. El usuario
recibirá las publicaciones actualizadas y una factura de las mismas si responde al
aviso por correo electrónico.

98 Novedades
También puede solicitar las publicaciones y CD-ROM de DB2 a través del
representante de IBM o de la sucursal de IBM en su localidad. Si se encuentra en
Estados Unidos o en Canadá, puede realizar la solicitud llamando a uno de los
números de teléfono de llamada gratuita:
v En Estados Unidos, llame al 1-800-879-2755.
v En Canadá, llame al 1-800-426-4968.

Para solicitar copias adicionales de publicaciones con licencia, especifique la opción


SOFTWARE. Para solicitar publicaciones o CD-ROM adicionales, especifique la
opción PUBLICATIONS. Tenga preparada la información del número de cliente, el
número del producto y los códigos de dispositivo o los números de pedido que
desee.

Cómo obtener información de DB2 99


Cómo utilizar la biblioteca de DB2
Los títulos de las publicaciones en la biblioteca comienzan por DB2 Version 9.1 for
z/OS. Sin embargo, las referencias de una publicación de la biblioteca a otra se
abrevian y no incluyen el nombre del producto, la versión ni el release. En cambio,
apuntan directamente a la sección que trata la información en cuestión.

| Si es un usuario novel de DB2 para z/OS, la publicación Introduction to DB2 for


| z/OS proporciona una introducción exhaustiva a DB2 Version 9.1 for z/OS. Los
| temas que se incluyen en esta publicación explican los conceptos básicos que están
| asociados a los sistemas de gestión de bases de datos relacionales en general y a
| DB2 para z/OS en particular.

La tarea más gratificante relacionada con un sistema de gestión de bases de datos


es formular preguntas y obtener respuestas, esta tarea se denomina uso final. Hay
otras tareas que también necesitan parámetros de definición del sistema, colocación
de los datos en su lugar, etcétera. Las tareas que están asociadas a DB2 se agrupan
en estas categorías principales.

Instalación

Si participa en DB2 solamente para instalar el sistema, la publicación DB2


Installation Guide puede resultarle muy útil.

Si va a utilizar los recursos de compartición, también necesitará la publicación DB2


Data Sharing: Planning and Administration, que describe las consideraciones acerca
de la instalación para compartir datos.

Uso final

Los usuarios finales emiten sentencias SQL para recuperar datos. También insertan,
actualizan o suprimen datos, con sentencias SQL. Es posible que necesiten una
introducción a SQL, instrucciones detalladas para utilizar SPUFI y una referencia
por orden alfabético a los tipos de sentencias SQL. Esta información la encontrará
en las publicaciones DB2 Application Programming and SQL Guide y DB2 SQL
Reference.

Los usuarios finales también pueden emitir sentencias SQL a través de DB2 Query
Management Facility (QMF) o algún que otro programa, y la biblioteca de ese
programa bajo licencia proporciona todo el material de instrucciones o de consulta
que puedan necesitar. Si desea una lista de los títulos de la biblioteca DB2 QMF,
consulte la bibliografía que encontrará al final de esta publicación.

Programación de aplicaciones

Algunos usuarios acceden a DB2 sin saberlo, utilizando programas que contienen
sentencias SQL. Los programadores de aplicaciones DB2 escriben estos programas.
Puesto que escriben sentencias SQL, necesitan los mismos recursos que los
usuarios finales.

Los programadores de aplicaciones también necesitan instrucciones para muchos


otros temas:

© Copyright IBM Corp. 2007, 2008 101


v Cómo transferir datos entre DB2 y un programa de sistema principal escrito en
Java, C o COBOL, por ejemplo
v Cómo preparar la compilación de un programa que incluye sentencias SQL
v Cómo procesar los datos desde dos sistemas de forma simultánea, por ejemplo,
DB2 e IMS o DB2 y CICS
v Cómo escribir aplicaciones distribuidas a través de sistemas operativos
v Cómo escribir aplicaciones que utilicen Open Database Connectivity (ODBC)
para acceder a los servidores de DB2
| v Cómo escribir aplicaciones que utilicen JDBC y SQLJ con el lenguaje de
| programación Java para acceder a los servidores de DB2
| v Cómo escribir aplicaciones para almacenar datos XML en servidores de DB2 y
| cómo recuperar datos XML a partir de los servidores de DB2.

El material necesario para escribir un programa de sistema principal que contenga


SQL lo encontrará en la publicación DB2 Application Programming and SQL Guide.

| El material necesario para escribir aplicaciones que utilicen JDBC y SQLJ para
| acceder a los servidores de DB2 lo encontrará en la publicación DB2 Application
| Programming Guide and Reference for Java. El material necesario para escribir
| aplicaciones que utilicen CLI o ODBC de DB2 para acceder a los servidores de DB2
| lo encontrará en la publicación DB2 ODBC Guide and Reference. El material
| necesario para trabajar con datos XML en DB2 lo encontrará en la publicación DB2
| XML Guide. Para gestionar errores, consulte las publicaciones DB2 Messages y DB2
| Codes.

Si va a trabajar en un entorno distribuido, necesitará la publicación DB2 Reference


for Remote DRDA Requesters and Servers.

La información sobre cómo escribir aplicaciones en sistemas operativos la


encontrará en la publicación IBM DB2 SQL Reference for Cross-Platform Development.

Administración del sistema y de la base de datos


Administración trata casi todos estos temas. La publicación DB2 Administration Guide
divide algunas de estas tareas en las secciones siguientes:
v Conceptos de DB2: presenta las estructuras de DB2, el entorno de DB2 y una
elevada disponibilidad.
v Diseño de una base de datos: trata las decisiones que se deben tomar cuando se
diseña una base de datos y le indica cómo implementar el diseño creando y
modificando objetos de DB2, cargando datos y realizando ajustes de cambios.
v Seguridad y auditoría: describe formas de controlar el acceso al sistema DB2 y a
los datos de DB2, para realizar una auditoría de aspectos sobre el uso de DB2 y
para responder a otros temas sobre seguridad y auditoría.
v Funcionamiento y recuperación: describe los pasos del funcionamiento normal
diario y trata los pasos que se deberían llevar a cabo para prepararse para la
recuperación en el caso que se produjera alguna anomalía.

La publicación DB2 Performance Monitoring and Tuning Guide explica cómo


supervisar el rendimiento del sistema DB2 y sus partes. También ofrece una lista
de cosas que se pueden hacer para que algunas partes se ejecuten más
rápidamente.

102 Novedades
Si va a utilizar el módulo de control de accesos de RACF para realizar la
comprobación de autorizaciones de DB2, necesitará la publicación DB2 RACF
Access Control Module Guide.

Si participa en DB2 solamente para diseñar la base de datos o planificar


procedimientos operativos, necesitará la publicación DB2 Administration Guide. Si
también desea llevar a cabo sus propios planes creando objetos de DB2,
garantizando privilegios, ejecutando trabajos de programas de utilidad, etcétera,
también necesitará:
v La publicación DB2 SQL Reference que describe las sentencias SQL que se
utilizan para crear, modificar y descartar objetos y garantizar y revocar
privilegios.
v La publicación DB2 Utility Guide and Reference, que explica cómo ejecutar los
programas de utilidad
v La publicación DB2 Command Reference, que explica cómo ejecutar mandatos

Si va a utilizar la compartición de datos, necesitará la publicación DB2 Data


Sharing: Planning and Administration, que describe cómo planificar e implementar la
compartición de datos.

Si desea información adicional sobre la administración del sistema y de la base de


datos, la encontrará en las publicaciones DB2 Messages y DB2 Codes, que ofrecen
una lista de mensajes y códigos emitidos por DB2, con explicaciones y respuestas
sugeridas.

Diagnóstico

Los diagnosticadores detectan y describen errores en el programa DB2. También


pueden realizar alguna recomendación o aplicar algún remedio. La documentación
para esta tarea la encontrará en las publicaciones DB2 Diagnosis Guide and Reference,
DB2 Messages y DB2 Codes.

Cómo utilizar la biblioteca de DB2 103


Glosario
| formato de fila básico
| Formato de fila en el que se almacenan valores para las columnas en la fila
| en el orden en el que la sentencia CREATE TABLE define las columnas.
| objeto de réplica
| Objeto asociado con una tabla de réplica, incluida la propia tabla de réplica
| y las restricciones de comprobación, índices y desencadenantes BEFORE en
| la tabla de réplica.
| tabla de réplica
| Tabla estructuralmente idéntica a una tabla base. La tabla base y la tabla de
| réplica tienen archivos VSAM distintos, identificados por sus números de
| instancia de archivo.
DOCID
Véase ID de documento.
| ID de documento
| Valor que identifica exclusivamente una fila que contiene una columna
| XML. Este valor se almacena con la fila y no cambia nunca.
Extensible Markup Language (XML)
Metalenguaje estándar para definir lenguajes de marcación que es un
subconjunto de Standardized General Markup Language (SGML).
| variable de referencia a archivo
| Variable de lenguaje principal declarada con uno de los tipos de datos
| derivados (BLOB_FILE, CLOB_FILE, DBCLOB_FILE); las variables de
| referencia a archivo gobiernan la lectura o escritura de un LOB en un
| archivo.
| estadísticas de histograma
| Forma de resumen la distribución de datos. Esta técnica divide el rango de
| valores posibles en un archivo en intervalos, de tal forma que cada
| intervalo contiene aproximadamente el mismo porcentaje de los valores.
| Para cada intervalo se recopila un conjunto de estadísticas.
Procesador integrado IBM System z9 (zIIP)
| Procesador especializado que se puede utilizar para algunas funciones de
| DB2.
| desencadenante INSTEAD OF (en lugar de)
| Desencadenante asociado con una única vista y activado por una operación
| de inserción, actualización o supresión en la vista y que puede definir para
| propagar la operación de inserción, actualización o supresión en la vista a
| las tablas subyacentes de la vista.
| intersección
| Operación de SQL que implica al operador de conjunto INTERSECT, que
| combina dos tablas de resultados. El resultado de una operación de
| intersección consta de todas las filas que están en ambas tablas de
| resultados.
| procedimiento nativo de SQL
| Procedimiento de SQL que se procesa convirtiendo las sentencias de
| procedimiento a una representación nativa almacenada en el directorio de
| base de datos, como se realiza con otras sentencias de SQL. Cuando se

© Copyright IBM Corp. 2007, 2008 109


| invoca un procedimiento de SQL nativo, se carga la representación nativa
| contenida en el directorio y DB2 ejecuta el procedimiento.
| proceso analítico en línea (OLAP)
| Proceso de recopilar datos de una o varias fuentes; transformar y analizar
| los datos consolidados de forma rápida e interactiva; y examinar los
| resultados entre distintas dimensiones de los datos buscando patrones,
| tendencias y excepciones en relaciones complejas de esos datos.
| espacio de tablas de crecimiento por partición
| Espacio de tablas cuyo tamaño puede aumentar para acomodar el
| crecimiento de los datos. DB2 para z/OS gestiona espacios de tablas de
| crecimiento por partición añadiendo automáticamente nuevos archivos
| cuando la base de datos necesita más espacio para satisfacer una operación
| de inserción.
espacio de tablas particionado
| Espacio de tablas basado en una única tabla y que está subdividido en
| particiones, cada una de las cuales puede ser procesada
| independientemente por programas de utilidad.
índice de particionamiento
Índice en el que las columnas situadas más a la izquierda son las columnas
de particionamiento de la tabla. El índice puede estar particionado o no
particionado.
| espacio de tablas particionado por rangos
| Tipo de espacio de tablas universal basado en rangos de particionamiento
| y que contiene una única tabla.
esquema relacional
Véase esquema SQL.
| formato de fila reordenado
| Formato de fila que facilita el rendimiento mejorado en recuperación de
| filas que tienen columnas de longitud variable. DB2 reorganiza el orden de
| las columnas, tal como está definido en la sentencia CREATE TABLE, de
| forma que las columnas de longitud fija se almacenan al principio de la fila
| y las columnas de longitud variable se almacenan al final de la fila.
| rol Entidad de base de datos que agrupa conjuntamente uno o más privilegios
| y que puede ser asignada a un ID de autorización primario o a PUBLIC. El
| rol está disponible sólo en un contexto fiable.
espacio de tablas segmentado
Espacio de tablas que está dividido en grupos de páginas de igual tamaño
llamados segmentos. Los segmentos se asignan a tablas de modo que las
filas de tablas diferentes no se guarden nunca en el mismo segmento.
| esquema de SQL
| Colección de objetos de base de datos tales como tablas, vistas, índices,
| funciones, tipos diferenciados, esquemas o desencadenantes que definen
| una base de datos. Un esquema de SQL proporciona una clasificación
| lógica de objetos de base de datos.
| ID de autorización del sistema
| ID de autorización principal de DB2 que se utiliza para establecer una
| conexión fiable. ID de autorización del sistema derivado del ID de usuario
| del sistema proporcionado por una entidad externa, como por ejemplo un
| servidor middleware.

110 Novedades
| atributo fiable
| Atributo en el que establecer la confianza. Una relación fiable se estable en
| base a uno o varios atributos fiables.
| conexión fiable
| Conexión de base de datos cuyos atributos coinciden con los atributos de
| un contexto fiable exclusivo definido en el servidor de bases de datos de
| DB2.
| reutilización de conexión fiable
| Capacidad de conmutar el ID de usuario actual en una conexión fiable a
| un ID de usuario distinto.
| contexto fiable
| Objeto de seguridad de base de datos que permite el establecimiento de
| una relación fiable entre un sistema de gestión de bases de datos de DB2 y
| una entidad externa.
| rol por omisión de contexto fiable
| Rol asociado con un contexto fiable. Los privilegios otorgados al rol por
| omisión de contexto fiable se pueden adquirir sólo cuando se establece o
| reutiliza una conexión fiable basada en el contexto fiable.
| usuario de contexto fiable
| ID de usuario al que está permitido conmutar el ID de usuario actual en
| una conexión fiable.
| rol específico de usuario de contexto fiable
| Rol asociado con un usuario específico de contexto fiable. Altera
| temporalmente el rol por omisión de contexto fiable si el ID de usuario
| actual en la conexión fiable coincide con el ID del usuario de contexto
| fiable específico.
| relación fiable
| Relación privilegiada entre dos entidades tales como un servidor
| middleware y un servidor de bases de datos. Esta relación permite un
| conjunto exclusivo de interacciones entre dos entidades que sería imposible
| de otra forma.
| espacio de tablas universal
| Espacio de tablas que está segmentado y particionado.
| enclave de WLM
| Construcción que puede abarcar varias unidades susceptibles de envío
| (tareas y bloqueos de petición de servicio) en varios espacios de
| direcciones, permitiendo que se informe sobre las mismas y sean
| gestionadas por WLM como parte de una única petición de trabajo.
XML Véase Extensible Markup Language.
atributo de XML
Par nombre-valor contenido en un elemento de XML con identificadores
que modifica ciertas características del elemento.
| Columna XML
| Columna de una tabla que almacena XML y se define utilizando el XML
| de tipo de datos. Los valores de XML que están almacenados en columnas
| XML son representaciones internas de documentos XML correctamente
| formados.
| Tipo de datos XML
| Tipo de datos con valores XML.

Glosario 111
elemento de XML
Estructura lógica de un documento en XML que está delimitada por un
identificador de inicio y un identificador de fin. Cualquier elemento entre
el código de inicio y el código de finalización es el contenido del elemento.
| índice XML
| Índice en una columna XML que proporciona acceso eficaz a nodos en un
| documento XML proporcionado claves de índice basadas en patrones XML.
| Bloqueo XML
| Bloque a nivel de columna para datos XML. La operación de bloqueos
| XML es similar al funcionamiento de bloqueos de LOB.
Nodo de XML
La unidad más pequeña de estructura completa válida de un documento.
Por ejemplo, un nodo puede representar un elemento, un atributo una
serie de texto.
| índice de ID de nodo XML
| Índice creado implícitamente, en una tabla de XML que proporciona acceso
| eficaz a documentos XML y navegación entre varias filas de datos XML en
| el mismo documento.
| Patrón XML
| Lista de nombres de elemento, separados por barras inclinadas, un nombre
| de atributo opcional (al final) o pruebas de clase, que describen una vía de
| acceso en un documento XML en una columna XML. El patrón es una
| forma restrictiva de expresiones de vía de acceso y seleccionada nodos que
| coinciden con las especificaciones. Los patrones XML se especifican para
| crear índices en columnas XML en una base de datos.
Función de publicación de XML
| Función que devuelve un valor XML de los valores de SQL. Una función
| de publicación de XML también se denomina constructor de XML.
| Esquema XML
| En XML, mecanismo que describe y restringe el contenido de los archivos
| XML indicando qué elementos están permitidos y en qué combinaciones.
| Los esquemas de XML son una alternativa a las definiciones de tipo de
| documentos (las DTD) y se pueden utilizar para ampliar la funcionalidad
| en las áreas de especificación de datos, herencia y presentación.
| repositorio de esquema XML (XSR)
| Repositorio que permite que el sistema de base de datos de DB2 almacene
| esquemas de XML. Cuando están registrados con el XSR, estos objetos
| tienen un identificador exclusivo y se puede utilizar para validar
| documentos de instancia de XML.
| Función de serialización de XML
| Función que devuelve una serie de XML serializada de un valor XML.
| Tabla de XML
| Tabla auxiliar que se crea implícitamente cuando una columna XML se
| añade a una tabla base. Esta tabla almacena los datos XML y la columna
| en la tabla base apunta a la misma.
| Espacio de tablas XML
Espacio de tablas que se crea implícitamente cuando una columna XML se
añade a una tabla base. El espacio de tablas almacena la tabla XML. Si la
tabla base está particionada, existe un espacio de tablas particionadas para
cada columna XML de datos.

112 Novedades