O processamento em batch lida com grandes grupos de dados em horários agendados. Em vez de processar cada transação individualmente, o sistema recolhe-as e processa-as em conjunto. Os bancos utilizam o processamento em lote há décadas para compensar os cheques durante a noite. Os sistemas de processamento de salários executam lotes para calcular salários e descontos. O modelo funciona quando a rapidez é menos importante do que a eficiência.
A desvantagem é a latência. Um processo em batch executado às 2h da manhã significa que os dados do dia anterior só estarão disponíveis na manhã seguinte. Para a folha de pagamento e faturação, isto não é um problema. Para deteção de fraudes ou pricing em tempo real, não. O processamento de fluxos de dados lida com estes casos analisando os dados à medida que chegam. Muitas arquiteturas modernas utilizam ambos. O processamento em fluxo lida com eventos urgentes. O processamento em lote lida com análises históricas, reconciliação e relatórios. Os dois complementam-se. Os processos em batch são também mais baratos de executar, uma vez que podem ser agendados durante períodos de menor movimento, quando os recursos computacionais estão ociosos. O Hadoop e o Spark popularizaram o processamento em batch em larga escala em clusters distribuídos. A tecnologia evoluiu, mas o padrão é antigo: recolher, agendar, processar, entregar.
Características do processamento em lote
- Programado — funciona em intervalos definidos, geralmente durante a noite.
- Volume elevado — processa grandes conjuntos de dados de forma eficiente.
- Tolerância à latência — os resultados não são necessários imediatamente.
- Eficiente em termos de recursos — utiliza a capacidade de computação fora das horas de ponta.
- Determinístico — a mesma entrada produz a mesma saída.
O processamento em batch não está ultrapassado. É a ferramenta certa quando a produtividade é mais importante do que a velocidade.
Comments
No comments yet. Be the first to share a thought.
Leave a comment