English (Español a continuación)
I.- Introduction
There are three types of partitions:
- Replicated: A segment of the source database is copied to the target database.
- Transparent: A segment of the source database can be accessed from the target database, but the data is not copied to this one.
- Linked: From a query to the target database, through a linked cell you can access the source database (a new spreadsheet is opened with a query to this database).
Some considerations:
- A database can have sections not shared with any database and sections shared across partitions.
- The same database can be the source database in one partition and the target database in another partition.
- A database can contain multiple partitions: it can serve as a source database or target database for numerous partitions.
- But between two databases there can only be one partition of each type: for example, there can be one replicated partition and another transparent one, but there cannot be two replicated partitions.
- Displaying the «Partitions» option in a database, you can see which are the partitions in which this database appears as the source database and in which ones it appears as the target database.
- In a replicated or transparent partition there can be no overlap in the partition (two source databases send information to the same section of the target database): Essbase displays an error.
- This can occur in linked partitions.
II.- Possible partitions in ASO database
a) Replicated partitions:
- An ASO database can be the source database of a replicated partition to an ASO or BSO target database.
- An ASO database can NOT be the target database of a replicated partition (either with a ASO or BSO source database).
b) Transparent partitions:
- An ASO database can be either the source database or the target database of a transparent partition (either the other database is ASO or BSO).
- ATTENTION: When a transparent partition is established between two ASO databases, data can only be loaded in the source database, NOT in the target database, even in a section of the database outside the partition.
- This does not occur in a transparent partition between two BSO databases.
- For example, suppose two ASO databases: ASO_1 and ASO_2, both with the dimension “Year” with the members 2021, 2022: we make a partition between ASO_1 (source) and ASO_2 (target) that exclusively affects the member “2021”. Although the member «2022» is outside the partition, in the ASO_2 database we cannot load data in this member (if it belongs to a dynamic hierarchy we can calculate it based on the data of the member «2021»: for example: «2022» = “2021” * 1.3;).
- This also affects the partition area: while in a transparent partition between two BSO databases, within the partition area data can be uploaded both in the source database and in the target database traveling to the other one, in partitions between two ASO databases can only upload data in the source database.
c) Linked partitions
- An ASO database can be either the source database or the target database of a linked partition (either the other database is ASO or BSO).
III.- Advantages of working together with ASO / BSO databases
ASO databases allow to work with more dimensions than BSO databases and significantly larger dimensions, although their calculation possibilities are much more limited.
- They are especially indicated when working with many dimensions and what is needed is an aggregation of data.
For their part, BSO databases limit the number of dimensions (it is not recommended to work with more than 8 dimensions) but allow very complex calculations.
These two types of databases can complement each other perfectly:
- Use a first ASO database to load all the data and perform an aggregation.
- Perform a specific extraction of this data to a BSO database where execute those complex calculations needed.
IV.- Transparent partitions from an ASO database to a BSO target database
This type of partition can be defined from the console:
- It must be created in the ASO source database; It can NOT be created in the target BSO database.
Display the components of the ASO source database and right-click on “Partitions”: select “Create new partition”.
- Select partition type “Transparent”.
- This ASO database is selected as the source database and the BSO database as the target database.
- Select the data segment of the ASO database and the data segment of the BSO database.
- If this two segments are not exactly equal, you must perform a mapping in the «Assignments» tab.
- Validate the partition and save it.
In this type of partition the data is not copied to the target database, but from this one the data of the source database can be accessible.
- When making the query in the target database, the data travels automatically from the source database, there is no need to execute the partition.
Calculations
It is not possible to calculate data inside the partition area in the target BSO database (calculations are not executed in that area) but calculations can be executed outside the partition area based on data of the partition.
For example: If in the BSO target database we have the dimension «Years» with the members «2022» and «Obj_2023», and the member «2022» is inside the area of the partition», we cannot perform calculations on this member, but we can perform calculations on the member “Obj_2023” (which is outside the partition) based on the member “2022” (for example: “Obj_2023” = “2022” * 1.3).
- When a calculation is launched in the target database in which data from the partition area does not intervene, it is convenient to use the command “SET REMORTECALC OFF” since it significantly improves its efficiency.
- If data from the partition is involved in the calculation, this command must be set to “SET REMORTECALC ON” (if it were set to OFF, it can not access to the data of the source database and the result is incorrect).
When launching a calculation in the target database in which data from the partition area intervenes (it therefore has to go to the source database to capture this information), the database performs a bottom-up calculation; you have to activate the calculation cache and make sure it is large enough (its impact on efficiency is significant).
- In any case, when data from the partition is involved in a calculation in the target database, its impact on efficiency can be very negative: The duration of the calculations can be significantly extended.
The CLEARDATA and DATACOPY commands work on the target database on its own data but not on the partition data.
Any questions, please send an email to: essbaseeasy@gmail.com
Español
I.- Introducción
Hay tres tipos de particiones:
- Replicada: Un segmento de la base de datos origen se copia en la base de datos destino.
- Transparente: A un segmento de la base de datos origen se puede acceder desde la base de datos destino, pero la información no se copia en esta base.
- Vinculada: Desde una consulta a la base de datos destino, a través de una celda vinculada se puede acceder a la base de datos origen (se abre una nueva hoja de cálculo con una consulta a esta base).
Algunas consideraciones:
- Una base puede tener secciones no compartidas con ninguna base y secciones compartidas a través de particiones.
- Una misma base de datos puede ser base de origen en una partición y base destino en otra partición.
- Una base de datos puede contener múltiples particiones: puede servir como base origen o base destino de numerosas particiones.
- Pero entre dos bases tan sólo puede haber una partición de cada tipo: por ejemplo, puede haber una partición replicada y otra transparente, pero no puede haber dos particiones replicadas.
- Al desplegar en una base de datos la opción “Particiones” se pueden ver cuáles son las particiones en la que esta base figura como base origen y cuáles son en las que figura como base destino.
- En una partición replicada o transparente no puede haber solape en la partición: que dos bases origen envíen información a la misma sección de la base destino: Essbase muestra un error.
- Esto sí se puede producir en particiones vinculadas.
II.- Particiones posibles en cubos ASO
a) Particiones replicadas:
- Un cubo ASO puede ser el cubo origen de una partición replicada hacia un cubo destino ASO o BSO.
- Un cubo ASO NO puede ser el cubo destino de una partición replicada (ya sea el cubo origen ASO o BSO).
b) Particiones transparentes:
- Un cubo ASO puede ser tanto el cubo origen como el cubo destino de una partición transparente (sea el otro cubo ASO o BSO).
- ATENCIÓN: Cuando se establece una partición transparente entre dos cubos ASO sólo se pueden cargar datos en el cubo origen, NO en el cubo destino, aunque se trate de una sección del cubo que esté fuera de la partición.
- Esto no ocurre en una partición transparente entre dos cubos BSO.
- Por ejemplo, supongamos dos cubos ASO: ASO_1 y ASO_2, ambos con la dimensión “Año” con los miembros 2021, 2022: realizamos una partición entre ASO_1 (origen) y ASO_2 (destino) que afecta exclusivamente al miembro “2021”. Aunque el miembro “2022” esté fuera de la partición, en el cubo ASO_2 no podemos cargar datos en este miembro (si pertenece a una jerarquía dinámica SÍ podemos calcularlo en base al dato del miembro “2021”: por ejemplo: “2022” = “2021” * 1.3;).
- Esto afecta también al área de la partición: mientras que en una partición transparente entre dos cubos BSO, dentro del área de la partición se pueden subir datos tanto en la base origen como en la base destino que viajan a la otra base, en particiones entre dos cubos ASO sólo se pueden subir datos en la base origen.
c) Particiones vinculadas
- Un cubo ASO puede ser tanto el cubo origen como el cubo destino de una partición vinculada (sea el otro cubo ASO o BSO).
III.- Ventajas de trabajar conjuntamente con cubos ASO / BSO
Los cubos ASO permiten trabajar con más dimensiones que los cubos BSO y dimensiones significativamente más grandes, si bien sus posibilidades de cálculo son mucho más limitadas.
- Son cubos especialmente indicados cuando se trabajan con muchas dimensiones y donde lo que se busca es una agregación de datos.
Por su parte, los cubos BSO limitan el número de dimensiones (no es recomendable trabajar con más de 8 dimensiones) pero permiten cálculos muy complejos.
Estos dos tipos de cubos se pueden complementar perfectamente:
- Utilizar un primer cubo ASO donde cargar todos los datos y realizar una agregación.
- Realizar una extracción específica de estos datos y llevarlos a un cubo BSO donde podremos realizar aquellos cálculos complejos que necesitemos.
IV.- Particiones transparentes de un cubo origen ASO a un cubo destino BSO
Este tipo de partición se puede definir desde la consola:
- Hay que crearla desde la base origen ASO; NO se puede crear desde la base destino BSO.
Se despliega el árbol de componentes de la base de origen ASO y se hace click con el botón derecho sobre “Particiones” y se selecciona “Crear nueva partición”.
- Se selecciona el tipo de partición “Transparente”.
- Se selecciona como base origen esta base ASO y como base destino la base BSO a la que queremos llevar los datos.
- Se selecciona el segmento de datos de la base ASO que queremos llevar y el segmento destino de la base BSO al que queremos llevarlo.
- Si los segmentos origen y destino no son exactamente iguales hay que realizar un mapeo en la pestaña de “Asignaciones”.
- Se valida la partición y se guarda.
En este tipo de partición los datos no se copian en la base destino, sino que desde este base se pueden consultar los datos de la base origen.
- Al realizar la consulta en la base destino el dato viaja de forma automática desde la base origen, no hay que ejecutar la partición.
Cálculos
En la base de datos destino BSO no se pueden lanzar cálculos para calcular datos del área de la partición (no se ejecutan en esa área) pero sí se pueden calcular datos fuera del área de la partición en los que intervengan datos del área de la partición.
Por ejemplo: si en la base destino BSO tenemos la dimensión “Años” con los miembros “2022” y “Obj_2023”, y el miembro “2022” está dentro del área de la partición”, no podemos realizar cálculos sobre este miembro, pero si podemos realizar cálculos sobre el miembro “Obj_2023” (que está fuera de la partición) basados en el miembro “2022” (por ejemplo: “Obj_2023” = “2022” * 1.3).
- Cuando en la base de datos destino se lanza un cálculo en el que no intervienen datos del área de la partición es conveniente utilizar el comando SET REMORTECALC OFF ya que mejora significativamente su eficiencia.
- Sí en el cálculo intervienen datos de la partición este comando tiene que estar en SET REMORTECALC ON (si estuviera en OFF no toma el dato de la base origen y el resultado es incorrecto).
Al lanzar un cálculo en la base de datos destino en el que intervienen datos del área de la partición (tiene que acudir por tanto a la base origen para capturar esa información) la base realiza un cálculo bottom-up; hay que activar la caché de cálculo y vigilar que tiene un tamaño suficiente (su impacto en eficiencia es significativo).
- En todo caso, cuando en un cálculo en la base destino intervienen datos de la partición su impacto en eficiencia puede ser muy negativo: La duración de los cálculos se puede alargar notablemente.
Los comandos CLEARDATA y DATACOPY funcionan en la base destino en sus datos propios pero no en los datos de la partición.
Cualquier consulta envía, por favor, un correo a: essbaseeasy@gmail.com