En la Fig 5.2, se ilustra lo antedicho con la representación de un cubo multidi mensional:
5.2.4 Dispersión de datos
Para evitar la dispersión de datos y agruparlos, los diseñadores de productos multidimensionales se valen de diferentes estrategias entre las que se destacan las ya mencionadas hipercubos y multicubos. Estas dos opciones no son visuales; esto sig- nifca que el usuario no las percibe porque pertenecen a la capa interna de almacena- miento que utiliza el motor de la base de datos para almacenarlos. Esto condiciona el modo en que se procesarán los datos y los cálculos que se realizarán.
5.2.4.1 Hipercubos
Algunos productos del mercado ofrecen un único cubo como estructura de al- macenamiento de datos con modelos más sofsticados de compresión de datos dis- persos. Este tipo de hipercubos permite que se introduzcan los valores de los datos a través de la combinación de dimensiones. Cabe destacar que todas las partes del espacio de datos (cubo) poseen la misma dimensión.
Esta estructura de datos —denominada hipercubo— no limita el número de di- mensiones a un determinado valor y tampoco considera que éstas sean del mismo tamaño. El hipercubo se utiliza de forma específca para la identifcación de estruc- turas con más de tres dimensiones. De todas maneras, no se refere a un formato de almacenamiento de datos y se aplica en bases de datos multidimensionales y también en relacionales.
El trabajo con este tipo de estructura se realiza con un único cubo de varias di- mensiones. Esta estructura pasa a ser estática que, en principio, produce un nivel de almacenamiento mayor y mejora la posibilidad de que se generen dispersiones de datos con valores nulos.
Los que se inclinan por este tipo de estructura resaltan la simplicidad que posee para el usuario fnal y su velocidad de acceso a la información ya que ésta se en- cuentra almacenada en forma contigua.
El hipercubo se utiliza de forma espe- cífca para la identifcación de estruc- turas con más de tres dimensiones.
La estructura de los multicubos divide el universo en diferentes cubos de menor tamaño e intenta dinamizarla mediante punteros. Así, disminuye el espacio de almacenamiento y la posibilidad de dispersión. Esta situación permite que los cubos no deban replicar el tamaño de una de las dimensiones a las restantes.
Existen dos tipos principales de multi- cubos: el block y el series. El primero utiliza dimensiones ortogonales lo que permite que no haya dimensiones especiales en este nivel de datos. El segundo tipo trata a cada medida o variable como series de tiempo, con un conjunto propio de dimensiones.
Arbor, con Essbase, y Cognos, con Powerplay, son dos de las compañías que utilizan esta estructura en sus aplicaciones.
Por último, es relevante comentar que hay una variante de esta estructura de hipercubo denominado hipercubo bordeado (fringed hypercube), que es más denso y con un pequeño número de dimensiones a las que se le pueden añadir, además, dimensiones de análisis.
5.2.4.2 M u l t i c u b o s
Los productos que utilizan esta estructura dividen la aplicación de la base de da- tos en un conjunto de estructuras multidimensionales. Cada una de ellas se compone de un subconjunto de las dimensiones de la de la base de datos. Si bien los diferen- tes productos del mercado le otorgan diferentes denominaciones a estas pequeñas estructuras (variables, universos, estructuras, cubos, etc.), todas se referen al mismo tipo de subestructura.
Esta estructura divide el universo en diferentes cubos de menor tamaño e intenta dinamizarla mediante estos cubos con punteros. De esta manera, disminuye el espa- cio utilizado para el almacenamiento, ya que, al reducir el tamaño de los cubos que conforman el universo de datos, también lo hace la posibilidad de dispersión. Esta situación permite que los cubos no deban replicar el tamaño de una de las dimensio- nes a las restantes.
Sin embargo, existe la posibilidad de que los valores nulos no sean muy altos y, entonces, este tipo de estructura necesitaría más espacio de almacenamiento, puesto que los punteros que unen los diferentes cubos también ocupan espacio.
Existen dos tipos principales de multicubos: el block o bloque y el series. El pri- mero utiliza dimensiones ortogonales lo que permite que no haya dimensiones espe- ciales en este nivel de datos. De esta manera, un bloque se puede constituir por cual- quier número de dimensiones defnidas y medidas, por ejemplo: la dimensión tiempo. Esto signifca que las medidas o variables se tratan como si fueran dimensiones. El segundo tipo trata a cada medida o variable como si fueran series de tiempo, con un conjunto propio de dimensiones.
5.2.4.3 Elección de la estructura adecuada
En general, los multicubos, gracias a su gran fexibilidad y versatilidad, son los preferidos por los profesionales con experiencia; en cambio, los hipercubos son los elegidos por los usuarios fnales porque son más fáciles de comprender y ofrecen una visión de alto nivel.
Los multicubos almacenan de manera más efciente los datos dispersos y reducen el efecto de la explosión de datos, pero si este no es muy grande, es decir que no supera el 30%, utilizan más espacio de almacenamiento que los hipercubos.
Algunos fabricantes han optado por ofrecer un modelo mixto: permiten que el al- macenamiento físico de los datos se realice como si se tratara de un multicubo, pero los cálculos se ejecutan como si se estuviera trabajando con un hipercubo. De esta manera, combinan la simplicidad del hipercubo con la fexibilidad del multicubo.