Aprobados de cálculo
Siempre que sea posible, Essbase calcula una base de datos de almacenamiento de bloques en una sola transferencia de cálculo. En algunas situaciones, Essbase debe realizar varias transferencias.
Normalmente, Essbase calcula un cubo de BSO en una transferencia de cálculo y cada uno de los bloques de datos necesarios se lee en la memoria solo una vez y, a continuación, se calcula y se guarda. Sin embargo, en algunas situaciones, puede que Essbase necesite realizar varias transferencias de cálculo. En pasadas posteriores, Essbase devuelve los bloques de datos a la memoria, realiza más cálculos sobre ellos y los guarda de nuevo.
Cuando se realiza un cálculo predeterminado y completo de una base de datos (CALC ALL), Essbase intenta calcular la base de datos en una sola pasada. Si tiene dimensiones que están etiquetadas como cuentas o tiempo, puede que Essbase tenga que realizar varios cálculos a través de la base de datos.
En la siguiente tabla se muestra el número de transferencias de cálculo que realiza Essbase si tiene dimensiones etiquetadas como tiempo o cuentas y tiene al menos una fórmula en la dimensión de cuentas:
Tabla 19-11 Pasos de cálculo para cuentas y dimensión de tiempo
| Dimensión etiquetada como cuentas | Dimensión etiquetada como tiempo | Aprobados de cálculo | Durante cada transferencia de cálculo, Essbase calcula en función de: |
|---|---|---|---|
|
Denso y Disperso |
ninguno |
1 |
Todas las dimensiones |
|
Densa |
Densa |
1 |
Todas las dimensiones |
|
Densa |
Ligera |
2 |
Paso 1: Cuentas y dimensiones de tiempo Paso 2: Otras dimensiones |
|
Ligera |
Ligera |
2 |
Paso 1: Cuentas y dimensiones de tiempo Paso 2: Otras dimensiones |
|
Ligera |
Densa |
2 |
Paso 1: Dimensión Accounts Paso 2: Otras dimensiones |
Si utiliza fórmulas que están etiquetadas como Two-Pass, puede que Essbase necesite realizar una transferencia de cálculo extra para calcular estas fórmulas.
Cuando se utiliza un script de cálculo para calcular una base de datos, el número de transferencias de cálculo que Essbase necesita realizar depende del script de cálculo.
Essbase escribe en el registro de la aplicación el orden de cálculo de las dimensiones para cada pasada y cuántos ciclos se han realizado en el cubo.
Para cada bloque, Essbase decide si desea realizar un cálculo denso o disperso, según el tipo de valores del bloque. Cuando se ejecuta un cálculo por defecto (CALC ALL), cada bloque se procesa en orden, según su número de bloque.
Essbase calcula los bloques mediante este procedimiento:
-
Si el cálculo inteligente está activado y no es necesario calcular el bloque (si está marcado como limpio), Essbase omite el bloque y se mueve al siguiente bloque.
-
Si es necesario volver a calcular el bloque, Essbase comprueba si el bloque es de nivel 0, de entrada o de nivel superior.
-
Si el bloque es un bloque de nivel 0 o un bloque de entrada, Essbase realiza un cálculo denso en el bloque. Cada celda del bloque se calcula.
-
Si el bloque es un bloque de nivel superior, Essbase consolida los valores o realiza un cálculo disperso en el bloque.
La combinación de miembros dispersos de cada bloque de nivel superior contiene al menos un miembro principal. Essbase consolida o calcula el bloque en función de la dimensión del miembro principal. Por ejemplo, si el bloque de nivel superior es para Producto -> Florida desde la base de datos Sample.Basic, Essbase selecciona la dimensión Product.
Si la combinación de miembros dispersos para el bloque tiene varios miembros principales, Essbase selecciona la última dimensión en el orden de cálculo que incluye un miembro principal. Por ejemplo, si el bloque es para Producto -> Este y realiza un cálculo predeterminado en la base de datos Sample.Basic, Essbase selecciona la dimensión Market, que contiene Este. La dimensión Mercado es la última en el orden de cálculo predeterminado porque se coloca después de la dimensión Producto en el esquema de la base de datos. Consulte Orden de cálculo de miembros.
En función de la dimensión ligera seleccionada, Essbase consolida los valores o realiza un cálculo disperso en el bloque:
-
Si se aplica una fórmula al miembro de bloque en la dimensión ligera seleccionada, Essbase realiza un cálculo de fórmula en la dimensión ligera. Essbase evalúa cada celda del bloque. La fórmula solo afecta al miembro de la dimensión dispersa, por lo que el rendimiento general del cálculo no se ve afectado significativamente.
-
Si la dimensión ligera seleccionada es una consolidación predeterminada, Essbase consolida los valores, tomando los valores de los bloques secundarios calculados anteriormente.
-