14/10/2022
Así Hadoop ha reducido los tiempos con respecto a mainframe.
¿Te has preguntado alguna vez cómo puedes realizar tratamientos complejos con un gran volumen de datos y eficientemente? En CaixaBank Tech, al dar servicio a un gran grupo financiero, nos hemos encontrado con problemas de este tipo y queremos explicarte cómo hemos resuelto el procesamiento de Big Data.
¿Por qué usar Big Data en un sistema de Reporting MIS?
Vamos a tomar como ejemplo una de las aplicaciones más usadas por nuestra red de oficinas y los servicios centrales: la aplicación de Reporting MIS, da información de contabilidad analítica a todos nuestros empleados. Este sistema genera información financiera consolidada, con frecuencia diaria y mensual. Se utiliza para hacer el seguimiento de multitud de indicadores financieros que han sido seleccionados, algunos de estos indicadores pueden ser el saldo medio, el margen o ratios.
Esta aplicación requiere procesar un gran volumen de datos, debido a que acaba ofreciendo varios miles de indicadores, vistos desde diversos ejes o dimensiones de análisis (jerarquía organizativa, jerarquía de productos, períodos de tiempo…).
La importancia de precalcular este Big Data
La complejidad se presenta cuando toda esta volumetría de indicadores se tiene que precalcular por las distintas dimensiones de análisis que te hemos comentado antes. El objetivo de que todo esté precalculado es la necesidad de dar una respuesta muy ágil cuando los empleados consultan y analizan la información a través de una aplicación que les ofrece multitud de opciones de filtrado. Para acabar de complicar el escenario, el análisis de la actividad requiere frecuentemente nuevos indicadores o nuevas dimensiones de análisis que tienen que ser incorporados en poco tiempo.
Si hablamos de volumetrías, estamos procesando un input de 8.000 MM de registros a partir de los cuales se calculan unos 4.600 indicadores complejos (indicadores calculados a partir de otros de forma más o menos compleja como puede ser el margen financiero agregado por distintos ejes/dimensione de 15 ejes aprox. actualmente) y el resultado obtenido genera una salida aproximada de 12.000 MM de registros.
Los inicios en el mainframe
Este proceso inicialmente fue desarrollado sobre la tecnología más común en el entorno financiero, que es el mainframe. Para que fuera eficiente, se troceaba la información y se ejecutaba en procesos Batch en paralelo. Eso redujo los tiempos de ejecución, pero generaba puntas de consumo de más del 20% en mainframe, cosa que generaba un coste muy alto y debido a ese consumo de proceso de Big Data, no se podía ejecutar en horario de oficinas.
Hadoop, una alternativa a mainframe
Viendo que esta solución no era escalable y no podía dar soporte a las nuevas evoluciones que iba solicitando negocio, se abrió un proceso de discovery tecnológico para ver cuál podía ser la mejor alternativa para migrar estos procesos del mainframe, y finalmente se optó por un entorno de procesamiento paralelo basado en tecnología Hadoop, concretamente HIVE.
HIVE es una de las piezas que forman parte de la solución Big Data del banco. Es lo que se denomina el entorno informacional y analítico y está formado por un ecosistema de tecnologías. En este caso, al usar un entorno Hadoop, el enfoque de la solución se basa en el concepto de MAP and REDUCE, que consiste en el clásico “divide y vencerás”.
¿Cómo procesamos Big Data con HIVE?
Lo que se hizo fue desarrollar los procesos con la herramienta ODI, una solución de mercado para realizar el ETL/ELT, que ofrece un entorno de desarrollo gráfico y que posteriormente genera el código HIVE. El entorno gráfico permitió facilitar la tarea de los desarrolladores, ya que la curva de aprendizaje fue menor que si hubieran tenido que codificar directamente con MapReduce, HIVE y ese tipo de tecnologías. El nuevo proceso se orquesta con YARN, que lo que hace es balancear todos estos procesos entre las diversas CPU. Este proceso es lo que se denomina MAP, y luego se junta el resultado de todos estos procesos en un único resultado, que corresponde al REDUCE.
Mejoras de Hadoop respecto el mainframe
Con Hadoop, se ha conseguido migrar la mayor parte de las agregaciones que se realizaban en el mainframe mejorando significativamente los tiempos de proceso de Big Data, sin ir más lejos, la agregación de negocios pasó de 30 horas en mainframe a 10 en el nuevo entorno. Además, como el entorno informacional de HIVE no da un servicio directo a las oficinas, Hadoop se puede ejecutar también en horario de apertura de oficina, con lo que nos permite mejorar mucho los tiempos de generación de información y permite dar servicio a las nuevas peticiones de negocio de forma mucho más eficiente.
tags:
Comparte: