Creación de cubos del modo híbrido optimizados

Las utilidades de Optimizar cubo, Base, Caché de cálculo, Orden de resolución y Distribución de datos, le permiten ajustar sus cubos para mejorar su rendimiento.

Creación de cubos modo híbrido optimizados con estas cuatro utilidades de Optimizar cubo:
Utilidad Datos devueltos
Base Métricas de rendimiento del cubo
Orden de resolución Orden de resolución de los miembros del cubo
Caché de cálculo Datos que le permiten seleccionar el mejor valor de caché de calculadora para el cubo
Distribución de datos Datos que le permiten elegir las dimensiones que convertir en ligeras y las que convertir en densas

Optimización de las métricas base en un cubo del modo híbrido

Las métricas cuyo seguimiento realiza la utilidad Base muestran el rendimiento del sistema. Use estas métricas para determinar el rendimiento base y, a continuación, para medir las ventajas de las optimizaciones posteriores que realice.

Antes de usar esta utilidad, debe crear un libro de trabajo de la aplicación, incluido el esquema, los valores de configuración, los scripts de cálculo y las consultas que desee incluir en el cubo.

Cuando ejecute la utilidad, genera el cubo, carga los archivos de datos seleccionados, ejecuta los scripts de cálculo seleccionados y ejecuta las consultas incluidas en el libro de trabajo de la aplicación. Es importante contar con una muestra representativa de las consultas de sus usuarios.

La utilidad base crea un panel de control de la aplicación y los procesos operativos, lo que puede ayudarle a diseñar y optimizar el cubo. Durante la implantación de los cambios y la nueva generación del cubo, la base le ayuda a comparar las iteraciones de las modificaciones de los cubos. En el separador Essbase.Stats.Baseline del libro de trabajo de la aplicación, la utilidad de línea base agregar nuevas tablas con los últimos datos de cada iteración.

Preparación para la ejecución de la utilidad Base de Optimizar cubo en un cubo del modo híbrido

Realice estas tareas antes de ejecutar la utilidad base:

  1. Diseñe y cree su libro de trabajo de la aplicación.

    Para crear un libro de trabajo de la aplicación, puede descargar un libro de trabajo de la aplicación de ejemplo y, a continuación, modificarlo para que se ajuste a sus necesidades. Consulte Exploración de plantillas de galería.

  2. Borre las hojas de consulta del libro de trabajo de la aplicación de los metadatos de Smart View:
    1. Vaya a la cinta de opciones de Smart View.
    2. Seleccione Información de hoja y haga clic en Suprimir.

    Si las hojas de la consulta tienen metadatos de otro servidor, el diseñador de cubos muestra una advertencia y realiza una pausa en el procesamiento hasta que responda.

  3. Modifique la hoja de trabajo Cube.Settings con las siguientes opciones Configuración de la aplicación:
    Valor Valor
    ASODYNAMICAGGINBSO FULL
    HYBRIDBSOINCALCSCRIPT NONE
    INDEXCACHESIZE 100M
    DATACACHESIZE 100M
    ASODEFAULTCACHESIZE 100
    MAXFORMULACACHESIZE 102400
    INPLACEDATAWRITEMARGINPERCENT 20
    CALCCACHEDEFAULT 200000
    LONGQUERYTIMETHRESHOLD -1

Ejecución de la utilidad Base de Optimizar cubo en un cubo del modo híbrido

La utilidad Base identifica dimensiones densas y ligeras, el tamaño de los datos (tamaños de archivos PAG e IND), el tamaño del bloque y los tamaños de los datos, el índice y la caché de la calculadora. Además, proporciona métricas para la carga de datos, el cálculo y la consulta.

Para ejecutar la utilidad Base:

  1. En la cinta de opciones del diseñador de cubos, seleccione Tareas de administración > Optimizar cubo.
  2. (Opcional) Haga clic en Personalizar para seleccionar las operaciones de base que ejecutar.
    • Generar cubo: permite generar el cubo definido en el libro de trabajo de la aplicación y cargar los datos en las hojas de datos.
    • Ejecutar scripts de cálculo: permite ejecutar los scripts de cálculo definidos en cada una de las hojas de cálculo del libro de trabajo de la aplicación.

      Las hojas de trabajo de cálculo se ejecutan en el orden en que aparecen en el libro de trabajo de la aplicación. La opción Optimizar cubo permite ignorar la propiedad Ejecutar cálculo de las hojas de cálculo.

      Optimizar cubo solo soporta los scripts de cálculo que se pueden ejecutar desde Trabajos. No puede ejecutar scripts de cálculo que dependan del contexto de cuadrícula de Smart View actual (por ejemplo, cálculos definidos con la función @GRIDTUPLES, o bien aquellos que usen variables de sustitución de tiempo de ejecución definidas con etiquetas <svLaunch>).

    • Ejecutar consultas: permite ejecutar las consultas en las hojas de consulta.
    • Exportar todo: permite exportar todos los datos del cubo al directorio de cubos. Una vez registrados el tiempo de exportación y el tamaño del archivo, el archivo de exportación se suprime automáticamente.
  3. Haga clic en Crear línea base.

    Si no tiene una hoja de datos en el libro de trabajo de la aplicación, se le solicitará que seleccione archivos de datos y de reglas del catálogo. Es una buena práctica almacenar los archivos de datos y de reglas en un directorio compartido del catálogo para que los archivos no se pierdan al volver a generar el cubo.

    En generar el cubo se tardará un poco de tiempo.

    Essbase genera la hoja Essbase.Stats.Baseline y la agrega al libro de trabajo.

  4. Vea la hoja Essbase.Stats.Baseline del libro de trabajo de la aplicación.
    • La primera tabla de la hoja muestra el tamaño de los archivos de carga de datos, el número de celdas de carga de datos, el tamaño del bloque y los tamaños de caché.
      Imagen de la primera tabla de la hoja Essbase.Stats.Baseline, donde se muestran las métricas de la base de datos.

    • Los colores de la tabla base permiten identificar el tipo de almacenamiento para cada dimensión:
      • Verde: dimensión densa
      • Rojo: dimensión ligera con al menos una fórmula dinámica
      • Azul: dimensión ligera con agregaciones y sin ninguna fórmula o principal dinámicos
      • Dorado: otra dimensión ligera

      Imagen de la segunda tabla de la hoja Essbase.Stats.Baseline, donde se muestran las dimensiones densas y ligeras, así como los miembros totales y almacenados.

    • En Cargar y calcular, las distintas filas “Script:” identifican el script de cálculo que tarda más en realizarse y, por tanto, que puede que se tenga que optimizar.
      Imagen de la tercera tabla de la hoja Essbase.Stats.Baseline, donde se muestran los tiempos de carga y cálculo, los bloques, los datos y el tamaño del archivo de índice creado.

    • En Consulta, Bloques leídos, se muestra la cantidad de datos solicitadas por la consulta.

      Al cambiar una dimensión dinámica a almacenada se reduce esa cantidad.

    • En Consulta, Fórmulas, se muestra el número de fórmulas ejecutadas en la consulta.

      Revise los órdenes de resolución de los miembros calculados y realice cambios para reducir el número de ejecuciones de fórmulas y mejorar el rendimiento, o bien puede almacenar un miembro calculado que tenga fórmulas para reducir el número de ejecuciones de fórmulas y mejorar el rendimiento.


      Imagen de la cuarta tabla de la hoja Essbase.Stats.Baseline, donde se muestra el tiempo de consulta, los bloques leídos y las fórmulas ejecutadas.

    • La última tabla de la hoja muestra el tiempo de exportación y el tamaño de archivo.
      Imagen de la quinta tabla de la hoja Essbase.Stats.Baseline, donde se muestran el tiempo de exportación y el tamaño de archivo.

Optimización del orden de resolución en un cubo del modo híbrido

La utilidad Orden de resolución le ofrece una representación visual del flujo del orden de resolución usado en la aplicación. Esto puede ayudar a diagnosticar los problemas de rendimiento de la consulta relacionados con las fórmulas.

Para ejecutar la utilidad Orden de resolución de Optimizar cubo:

  1. En la cinta de opciones del diseñador de cubos, seleccione Tareas de administración > Optimizar cubo.
  2. Haga clic en Orden de resolución.
  3. Vea la hoja Essbase.Stats.SolveOrder del libro de trabajo de la aplicación.

Utilice la información de la hoja Essbase.Stats.SolveOrder para ajustar el orden de resolución para optimizar el rendimiento de la consulta. Consulte Optimización del cubo para el modo híbrido y Orden de resolución en el modo híbrido.

Optimización de la caché de la calculadora en un cubo del modo híbrido

La utilidad Caché de cálculo recomienda la opción de caché de la calculadora óptima para el cubo.

Usar la opción de caché de la calculadora correcta puede suponer una mejora de rendimiento importante al calcular todas las dimensiones ligeras en un script de cálculo. Calcular una dimensión ligera completa es una técnica que permite reducir el número de bloques que necesita una consulta.

El valor por defecto de la caché de la calculadora es 200.000 bytes. El valor máximo es 20.000.000 bytes.

La caché de la calculadora se debe definir para tener el tamaño suficiente para incluir las dimensiones ligeras que se calculen en el script de cálculo. Definir la caché de la calculadora en un valor mayor del necesario tiene un efecto negativo en el rendimiento.

Para optimizar la caché de la calculadora con la utilidad Caché de cálculo:
  1. Para reducir la cantidad de datos solicitados por la consulta, calcule y almacene una o más dimensiones con un script de cálculo.

    La mejor opción suele ser la dimensión más grande.

  2. Mueva esa dimensión para que sea la primera dimensión ligera del esquema.

    El algoritmo de la caché de la calculadora selecciona las dimensiones ligeras que colocar en la caché, empezando por la primera dimensión ligera.

  3. Cree el cubo sin cargar datos.

    Para que la utilidad Caché de cálculo funcione, se debe crear el cubo.

  4. Ejecute la utilidad Caché de cálculo.

    La utilidad muestra la opción de caché correcta junto a cada dimensión hasta 20 MB. Si supera los 20 MB, muestra N/A. Normalmente, no son necesarias las opciones por encima de un par de MB.

    1. En la cinta de opciones del diseñador de cubos, seleccione Tareas de administración> Optimizar cubo.
    2. Haga clic en Caché de cálculo.
    3. Vea la hoja Essbase.Stats.CalcCache del libro de trabajo de la aplicación. Puede ver las opciones de caché de la calculadora recomendada en la hoja de trabajo Essbase.Stats.CalcCache, en la columna Caché de cálculo.
      Imagen de la hoja Essbase.Stats.CalcCache en un libro de trabajo de la aplicación de tipo de optimización de cubo.

  5. Busque la opción Caché de cálculo en la hoja Essbase.Stats.CalcCache, junto a las dimensiones ligeras que haya calculado y almacenado en el paso 1.
  6. Si ha calculado una dimensión en el paso 1, defina el valor por defecto de la caché de la calculadora en ese valor. Si ha calculado más de una dimensión en el paso 1, seleccione el valor Caché de cálculo más elevado entre los valores que haya calculado.

    Sume este valor a la sección Valores de aplicación de la hoja de trabajo Cube.Settings. También puede definir el valor en las opciones de configuración de la aplicación de la interfaz web de Essbase. Es una buena práctica redondear hacia arriba para permitir que haya un poco más de espacio.

Optimización de la distribución de datos en un cubo del modo híbrido

La utilidad de distribución de datos le ayuda a conocer mejor los datos de una aplicación, lo que le permite tomar decisiones importantes sobre cómo optimizar el cubo.

Conocer los datos le ayuda a determinar lo siguiente:
  • Qué dimensiones convertir en densas y cuáles en ligeras.

    Las dimensiones densas definen los bloques en una aplicación de almacenamiento de bloques. Idealmente, un bloque debe contener dimensiones con la mayoría de los datos y representar el diseño de consulta predominante para esa aplicación. En el caso de las aplicaciones de informes financieros, esto suele equivaler a que las dimensiones Time y Account deben ser densas.

  • Las dimensiones que calcular y almacenar con un script de cálculo.

    Uno de los factores que afecta al rendimiento de la consulta es el número de bloques que solicita la consulta. Si el número de bloques solicitados es demasiado grande, el rendimiento de la consulta se ve afectado. Para reducir el número de bloques solicitados, calcule previamente los miembros de nivel superior de una o más dimensiones ligeras. En primer lugar, defina el atributo de almacenamiento de dimensión de los miembros superiores en un atributo almacenado (Almacenar o Nunca compartir) y, a continuación, ejecute un script de cálculo que agregue esa dimensión con CALC DIM o AGG.

  • Qué dimensiones usar como dimensión de tarea en el comando FIXPARALLEL.

    Para optimizar el script de cálculo usado para agregar las dimensiones ligeras almacenadas, use el comando FIXPARALLEL. Es importante seleccionar las dimensiones de tarea correctas. Una dimensión de tarea es aquella que determina cómo se divide el cálculo en threads y se ejecutan en paralelo. Una o más dimensiones ligeras deben contener la mayoría de los datos para reducir las tareas vacías e, idealmente, esos datos deben tener una distribución uniforme.

Para ejecutar la utilidad Distribución de datos:
  1. En la cinta de opciones del diseñador de cubos, seleccione Tareas de administración > Optimizar cubo.
  2. Seleccione Distribución de datos.

    Este proceso puede tardar mucho tiempo en ejecutarse, sobre todo en los modelos de mayor tamaño.

  3. Vea la hoja de trabajo Essbase.Stats.DataDist.

Imagen del separador Essbase.Stats.DataDist en una hoja de trabajo Optimizar cubo donde se muestran las estadísticas de distribución de datos.


Imagen del separador Essbase.Stats.DataDist en una hoja de trabajo Optimizar cubo donde se muestran bloques y celdas por bloque.