Dimensionamiento de las CPU para transacciones paralelas

Las transacciones de una sola partición dimensionan el rendimiento de forma lineal a medida que la cuadrícula de datos va creciendo. Las transacciones paralelas son distintas de las transacciones de una sola partición porque afectan a un conjunto de los servidores (puede tratarse de todos los servidores).

Si una transacción afecta a todos los servidores, el rendimiento se limita al rendimiento del cliente que inicia la transacción o el servidor más lento que resulta afectado. Las cuadrículas de datos más grandes esparcen los datos más y proporcionan más espacio de procesador, memoria, red, etc. No obstante, el cliente debe esperar a que el servidor más lento responda, y el cliente debe hacer uso los resultados de la transacción.

Cuando una transacción afecta a un subconjunto de servidores, M de N servidores obtienen una solicitud. A continuación el rendimiento será N dividido por M veces más rápido que el rendimiento del servidor más lento. Por ejemplo, si tiene 20 servidores y una transacción que afecta a 5 servidores, el rendimiento es 4 veces el rendimiento del servidor más lento de la cuadrícula de datos.

Cuando una transacción paralela finaliza, los resultados se envían a la hebra de cliente que ha iniciado la transacción. Este cliente deberá agregar los resultados con una sola hebra. Este tiempo de agregación aumenta a medida que aumenta el número de servidores afectados por la transacción. No obstante, esta vez depende de la aplicación porque es posible que cada servidor devuelva aun resultado más pequeño a medida que va creciendo la cuadrícula de datos.

Normalmente, las transacciones paralelas afectan a todos los servidores en la cuadrícula de datos porque las particiones se distribuyen de forma uniforme por la cuadrícula. En este caso, el rendimiento se limita al primer caso.

Resumen

Con este dimensionamiento, tiene tres medidas, del modo siguiente. Si necesita 10 servidores para los requisitos de memoria, pero sólo obtiene el 50% del rendimiento necesario debido a la saturación en el procesador, necesitará el doble de servidores.

Para obtener la estabilidad más alta, debe ejecutar los servidores al 60% de la carga de procesador y los almacenamientos dinámicos deJVM al 60% de la carga de almacenamiento dinámico. Los picos de utilización pueden conducir al uso del procesador a un 80–90%, aunque de forma habitual no debe ejecutar los servidores a niveles más altos que éstos.