Te va a interesar!

6/recent/ticker-posts

Data Warehouse: Qué es y cómo testing hace su magia?


 

Cuando uno piensa en trabajar en Testing, generalmente se imagina trabajando con aplicaciones web, o quizás una aplicación mobile... o si tienen más imaginación aún con APIs manejando todo como titiriteros detrás de escenas! 

Pero hay más que eso señoras y señores! No, no me refiero a Performance Testing, eso ya lo vimos! Qué? No no, tampoco Security Testing, eso se viene en próximos posts! Me dejan hablar che? Me refiero a Data Warehouses! 

Y qué es un Data Warehouse se preguntarán ustedes? Bueno, van a ver que cuando lean la explicación va a sonar a algo que tiene sentido y que, sin saberlo, sabían que existía! 


Qué es un Data Warehouse?


Un Data Warehouse es un modelo de gestión de data en el que se da soporte a los equipos de análisis e inteligencia. A ver, qué quiero decir con esto... 

Los equipos de análisis e inteligencia tienen que generar distintos reportes para responder a la demanda del negocio de acuerdo a algo en particular y, para eso, van a necesitar data que llene esos reportes. Esta data puede y va a venir generalmente de muchísimas fuentes distintas, masajeada para filtrar, ordenar y entregar solo lo que sea útil para esos reportes. 

Acá es donde entra el concepto de ETL que vimos anteriormente. Pero ETL va a ser aplicado no solo a este, sino a varios modelos diferentes de gestión de data. 

Esta "fábrica de datos" va a terminar siendo, con el tiempo de estar consolidando data, no solo la fuente de verdad absoluta para un negocio, sino una herramienta invaluable para los Data Scientist, Business Analysts y todos los que necesiten datos de buena calidad para predecir o estudiar comportamiento. 

Qué elementos suelen componer a un Data Warehouse?


  • Primero que nada, vamos a necesitar una base de datos relacional, que justamente nos permita estructurar y relacionar tablas y vistas en distintas capas. 
  • Una solución que permita masajear (perdón, pero amo este término en Data) la data para transformarla acorde a los requerimientos.
  • Herramientas que permitan la creación, gestión y toqueteo de reportes y análisis de la data.
  • Una solución para generar las vistas que van a usar los clientes, algo que les de una UI fácil de interactuar. Luego van a entrar cosas más lindas como gráficos (Tableau, Grafana), Inteligencia Artificial y logaritmos para sacar conclusiones en función de los datos presentados, etc.
Recuerden que el punto de un Data Warehouse es justamente generar vistas y tablas a conciencia según lo requerido, usando la enorme cantidad de datos disponibles en las dBs. 

Esto es diferente de otros modelos como, por ejemplo, los Data Lake, los cuales solo se concentran en tener un montón de datos sin filtrar para su posterior uso.


Cómo Testing acompaña este modelo de gestión de datos?


Testing juega un papel fundamental en cada etapa de desarrollo en Data Warehouses. Principalmente, va a ser el encargado de ver que las preguntas que los datos van a responder sean las indicadas y que, los datos que se planean extraer y modificar son los que van a cumplir con ese objetivo. 

Todo esto en el papel, sin haber tocado nada todavía. Luego va a ser un frenesí de queries en las que vamos a validad que los conteos de datos que se pasaron de fuente a objetivo son los esperados, que no hay duplicados absolutos, que no hay duplicados para campos que no tengan que tenerlos, que no existan NULLs en caso que así se defina para los campos que lo definan así, etc. 

Automation puede jugar un papel fundamental si se hace con conciencia. Recuerden que acá no va a haber Page Object Model, no van a haber APIs, por lo que el testing se va a enfocar desde otro lado. 

Si se trabaja con los analistas, Gherkin puede ser una buena manera de mantener una documentación viva sobre los requerimientos. Definir estos escenarios en una solución automatizada puede ser un desafío interesante, pero si se plantea qué va a ser reutilizado para potenciales regresiones y qué va a ser una ejecución de una sola vez, el esfuerzo puede valer la pena! 

Publicar un comentario

0 Comentarios