7. Distributed Data warehouse

 

7.1 Razones de un DW centralizado

Muchas organizaciones construyen y mantienen un solo datawarehouse centralizado, lo cual tiene mucho sentido cuando:

  • Los datos en el warehouse están integrados a lo largo de toda la corporación y una vista integral/central es utilizada solamente en la matriz/headquarters.
  • La organización opera en un modelo de negocio centralizado.
  • El volumen de datos en el datawarehouse es tal, que un repositorio central tiene sentido.
  • Si los datos están dispersos y se tratara de generar un reporte accesando todos los repositorios, puede ser demasiado lento el acceso.

En otros casos, lo más adecuado seria un DW distribuido, como se menciona a continuación.

 

7.2 Tipos de DW Distribuidos

  • El negocio está distribuido geográficamente o con muchas líneas de producción. En este caso existirá un local data warehouse y un global data warehouse. El local data warehouse representa datos y procesos en un sitio remote, y el global data warehouse representa la parte del negocio que integra lo importante del negocio.
  • El ambiente del data warehouse mantendrá una gran cantidad de datos y el volumen se distribuirá en múltiples procesadores. Lógicamente existe un solo data warehouse, pero físicamente existen muchos relacionados en distintos procesadores. Esta configuración suele conocerse como Datawarehouse tecnológicamente distribuido.
  • El ambiente del data warehouse crece de una manera desordenada, primero un dw, después otro, después otro. La ausencia de coordinación genera un conjunto de dw independientes, lo que se conoce como Datawarehouse distribuido independientemente evolutivo.

 

7.3 Local and Global Data Warehouses

 

Cuando una corporación está esparcida alrededor del mundo, la información se necesita tanto local como globalmente. Global se encuentra centralizada en un data warehouse donde la información es recolectada. Pero también es necesario un data warehouse local para cada organización, esto es, en cada país. En este caso la información se encontrará tanto centralizada como distribuida.

Un segundo caso ocurre cuando la compañía es muy grande y tiene muchas líneas de negocio, entonces también es conveniente tener dw locales y un global.

Veamos algunos casos ejemplo:

 

Distribución de una compañía que tiene varios sitios distribuidos geográficamente y una matriz o headquarter.

 

Muchas veces los sitios locales, solo realizan capturas y la matriz hace todo el proceso. En estos casos no es necesario tener dw locales, solamente un global.

 

En otros casos, los sitios distribuidos si tienen operaciones locales. En estos casos suele existir un dw local (si es necesario) y un dw global.

 

 

 

 

Resumiendo, tenemos una arquitectura general de un dw distribuido.

 

 

Flujo de la información de los sitios globales hacia el datawarehouse

  • Primero se crean los dw locales

El contenido de los datawarehouses suele ser diferente porque manejan productos diferentes, además de tener aspectos particulares ej. la moneda (dólares, euros, libras, pesos)

 

  • Posteriormente se vacía la información de los oltps locales hacia el dw global (Nota: no se usan los dw locales)

 

A manera de apoyo, se puede tener un "staging area" para preparar los datos con anticipación antes de enviarlos al dw global

 

 

  • Algo a destacar es que los datos de los dw locales y el global, son mutuamente excluyentes. Esto debido a que el dw global generalmente solo tiene un resumen de ciertos aspectos importantes "globalmente" como pueden ser lo totales de ventas $.

 

7.4 Datawarehouse tecnológicamente distribuido.

Muchas veces se necesita crear un datawarehouse distribuido en muchos servidores, esto debido al volumen de datos que se manejan.

Al principio suele empezarse con 1 o 2 servidores, pero el mismo crecimiento provoca la necesidad de mayor capacidad de procesamiento y por ende que se empieza a "distribuir" la información en distintos servidores o clusters.

Las técnicas para dividir la información suelen basarse simplemente en criterios de ciertos atributos, tal como suele hacer en el "table partitioning", como pueden ser: años, ciudades, departamentos, etc.

 

 

Un problema que se tiene con el dw tecnológicamente distribuido es que muchos datos viajan por la red, lo cual congestiona la red y provoca que algunas consultas o reportes sean demasiado lentos.

 

7.5 Datawarehouse distribuido independientemente evolutivo.

 

Muchas veces el dw distribuido se da por accidente, cuando muchas partes de la compañía empiezan a crear sus propios datawarehouses de manera independiente y sin coordinación.

 

Aún estos dw independientes, seguramente comparten cosas en común interesantes para la compañía y habra que reunirlas en un modelo corporativo.