Plataforma de Relatórios Big Data a Processar 2-4M de Transações Diárias

Plataforma de Relatórios Big Data a Processar 2-4M de Transações Diárias

Microsserviços Modernos Baseados em GKE a Substituir Sistema Legacy de 20 Anos

Maio 2019 - Agosto 2020
Programador Backend Sénior e Arquiteto de Plataforma (Especialista Big Data)
2-4M
Transações Diárias
Pagamentos com cartão processados em todas as lojas e lojas online
20 Anos
Legacy Substituído
Sistema de relatórios manual de décadas modernizado
Milhares
Localizações
Condições individuais por localização suportadas
Tempo Real
Processamento
Arquitetura event-driven Kafka/Pub/Sub

Project Gallery

Plataforma de relatórios big data para serviços bancários

Plataforma de Relatórios Big Data

Plataforma de relatórios big data para serviços bancários

The Challenge

Substituição de Sistema de Relatórios Manual de 20 Anos com Plataforma Big Data Moderna

Este principal grupo alemão de banca de retalho necessitava renovar a sua infraestrutura de processamento de pagamentos com cartão e relatórios. O desafio consistia em substituir um sistema operado manualmente com 20 anos por uma plataforma moderna e automatizada capaz de processar 2-4 milhões de transações diárias de milhares de lojas e lojas online, incluindo programas complexos de fidelização de clientes com condições individualizadas por localização.

1

Sistema legacy de 20 anos de relatórios manuais e faturação incapaz de escalar

2

2-4 milhões de transações diárias com cartão de pagamento a requerer processamento em tempo real

3

Cada localização com termos e condições únicos, por vezes individuais

4

Integração complexa de programa de fidelização de clientes em milhares de lojas

5

Necessidade de acesso a dados de alto desempenho com volumes massivos de dados

6

Múltiplas fontes de dados a requerer integração (lojas, lojas online, sistemas de fidelização)

7

Requisito de arquitetura clean-code em infraestrutura Google Cloud totalmente nova

The Solution

Plataforma Big Data Moderna em GKE com Kafka e Arquitetura Event-Driven

Arquitetei e implementei uma plataforma de relatórios big data completamente nova no Google Cloud Platform utilizando GKE (Google Kubernetes Engine). A solução utiliza microsserviços orientados a eventos com Kafka e Pub/Sub para processamento de transações de alto débito, combinado com particionamento otimizado de PostgreSQL e lazy-loading sofisticado de JPA para manuseamento eficiente de volumes massivos de dados.

1

Microsserviços em GKE

Microsserviços containerizados em Docker construídos com Java 11/Kotlin e Spring Boot 2.3 no Google Kubernetes Engine

2

Mensagens Event-Driven

Apache Camel + Kafka para comunicação de cluster, Pub/Sub para integração com Google Cloud Functions, com chamadas síncronas implementadas via Kafka

3

Camada de Dados Otimizada

Spring/Hibernate JPA com estratégia sofisticada de lazy-loading e particionamento de tabelas PostgreSQL para lidar com volumes massivos de transações

4

Processamento Cloud Functions

Google Cloud Functions (Java 11, Python 3, NodeJS) para processamento de dados externos via Pub/Sub

5

Design de API RESTful

Interfaces REST geradas com OpenAPI YAML com grafo de acesso Spring HATEOAS

6

Serviço de Geração de PDF

Gerador dinâmico de PDF baseado em NodeJS/Puppeteer acionado via Pub/Sub com auto-scaling

Critical Challenges

Key technical hurdles and how they were overcome

1

Processamento Big Data Diário com Eficiência de Recursos

Problem

Volumes massivos de dados a chegar em janelas curtas (frequentemente dentro de 2 horas), depois sem necessidade de recursos durante o resto do dia. Extremamente desperdiçador com arquitetura tradicional a requerer alocação constante de infraestrutura independentemente dos padrões de carga.

Solution

Solução GCP moderna baseada em cloud com Cloud Functions, Pub/Sub e serviços de auto-scaling. Quando não é necessário processamento, zero recursos consumidos. Durante a ingestão de dados, o hardware de computação escala automaticamente para lidar com cargas de pico de milhares de entradas por segundo.

Custos de infraestrutura reduzidos em 50% enquanto simultaneamente lida com 10 000+ transações de pico por segundo - provando que eficiência e desempenho não são mutuamente exclusivos.

Impact

A stack processa milhares de entradas por segundo quando necessário, mas extremamente eficiente em custos quando inativa. Ágil, enxuta e custos dramaticamente reduzidos através de escala elástica. Alinhamento perfeito entre consumo de recursos e carga de trabalho real.

Business Impact

Measurable value delivered to the business

Poupança de Custos de Infraestrutura

€180k/ano

50% de redução comparado com arquitetura tradicional de €360k através de auto-scaling elástico GCP e Cloud Functions

Capacidade de Processamento

10 000+ TPS

Transações de pico por segundo tratadas durante janelas batch com latência P99 sub-200ms

Melhoria de Desempenho de Queries

100x mais rápido

Relatórios que anteriormente levavam minutos agora completam em segundos via particionamento e otimização PostgreSQL

Eficiência Operacional

Legacy de 20 anos substituído

Processos manuais automatizados, permitindo relatórios em tempo real para milhares de localizações de retalho

Innovations

Groundbreaking solutions that set new standards

Processamento Big Data Elástico

Arquitetura de auto-scaling GCP que escala de zero a milhares de transações por segundo baseada na carga de trabalho real

Eficiência de custos sem precedentes para cargas de trabalho big data - pagar apenas pelo tempo de processamento usado, não pela capacidade inativa

Impact: 50% de redução de custos (€180k/ano poupança) enquanto melhora o desempenho e lida com 10 000+ TPS de pico

Estratégia Avançada de Particionamento PostgreSQL

Particionamento sofisticado de tabelas com replicação master-master permitindo 100x desempenho de queries em volumes massivos de transações

Relatórios que levavam minutos agora completam em segundos, mesmo através de 2-4 milhões de transações diárias

Impact: Transformou relatórios de batch-atrasado para insights quase em tempo real para decisões de negócio

Integração Cloud Functions Multi-Linguagem

Integração perfeita de Cloud Functions Java 11, Python 3 e NodeJS via Pub/Sub para tarefas de processamento especializadas

Ferramenta certa para cada trabalho - arquitetura agnóstica à linguagem escolhendo runtime ótimo por caso de uso

Impact: Geração de PDF, transformações de dados e integrações externas otimizadas para desempenho e manutenibilidade

Schema JPA Sofisticado de Lazy-Loading

Configuração Hibernate altamente otimizada com lazy-loading seletivo e eficiente para acesso de dados de alto desempenho em datasets massivos

Minimiza pegada de memória e carga de base de dados enquanto mantém latências sub-200ms sob volumes extremos de transações

Impact: Permite lidar com milhões de entidades eficientemente com desempenho consistente mesmo em cargas de pico

"A nova plataforma big data transformou as nossas capacidades de processamento de transações. Passar de um sistema manual de 20 anos para uma arquitetura cloud-native moderna que lida com milhões de transações diárias foi uma mudança de jogo."

E
Ex Diretor de TI, principal grupo alemão de banca de retalho
Online Services

Technologies Used

core

Java 11 Kotlin Spring Boot 2.3 Gradle

persistence

PostgreSQL 12 MongoDB 4.3 Spring/Hibernate JPA

messaging

Apache Kafka Google Pub/Sub Apache Camel Akka

infrastructure

Google Cloud Platform GKE (Google Kubernetes Engine) Docker

cloud Functions

Google Cloud Functions Python 3 NodeJS Java 11 Maven

frontend

Vue.js Jest TypeScript JavaScript

integration

Spring HATEOAS OpenAPI RESTful APIs

testing

Cucumber Gauge (BDD) Gatling (Performance) Jest

additional

Vavr Lombok Puppeteer (PDF Generation)

Necessita de Plataforma Big Data para Transações de Alto Volume?

Se a sua organização requer uma plataforma moderna e escalável para processar milhões de transações diárias com regras de negócio complexas, vamos discutir os seus requisitos.

Agendar Consulta