Clariba SAP BusinessObjects BI Benchmark Solution: una forma de medir el rendimiento de su SAP BI Platform

Como partners expertos en el área de SAP Analytics hemos tenido en múltiple ocasiones la necesidad de disponer de una herramienta que permitiera medir el rendimiento de un servidor de SAP BusinessObjects BI (SAP BOBJ) al gestionar más y más datos o más y más usuarios. La necesidad era poder medir de forma científica y contrastable el rendimiento de un sistema SAP BusinessObjects y compararlo con otros servidores o bien el impacto de cambios en la configuración en el rendimiento del mismo.

Para conseguir este benchmark hemos usado la utilidad JMeter de Apache Software Foundation junto con los plugins que pone a disposición su comunidad. Seguidamente hemos aplicado nuestros conocimientos expertos de BI para analizar los resultados. Finalmente hemos desarrollado una batería de tests con la finalidad de analizar diferente escenarios y casos de uso los cuales pueden ser adaptados a las necesidades de los clientes. El resultado es la Clariba SAP BusinessObjects BI Benchmark Solution.

¿En qué consiste? 

  1. Una serie de tests de estrés escalables sobre la plataforma SAP BI y los informes o cuadros de mandos de la misma
  2. Una forma cuantificable de comparar el rendimiento en diferentes instalaciones existentes de SAP BusinessObjects BI o con la misma. Por ejemplo: tras realizar cambios en la configuración del Tomcat o alguno de los servicios de SAP BusinessObjects BI, se puede comprobar cuál ha sido el impacto de dicho cambio en el rendimiento del servidor.
  3. Una forma de ayudar a los clientes a maximizar el uso de los recursos de hardware y software disponibles mejorando el rendimiento y en consecuencia la experiencia de usuario de la plataforma.

¿Como funciona?

Mediante diferentes tests programados, se ejecutan informes de demo de SAP WebIntelligence o SAP DesignStudio que provocan una carga en el servidor. Por ejemplo se pueden programar diferentes ejecuciones en paralelo simulando diferentes usuarios accediendo y refrescando los informes en paralelo. Además de medir el tiempo de respuesta del servidor ante este test, se analiza el uso del hardware así como funcionalidades de cacheo.

Usando las capacidades del JMeter podemos probar diferentes escenarios como por ejemplo el tiempo de carga de todos los componentes de un informe/Dashboard que incluyen Javascript, CSS, HTML, etc todos ellos servidos por el Tomcat. Pero también se puede probar el rendimiento del servidor usando la interfaz RestFUL que permite generar y refrescar informes sin pasar por la interfaz del BI Launchpad y por ello, usando directamente los servicios de la plataforma SAP BI (APS, Web Intelligence Processing Server)

Por ahora disponemos de un conjunto de 12 tests predefinidos que se pueden ejecutar en cualquier instalación de SAP BI Platform (plug and play) y que nos permiten, en base a los resultados, evaluar si la configuración del software y el dimensionamiento del hardware está optimizado o no.

¿Cual es el resultado?

A continuación el resultado de ejecutar el mismo benchmark en diferentes servidores con memoria y CPU. El throughput indica la capacidad de trabajo del servidor, como más alto mejor.

En el ejemplo anterior, los servidores 1 y 2 tienen un hardware parecido (aunque la CPU del servidor 2 se supone más rápida), sin embargo, el servidor 1, al estar mejor tuneado, ofrece un mejor throughput al ejecutar el mismo test de estrés. Además usando otros módulos del JMeter podemos medir exactamente el consumo de CPU y RAM en cada momento del test de estrés.

El test consiste en una simulación del escenario con el siguiente flujo:

1        El usuario se autentica en la plataforma SAP BusinessObjects BI

2         El usuario navega hasta una plataforma de SAP BusinessObjects BI

3         El usuario selecciona y abre un informe de SAP WebIntelligence

4        El usuario abre otra página del informe

5         El usuario refresca la información del informe

6        El usuario navega a otra página

7         El usuario cierra el informe

8         El usuario sale del BI Launchpad

Se puede ver como cada una de estas acciones ha derivado en picos del uso de la CPU. Por ejemplo, si hubiera un consumo alto y constante de CPU sería un síntoma de tener poca CPU o de tener un cuello de botella en otras partes del hardware (memoria o velocidad de lectura en el disco). Como hemos comentado, el test no se limita solo a uso de la CPU sino también al uso de la memoria RAM o del disco. A continuación se muestra el monitor de uso de la RAM:

Se puede observar que la memoria usada no ha tenido variaciones significativas dado que se ha abierto un informe sencillo de Web Intelligence y que el servidor puede manejar fácilmente esta carga de trabajo. En algunos casos se ha detectado una alta volatilidad del uso de la memoria RAM debido a una incorrecta definición de los parámetros del Garbage Collector de Java.

Finalmente, el analisis de la Clariba SAP BusinessObjects BI Benchmark Solution no se limita a los gráficos de arriba. Al finalizar cada uno de los tests de estrés se genera un CSV que contiene más detalles y que sirve de punto de partida para todo un abanico de análisis adicionales:

¿Qué más se puede hacer?

Los tests mencionados trabajan usando informe de Web Intelligence o Design Studio de ejemplo así como un universo que se entrega por defecto en cada instalación de SAP BI. Supongamos que se quiere realizar un benchmark a medida para un determinado dashboard de Design Studio con la finalidad de medir el rendimiento tras cambiar parámetros de Tomcat o SAP BI Platform.

Usando la Clariba SAP BusinessObjects BI Benchmark Solution se pueden preparar scripts para probar su rendimiento y ver como diferentes configuraciones impactan en su rendimiento y probar diferentes escenarios como por ejemplo pocos usuarios solicitando mucha información o muchos usuarios solicitando un único informe (por ejemplo, que pasaría si un determinado cuadro de mandos lo abren 200 usuarios en pararelo?). Todo ello es tan fácil como configurando uno de los tests desde la interfaz de JMeter.

Próximos pasos

Clariba ha empezado a usar estos tests en algunos cliente con la finalidad de evaluarlas ventajas y límites de sus configuraciones de SAP BI. Todo ello con la finalidad de evaluar el rendimiento de diferentes sistemas de forma comparativa y para evaluar posibles mejoras de la misma.

Estad atentos ya que habrá pronto más noticias de la Clariba SAP BusinessObjects BI Benchmark Solution y no dudéis en escribirnos para cualquier duda!

Referencias:

http://jmeter.apache.org/

https://archive.sap.com/documents/docs/DOC-45507

EspañolEnglish