bigdata-ventas es un proyecto de microservicios desarrollado para procesar y gestionar datos de ventas en tiempo real utilizando tecnologías modernas como Kafka, Spring Boot y MySQL. El sistema está diseñado para consumir mensajes de ventas a través de un productor Kafka, procesarlos mediante un servicio consumidor y almacenarlos en una base de datos MySQL. Además, incluye un módulo de reportes para consultas y análisis.
Este proyecto demuestra la integración de microservicios con Kafka para la mensajería, Docker para la orquestación y MySQL como base de datos relacional, facilitando el procesamiento eficiente y escalable de datos de ventas.
- Java 17 con Spring Boot (framework principal)
- Spring Kafka: para la integración con Apache Kafka
- Apache Kafka (v7.5.0) y Zookeeper para la mensajería distribuida
- MySQL 8.0 como sistema de gestión de base de datos
- Docker y Docker Compose para la configuración y despliegue de servicios
- Hibernate JPA para la gestión ORM y persistencia de datos
- Lombok (opcional) para simplificar código Java (getters/setters)
- Jackson para serialización/deserialización JSON
productor-ventas: Servicio productor que envía mensajes de ventas a Kafka.procesador-ventas: Servicio consumidor que procesa mensajes Kafka y los guarda en MySQL.reportes-ventas: Servicio para generar reportes basados en los datos almacenados.docker-compose.yml: Orquestador de los contenedores (Kafka, Zookeeper, MySQL y microservicios).