Sistema Mainframe ¿Cómo reducir Volumen de Datos Tratados?

Home / Blog / Sistema Mainframe ¿Cómo reducir Volumen de Datos Tratados?

Desde hace ya algunos años, una de las mayores preocupaciones de los CIOs de las principales entidades del mundo era el aumento del consumo de MIPS de las instalaciones en sus sistemas mainframe.

Así lo corroboraba un estudio realizado por Vanson Bourne en diciembre de 2012. En este estudio se señalaba como una de las principales causas del aumento del consumo, a los contratos de servicios de outsourcing para el desarrollo de aplicaciones y mantenimiento de sus sistemas mainframe, donde el 71% de los CIOs declaraban sentirse frustrados por los costes ocultos de este tipo de contratos, cuando el objetivo último de ellos era, precisamente, reducir los costes de estos entornos. Esta preocupación ha aumentado en el seno de la mayoría de las entidades con sistemas de mainframe. No obstante, no vamos a adentrarnos en este post en el análisis de estos problemas, aunque sí detallaremos uno de nuestros casos de éxito para afrontar el desafío principal: El ahorro en el consumo de MIPS.

En mi post de enero de 2014, explicaba cómo al utilizar LOAD RESUME en lugar de sentencias SQL masivas, conseguíamos importantes ahorros en CPU y ELAPSED en un sistema mainframe. En este artículo explicaremos cómo hemos conseguido ahorros en el consumo con acciones concretas pero desde una visión global.

Tras varios años de experiencia en el análisis de mainframe, hemos comprobado que una de las problemáticas que mayor beneficio generan en las instalaciones de nuestros clientes, es la reducción del volumen de datos tratados, con el objetivo de reducir tanto el consumo de CPU como el tiempo de ELAPSED.

 

68,3% ahorro en CPU

77,8% ahorro en Elapsed

Aunque parezca obvia la frase de “utilizar únicamente los datos que sean necesarios para el correcto funcionamiento del proceso”, en muchos procesos se observa una gran cantidad de datos superfluos que ralentizan los mismos. El problema radica en el diseño y análisis de los procesos, así como en la falta de revisión para que estos utilicen los datos mínimos y se optimice el uso de MIPS del sistema.

Nosotros hemos aplicado en nuestros clientes mejoras en las que utilizando solo los datos requeridos, se producen resultados con un elevado ahorro. Por ejemplo, En un proceso mensual de uno de nuestros clientes, el fichero de entrada trataba todos los registros de sus clientes para realizar una serie de cálculos con todos los registros. No obstante, este cálculo se repetía todos los meses para aquellos clientes cuyos datos no habían variado. Por tanto, se planteó que únicamente se procesaran aquellos registros que hubieran sido modificados o añadidos durante el último mes, entrando al proceso aquellos registros que hubieran cambiado sus datos.  De esta forma, los registros a tratar serían los nuevos entre el mes en curso y el anterior.

En concreto, tras las modificaciones comentadas anteriormente, se consiguió reducir un 68,24% el tiempo de la CPU, llegando a reducir 904 segundos, y en el tiempo de ELAPSED se han obtenido ahorros de 3.355 segundos, un 77,85%:

Reducción

La reducción del volumen de datos tratados es solo una de las problemáticas en los procesos mainframe, existen diferentes orígenes que requerirán en cada caso acciones concretas. Únicamente con una solución global donde se centralicen todos los posibles problemas y orígenes y donde se pueda analizar las soluciones óptimas, se podrá contener este aumento de consumo de MIPS, mediante la optimización, el rendimiento y ahorro de costes en sistemas mainframe.

 

Autor: Jesús Fernández, Equipo de Analistas de Orizon Consulting

Related Posts
Showing 5 comments
  • Avatar
    Luis San Martin

    Hola, tienes entre tus conocimientos la formula como calcular el consumo de MIPS de un proceso sabiendo su CPU Time y ELAPSED Time?

    Desde ya, gracias

    • Avatar
      Jesús Fernández

      Hola, Luís,

      Para poder calcular el consumo de MIPS de un proceso, existen dos alternativas. Hay que tener activados los registros correspondientes del SMF o bien, conociendo el tipo de máquina de la que se dispone, se podría realizar un cálculo conociendo la CPU Time.

      Gracias a ti,

      saludos

  • Avatar
    Martin Hernandez

    buen dia, yo trabajo con un sistema IBM mainframe, mi area de sistemas esta haciendo revisiones de procesos y detectaron que en algunos programas el consumo de CPU es un poco alto, por que un programa puede consumir mucho CPU? su tiempo de ejecucion realmente no es muy significativo pero se eleva este parametro. que accion se puede tomar en estos casos?

    • Avatar
      Jesús Fernández

      Un programa puede consumir mucha CPU por diversos motivos, aunque que el tiempo de ejecución y CPU sean parecidos significa que se está aprovechando toda la máquina. Un consumo de CPU alto se puede deber al alto volumen de registros tratados, a accesos ineficientes a bases de datos, a una codificación ineficiente del programa, etc… si nos dieras más información podríamos ayudarte.

      Gracias por contactar y si quieres que te expliquemos nuestros servicios y como lo hacemos, estaríamos encantados

  • Avatar
    Jessica Trejo

    Buen día,

    Como se podría interpretar en dinero ($ pesos) el ahorro que se realizó en CPU Time o MIPS o Elapsed time?

Leave a Comment

Límite de tiempo se agote. Por favor, recargar el CAPTCHA por favor.

Orizonnosotros