2.
1 BASES DE DATOS MULTIDIMIENCIONALES
2.1 BASE DE DATOS MULTIDIMENSIONAL
Las bases de datos multidimensionales son una variación del modelo relacional que
utiliza cubos OLAP para organizar los datos y expresar las relaciones entre ellos. Las
principales ventajas de este tipo de bases de datos son la versatilidad para cruzar
información y la alta velocidad de respuesta. Esto las convierte en herramientas básicas
para soluciones de Business Intelligence o de Big Data, donde el análisis de los datos
resulta crucial.
Este tipo de base de datos se aplica sobre el sistema OLAP también llamado cubo
multidimensional o hipervínculo. Se compone de hechos numéricos llamados medidas
que se clasifican por dimensiones. El cubo de metadatos es creado típicamente apartar
de un esquema en estrella o copo de nieve y utilizando tablas de una base de datos
relacional.
Las medidas se obtienen de los registros de una tabla de hechos y las dimensiones de
cuadros.
Una base de datos multidimensional, es aquella que almacena sus datos con varias
dimensiones, es decir que en vez de un valor, encontramos varios dependiendo de los
"ejes" definidos o una base de datos de estructura basada en dimensiones orientada a
consultas complejas y alto rendimiento. Puede utilizar un SGBDR en estrella (Base de
datos Multidimensional a nivel lógico) o SGBDM (Base de datos Multidimensional a
niveles lógico y físico o Base de datos Multidimensional Pura).
En una base de datos multidimensional, la información se representa como matrices
multidimensionales, cuadros de múltiples entradas o funciones de varias variables sobre
conjuntos finitos. Cada una de estas matrices se denomina cubo.
OLAP: On-Line Analytical Processing
Los sistemas OLAP son bases de datos orientadas al procesamiento analítico. Este
análisis suele implicar, generalmente, la lectura de grandes cantidades de datos para
llegar a extraer algún tipo de información útil: tendencias de ventas, patrones de
comportamiento de los consumidores, elaboración de informes complejos… etc.
Representando la información: los cubos OLAP
Un cubo OLAP no es más que un vector de varias dimensiones. Desde un punto de vista
relacional, puede verse como una tabla de hechos (fact table) que tiene dos tipos de
columnas:
Indicadores: también denominados métricas o ratios, son los valores numéricos con
los que se opera. Por ejemplo: nº de clientes, nº de proveedores, importe de las
ventas, nº de ventas, importe de las compras, nº de compras… etc.
Dimensiones: son las características por las que se pueden filtrar y cruzar los
indicadores. Por ejemplo: tiempo (fijando un determinado día, mes o año), geografía
(fijando un determinado país, región o ciudad), proveedor, cliente, modo de pago… etc.
Las columnas correspondientes a las dimensiones tienen claves foráneas a tablas de
dimensión, que generalmente son tablas de maestros con clave-valor (esquema en
estrella) o tablas organizadas en jerarquías (esquema en copo de nieve) como: ciudad –
provincia – país.
En general suele resultar necesario dimensionar la volumetría de los cubos para
conseguir que generen los informes deseados, y monitorizar su tamaño para garantizar
que los resultados se obtienen en el tiempo esperado. En este sentido suele resultar
fundamental tener en cuenta dos características básicas: la cardinalidad del cubo,
posibles combinaciones de todos los valores de todas las dimensiones, y
la granularidad del cubo, nivel de detalle máximo de los datos, o lo que es lo mismo,
nivel de agregación mínimo de la información.
Propiedades de las bases de datos OLAP
Así como los sistemas OLTP son típicos para bases de datos convencionales y data
warehouses, los sistemas OLAP son propios de los datamarts.
Optimizadas para operaciones de lectura: dado que la acción más común es la
consulta, estas bases de datos disponen de valores agregados y resultados
precalculados que les permiten responder en tiempo récord. Evitar las restricciones
ACID les da agilidad.
Organizadas según las necesidades analíticas: los datos están estructurados según
las áreas de negocio, y los formatos de los datos están integrados de manera uniforme
en toda la organización. Se busca evitar islas de datos.
Asíncronas: no siempre se actualizan en tiempo real, sino que se suelen alimentar
con información procedente de las bases de datos relacionales mediante un proceso
deextracción, transformación y carga (ETL).
Consultas realizadas en MDX: este lenguaje, MDX (MultiDimensional eXpressions)
fue desarrollado inicialmente por Microsoft y adoptado posteriormente como estándar
para leer cubos OLAP. Un cliente puede manipular el cubo de distintas formas: rotarlo,
rebanarlo cortarlo en dados… etc.
Gestión de datos históricos a largo plazo: una de las exigencias analíticas consiste
en realizar estudios de evolución a lo largo del tiempo, esto requiere que estas bases
de datos mantengan un histórico a largo plazo, normalmente no inferior a cinco años.
TIPOS DE OLAP
Tradicionalmente los sistemas OLAP se clasifican en las siguientes categorías:
ROLAP
La implementación OLAP almacena los datos en un botón relacional llamado ROLAP los
datos son detallados evitando las agregaciones y las tablas que se encuentran
normalizadas, los esquemas más comunes son de estrella y copo de nieve aunque es
posible de trabajar sobre cualquier base de datos relacional. La arquitectura de esta se
compone de un servidor de banco de datos relacional y el botón OLAP se encuentra en
el servidor dedicado. La principal ventaja de esta arquitectura es que permite el análisis
de
Una enorme cantidad de datos.
La arquitectura ROLAP excede a los datos relacionados para proporcionar los análisis
OLAP. La primicia de los sistemas ROLAP es que las capacidades OLAP se ejecutan
mejor contra las bases de datos relacionales
Utiliza una arquitectura de tres niveles:
Nivel Base De Datos: Usa base de datos relacionales para el manejo, acceso y
obtención de datos.
Nivel de Aplicación: Ejecuta las consultas multidimensionales de los usuarios
Motor Rolap: Se integra con niveles de presentación atreves de los cuales los
usuarios realizan un análisis OLAP.
MOLAP
Esta almacena los datos de una base de datos multidimensional. Para utilizar los
tiempos de respuesta, hacer resúmenes de información calculados por adelantado y un
sinfín de operaciones utilizadas de forma multidimensional para proporcionar el análisis
su principal premisa es que OLAP esta mejor implantado almacenando los datos
multidimensionales.
El sistema MOLAP utiliza una arquitectura de 2 niveles, la base de datos
multidimensional y el motor analítico.
MOLAP VS ROLAP
Cuando se comparan estas dos estructuras se pueden realizar las siguientes:
ROLAP delega la negociación entre el tiempo de respuesta entre el tiempo de respuesta
y procesa en Bach. Mientras que MOLAP requiere que sus bases de datos se compilen
para conseguir un rendimiento aceptable.
Los sistemas con alta volatilidad de datos requieren de una arquitectura
que pueda realizar esta consideración.
Los sistemas ROLAP soportan esta consolidación dinámica mientras que
MOLAP están orientados a una consolidación Bach.
Los ROLAP pueden crecer un gran número de dimensiones mientras que MOLAP
generalmente son adecuados para 10 o menos dimensiones.
Los ROLAP soportan análisis OLAP contra grandes volúmenes de datos mientras que
los MOLAP se comportan relacionalmente en volúmenes más reducidos (-5gb).
Existen otros modelos OLAP como son:
WOLAP (basado y orientado para web)
DOLAP (Basado en escritorio)
RTOLAP (o Real Time, basado en tiempo real)
SOLAP (o especial Solap, Basado en OLAP especiales)