Espacios de tablas particionados (no UTS) (en desuso)

Un espacio de tabla que se particiona almacena una única tabla. Db2 divide el espacio de tablas en particiones.

Recomendación: Los espacios de tabla particionados (non-UTS) están en desuso. Están soportados en Db2 12, pero es posible que se eliminen en el futuro. Convierta los espacios particionados (no UTS) exsistentes en espacios de tabla de partición-por-rango (UTS) lo antes posible. Migración de espacios de tablas particionados (no UTS) a espacios de tabla de partición por rango (Db2 Utilities Development Blog)

Las particiones se basan en los valores de límite definidos para columnas específicas. Los programas de utilidad y sentencias de SQL pueden ejecutarse simultáneamente en cada partición.

En la figura siguiente cada partición contiene una parte de una tabla.

Figura 1. Páginas de un espacio de tablas particionado
Inicio de la descripción de la figura. Esta figura muestra un espacio de tablas particionado, donde cada partición contiene una parte de una tabla. Final de la descripción de la figura.

Definición de espacios de tabla particionados (no UTS)

Si crea un espacio de tablas especificando NUMPARTS sin especificar las opciones SEGSIZE o MAXPARTITIONS, Db2 crea un espacio de tablas universal particionado por rangos en vez de un espacio de tablas particionado que no está segmentado. El valor SEGSIZE por omisión del espacio de tablas es 32.

Características de espacios de tabla particionados (no UTS)

Los espacios de tabla particionados (no UTS) comparten las características siguientes:

  • Se puede planificar el crecimiento. Cuando se define un espacio de tablas particionado, Db2 normalmente distribuye los datos uniformemente entre las particiones. Con el tiempo, la distribución de los datos puede volverse desigual a medida que se producen inserciones y supresiones.

    Se pueden volver a equilibrar los datos entre las particiones redefiniendo los límites de particiones sin ningún impacto en la disponibilidad. También puede se añadir una partición a la tabla y a cada índice particionado de la tabla: la nueva partición estará disponible inmediatamente.

  • Se puede dividir una tabla grande entre varios conjuntos de datos o grupos de almacenamiento de Db2. No todas las particiones de la tabla necesitan usar el mismo grupo de almacenamiento.
  • Los espacios de tablas particionados permiten que un trabajo de programa de utilidad trabaje en una parte de los datos mientras que se permite que otras aplicaciones accedan simultáneamente a los datos de otras particiones. De este modo, varios trabajos de programa de utilidad simultáneos pueden, por ejemplo, cargar simultáneamente todas las particiones de un espacio de tablas. Puesto que se puede trabajar en una parte de los datos, algunas de las operaciones en los datos pueden necesitar menos tiempo.
  • Puede utilizar trabajos separados para operaciones masivas de actualización, supresión o inserción, en lugar de utilizar un trabajo grande; cada trabajo pequeño puede trabajar en una partición diferente. La separación del trabajo grande en varios trabajos más pequeños que se pueden ejecutar simultáneamente puede reducir el tiempo transcurrido para la tarea global.

    Si el espacio de tablas utiliza índices no particionados, puede que sea necesario modificar el tamaño de los conjuntos de datos en los índices para evitar que se produzca contienda de E/S entre trabajos que se ejecutan simultáneamente. Utilice el parámetro PIECESIZE de la sentencia CREATE INDEX o ALTER INDEX para modificar los tamaños de los conjuntos de datos de índices.

  • Se pueden colocar los datos a los que se accede con frecuencia en dispositivos más rápidos. Evalúe si el particionamiento de tablas o el particionamiento de índices puede separar más datos frecuentemente accedidos del resto de la tabla. Se pueden colocar los datos frecuentemente accedidos en una partición para ellos. También se puede utilizar un tipo de dispositivo diferente.
  • Se puede beneficiar del paralelismo en determinadas consultas de sólo lectura. Cuando Db2 determina que el proceso probablemente será grande, puede iniciar el proceso en paralelo de más de una partición a la vez. El proceso en paralelo (para consultas de sólo lectura) es más eficaz cuando se dividen las particiones entre diferentes volúmenes de disco y se permite que cada sistema de E/S funcione en un canal separado.

    Utilice la tecnología de compartimiento de datos Sysplex paralelo para procesar una única consulta de sólo lectura entre varios subsistemas Db2 de un grupo de compartimiento de datos. Se puede optimizar el proceso de consultas de Sysplex paralelo situando cada subsistema Db2 en un complejo central de procesadores separado.

  • Las exploraciones de tabla particionada a veces son menos eficaces que las exploraciones de espacio de tablas de espacios de tablas segmentados.
  • Db2 abre más conjuntos de datos cuando se accede a datos de un espacio de tablas particionado que cuando se accede a datos de otros tipos de espacios de tablas.
  • Los índices no particionados y los índices secundarios particionados de datos a veces son una desventaja para espacios de tablas particionados.