Arquitectura de Data Warehouse
Cuando diseñamos la arquitectura de un sistema de Data Warehouse nos hemos de
plantear los diferentes entornos por los que han de pasar los datos en su camino hacia
su Datamart o cubo de destino. Dada la cantidad de transformaciones que se han de realizar, y que
normalmente el DWH, además de cumplir su función de soporte a los requerimientos analíticos,
realizauna función de integración de datos que van a conformar el Almacén Corporativo y que
van a tener que ser consultados también de la manera tradicional por los sistemas operacionales, es
muy recomendable crear diferentes áreas de datos en el camino entre los sistemas origen y
las herramientas OLAP.
Cada una de estas áreas se distinguirá por las funciones que realizan, de qué manera seorganizan los datos en la misma, y a qué tipo de necesidad puede dar servicio. El área que se
encuentra 'al final del camino' es importante, pero no va a ser la única que almacene los datos que
van a explotar las herramientas de reporting.
Tampoco hay una convención estándar sobre lo que abarca exactamente cada área, y la
obligatoriedad de utilizar cada una de ellas. Cada proyecto es un mundo, einfluyen muchos factores
como la complejidad, el volumen de información del mismo, si realmente se quiere utilizar el Data
Warehouse como almacén corporativo o Sistema Maestro de Datos, o si existen necesidades reales
de soporte al reporting operacional.
Visto esto, comentaré a continuación las áreas de datos que se suelen utilizar, e iré perfilando
una propuesta de arquitectura que cada uno ha deadaptar a sus necesidades o simplemente a su
gusto en función de su experiencia.
Staging Area
Es un área temporal donde se recogen los datos que se necesitan de los sistemas origen.
Se recogen los datos estrictamente necesarios para las cargas, y se aplica el mínimo de
transformaciones a los mismos. No se aplican restricciones de integridad ni se utilizan claves, los
datos se tratan comosi las tablas fueran ficheros planos. De esta manera se minimiza la afectación
a los sistemas origen, la carga es lo más rápida posible para minimizar la ventana horaria necesaria,
y se reduce también al mínimo la posibilidad de error. Una vez que los datos están traspasados, el
DWH se independiza de los sistemas origen hasta la siguiente carga. Lo único que se suele añadir
es algún campo quealmacene la fecha de la carga.
Obviamente estos datos no van a dar servicio a ninguna aplicación de reporting, son datos
temporales que una vez hayan cumplido su función serán eliminados, de hecho en el esquema lógico
de la arquitectura muchas veces no aparece, ya que su función es meramente operativa.
Hay quien considera que la Staging Area abarca más de lo que he comentado, o incluso queesta área engloba todo el entorno donde se realizan los procesos de ETL, yo me decanto por su
utilización sólo como área temporal.
ODS (Operational Data Store)
Como su nombre indica, esta área es la que va a dar soporte a los sistemas operacionales.
El modelo de datos del Almacén de Datos Operacional sigue una estructura relacional y normalizada,
para que cualquier herramienta de reporting osistema operacional pueda consultar sus datos. Está
dentro del Data Warehouse porque se aprovecha el esfuerzo de integración que supone la creación
del Almacén de Datos Corporativo para poder atender también a necesidades operacionales, pero
no es obligatorio, y ni siquiera es algo específico del Business Intelligence, los ODS ya existían antes
de que empezáramos a hablar de BI y de DWH.
Noalmacena datos históricos, muestra la imagen del momento actual, aunque eso no
significa que no se puedan registrar los cambios.
Los datos del ODS se recogen de la Stage Area, y aquí sí que se realizan transformaciones,
limpieza de datos y controles de integridad referencial para que los datos estén perfectamente
integrados en el modelo relacional normalizado.
Hay que tener en cuenta que la...
Regístrate para leer el documento completo.