Ciclo de Vida del Data Warehouse

Como cualquier otro proyecto, el de nuestro Data Warehouse va a tener una planificación, un desarrollo y un mantenimiento posterior. Es lo que en conjunto se conoce como el ciclo de vida del data warehouse.

El ciclo de vida del data warehouse va a comprender varias facetas y diferentes tareas y tecnologías, lo que a su vez hará necesario con toda seguridad el crear un equipo multidisciplinar para realizarlo.

El siguiente post sobre el ciclo de vida del data warehouse se basa en los libros y artículos de los diferentes miembros del Kimball Group. Aunque este grupo se ha disuelto todavía podemos encontrar en su página información de interés.

Tareas iniciales

El ciclo de vida del data warehouse comienza con su planificación. No estamos hablando aquí de planes detallados tipo Project o DevOps sino de algo mucho más general. De unas tareas políticas y administrativas dentro de nuestra organización que nos permitan, en primer lugar, si podemos embarcarnos en un proyecto data warehouse. Definiremos también los motivos para abordarlo, su alcance, obtendremos recursos (económicos, humanos y técnicos) y daremos por oficializado el proyecto.

Lo siguiente es definir los requisitos de nuestro negocio para el data warehouse. Esto sólo lo podremos lograr a plena satisfacción con la ayuda de los futuros usuarios del data warehouse. Deberemos preparar entrevistas con ellos donde nos transmitan sus necesidades y aspiraciones y habremos de hacerles sentir parte del proyecto. Lo ideal sería incorporar a los usuarios al equipo para que vayan revisando su progreso y advirtiendo de carencias o nuevas necesidades. Conviene resaltar aquí que el hecho de haber iniciado la definición de requisitos no significa que la planificación esté cerrada. Seguramente, estos requisitos nos obliguen volver a aquella y modificar el alcance o los recursos previstos. Este salto entre tareas es normal y no deberíamos interpretarlo como un signo de que la planificación estuvo mal hecha.

ciclo de vida del data warehouse

Diagrama del ciclo de vida del data warehouse

Las líneas de desarrollo

A partir de aquí, las tareas a realizar se pueden repartir en tres líneas: la de tecnología. la de datos y la de aplicaciones BI.

La de tecnología tiene que ver principalmente con decidir qué herramientas, software, servidores etc. usaremos en nuestra solución de data warehouse. Naturalmente, la adquisición de todo ese software y hardware no debería llevarse a cabo sin realizar primero un diseño de la arquitectura que determine cómo se integrarán todos sus elementos para hacer funcionar nuestra solución.

La de datos se centra en la creación de las estructuras físicas que almacenarán nuestro data warehouse. Comienza por el modelado dimensional donde procuraremos convertir los requisitos de nuestro negocio en un esquema formado por hechos y dimensiones. Una vez hayamos creado el modelo dimensional pasaremos a concretarlo en tablas, vistas, índices, particiones, agregados etc… poniendo especial atención en la optimización y el rendimiento. Y una vez creadas las estructuras del modelo dimensional llega la tarea de diseñar y desarrollar los procesos ETL que prepararán y cargarán los datos desde sus orígenes a nuestro data warehouse.

La línea de aplicaciones se ocupa de diseñar y desarrollar aplicaciones que proporcionen información al usuario a partir de nuestro data warehouse. Estas aplicaciones deben de proporcionar la información de una manera sencilla, fiable, accesible y segura. Ni que decir tiene que esa información debe responder en todo momento a los requisitos de la organización y los usuarios.

Las tareas finales

La tarea final de nuestro desarrollo es su despliegue y puesta en producción. En el caso de un proyecto data warehouse es una tarea algo especial ya que la primera carga de datos puede tener características diferentes a las posteriores. Es muy posible que haya de cargar datos históricos que aumenten su duración y que hayamos de introducir miembros en las dimensiones con fechas históricas (miembros que no sabemos cuándo entraron en nuestra organización).
He escrito “la tarea final de nuestro desarrollo” intencionadamente ya que no es la tarea final de nuestro proyecto. Hay dos tareas que sólo finalizarán cuando nuestro data warehouse deje de existir: son la de mantenimiento y la de gestión. La primera comienza inmediatamente después de un despliegue a producción exitoso. La segunda comenzó con el proyecto, se ha ido llevando a cabo paralelamente a todas las descritas y morirá con él.

Métodología

Para finalizar diremos que, a pesar de que el diagrama muestra que las flechas entre los bloques progresan de izquierda a derecha, los saltos adelante y atrás deberían ser la tónica general. Insistimos en que esto no es indicio de que las tareas anteriores se pensaron mal.
Para evitar esta sensación os aconsejamos la adopción de metodologías de desarrollo Agile donde vayáis avanzando, revisando y desplegando por iteraciones siempre en colaboración con los usuarios finales del data warehouse. Estas metodologías se adaptan muy bien al esquema de ciclo de vida descrito en el diagrama.

El equipo de Certia espera que esta entrada os haya sido de utilidad. Así mismo podéis encontrar información sobre cursos relacionados con la temática de este post en la página de SQL Server y BI y Azure DevOps de nuestra web.

Hasta la próxima