¿Como utilizar Spark en Big Data para negocios?

| Última modificación: 17 de abril de 2024 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding
Esta semana hemos tenido como invitado a Ivar Quiroz, ingeniero en Informática por la UC3M, con un Máster en Fintechs por la misma universidad. En este caso nos ha hablado del uso del Big Data para negocios, llevando a cabo un caso práctico completo, explicando todos los pasos a seguir. Este proceso consta de un total de cinco fases, desde el reconocimiento de la necesidad, pasando por el análisis, diseño e implementación de la solución, para terminar con posibles mejoras para el proceso.

1. Identificación del caso de uso y sus requisitos

Para comenzar con la planificación del proyecto, lo primero que se debe hacer es identificar la necesidad, que puede ser estudiada desde tres perspectivas diferentes: la del dueño del producto, la del arquitecto de datos y la del equipo de desarrollo. En esta ocasión se estudiará el caso de una empresa de retail online que se encuentra en proceso de expansión, cuya principal necesidad es conseguir recomendar a sus clientes productos relacionados con sus compras o búsquedas, una vez al día; además, también buscan que la plataforma estudie el comportamiento de sus clientes para mejorar las recomendaciones. Los datos que se van a utilizar para este proyecto son los datos de inicio de sesión y los de navegación (los logs en el servidor apache). Existen una serie de requisitos para que la plataforma sea efectiva frente a las necesidades del cliente y son que a través de ella sea posible maximizar el ratio entre coste y beneficio y que se cree una estabilidad lineal de costes respecto a las necesidades de capacidad. Además, para garantizar la eficacia de la plataforma, es necesario que cuente con las siguientes capacidades:
  • Elástica de cómputo y persistencia.
  • Capaz de almacenar la información histórica de los clientes.
  • Capaz de realizar el análisis y la consulta de la información almacenada.
  • Capaz de realizar el proceso de recomendación de los clientes.
Antes de comenzar con todo el proceso, es necesario tomar una muestra de los datos actuales, facilitados por la empresa, y llevar a cabo un análisis volumétrico.

2. ¿Cómo implementar el Big Data para negocios?

Se debe comenzar analizando la naturaleza del problema y para ello se realizará un procesamiento de tipo Batch, recopilando una serie de datos desde los servidores apache una vez al día, realizando una ingesta de los mismos y una posterior limpieza para así optimizar el almacenamiento. Para terminar, se procesarán los datos de manera volátil para, finalmente, analizarlos. Además, se llevará a cabo un análisis de la muestra facilitada por los logs de los usuarios. A continuación, se debe decidir qué infraestructura se va a utilizar, en este caso, dado que todas ofrecen lo mismo, se ha decantado por la de menor coste, Google Cloud Platform. Para terminar con el análisis, se debe realizar la arquitectura de la solución, definiendo esta, como podemos ver en la imagen a continuación:

3. Diseño de la solución

Lo primero a tener en cuenta cuando se comienza a planificar la solución son las capas de datos, gestionadas en tres extensiones diferenciadas: raw area (cruda), staging area (ensayo) y publish area (publicación). Se debe considerar el modo en que se reciben estos datos. Primero, aparecen los datos Raw gracias a que un usuario ingest los sube automáticamente; estos se almacenan en la capa Raw sin curtir, preparados para ser limpiados y borrados. Posteriormente, el proceso Spark consume los datos Raw, los estructura y los almacena, listos para su consulta. Por último, la capa Staging almacena la información obtenida, lista para ser exportada. A partir de aquí, los analistas generan la información de valor y la almacenan a modo de consulta. Para terminar, la capa Publish almacena los datos listos para ser consumidos por los servicios de recomendaciones, que leen la información lista para ser presentada al front.

4. Implementación de la solución

Para poner en funcionamiento la solución, primero se debe crear un cluster Hadoop, en este caso se realizará a través de Google Cloud Platform. Para ello, una vez en la consola Google Cloud, se debe seleccionar un proyecto asociado, buscar “Dataproc” en el buscador y configurar el tamaño de tu cluster en función de las necesidades. Se continúa con una limpieza y filtro de los datos, para terminar con la producción de datos y resultados, tal como vimos en el punto anterior, pasando desde la capa Raw, hasta terminar en la capa Publish.

5. Posibles mejoras

Entre los avances que se pueden realizar en este procesos, se encuentrarn un ajuste dinámico del Cluster, un cambio en la arquitectura, un modelado en Cloud y alguno más. Si tienes alguna duda o, simplemente, quieres ver la explicación de manera más extendida y técnica, aquí te dejamos el webinar completo:  
El Big Data cada día es más necesario para todas las empresas en el mundo, y esto ha hecho que la demanda de profesionales que dominen el ecosistema de los datos aumente exponencialmente. Si quieres enfocar tu carrera a este sector, descubre nuestro Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp, donde dominarás todas las herramientas y metodologías para explotar, procesar, modelar y presentar datos en cualquier lugar.
Sandra Navarro

Business Intelligence & Big Data Advisor & Coordinadora del Bootcamp en Data Science, Big Data & Machine Learning.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado