Selección de partición utilizando claves altas

Si utiliza el particionamiento de clave alta, las claves altas definen los límites de partición y determinan cómo se distribuyen los registros entre las particiones.

IMS realiza la selección de partición basándose en la clave alta definida para cada partición. La clave alta de una partición también define el rango de claves que contiene la partición. IMS asigna un segmento raíz a la partición con la clave alta más baja que es mayor o igual que la clave del segmento raíz. Por ejemplo, supongamos que hay tres particiones con claves altas de 1000, 2000 y 3000. Las claves de segmento raíz de 1001 a 2000 están en la partición con una clave alta de 2000.

Las claves altas de las particiones también definen el orden de las particiones dentro de la base de datos HALDB.

El particionamiento de alta clave es el método más sencillo de implementar porque no tiene que escribir una rutina de salida. Sólo es necesario asignar una clave alta a cada partición.

En las bases de datos PHIDAM y PSINDEX que utilizan el particionamiento de alta clave, los registros están en secuencia de claves en toda la base de datos, al igual que en las bases de datos de índice secundarias HIDAM y no HALDB. En las bases de datos PHIDAM o PSINDEX que utilizan una rutina de salida de selección de partición, los registros están en secuencia de claves dentro de una partición, pero no necesariamente entre particiones, lo que hace que estas bases de datos sean incoherentes con las bases de datos de índice secundarias HIDAM y no HALDB. Los programas de aplicación que requieren que los registros de base de datos estén en secuencia de teclas entre particiones no funcionan correctamente cuando se utiliza una rutina de salida de selección de partición.

Recomendación: Cuando utilice el particionamiento de clave alta, especifique un valor de clave alta de todos los X'FF para la partición que tenga la clave alta más alta de la base de datos. Un valor de clave alto de todos los X'FF garantiza que todas las claves se pueden asignar a una partición. Si la última partición (la partición con la clave más alta especificada) tiene un valor de clave distinto de todos los X'FF ', cualquier intento de acceder o insertar un registro de base de datos con una clave superior a la clave alta especificada da como resultado un código de estado FM para la llamada. Es poco probable que los programas de aplicación escritos para bases de datos no HALDB puedan procesar el código de estado de FM.