Você está na página 1de 13

Introdução ao Spring Batch

https://devsuperior.com.br
Agenda
● Objetivo
● Sistemas Batch
● Spring Batch
● Resumo
Objetivo
● O que são/quando usar e por que sistemas batch;
● Características dos sistemas baseados em batch;
● Introdução ao Spring Batch.
Sistemas Batch
● Os dados são processados em lotes e normalmente é usado
quando há um grande volume de dados;

Lote 1
Lote 2 Processamento Resultado
Lote 3
Lote N

Representação de um sistema baseado em Batch


Sistemas Batch
Lote 1
Lote 2 Processamento Resultado
Lote 3
Lote N

● Exemplos: Sistema que trabalha de forma automática para enviar


emails ou notificações, processar a folha de pagamento;
Sistemas Batch
● Definição: Um sistema que realiza um processamento de uma
quantidade finita de dados sem interação ou interrupção.
Sistemas Batch
Por que utilizar o processamento em Batch?
● Pois o processamento baseado em batch (lote) é uma das formas mais
eficientes para processar um grande volume de dados.
Sistemas Batch x Sistemas web

Sistemas Batch Sistemas Web


Os dados a serem processados pelo lote, não Normalmente os dados estão disponíveis
necessariamente estão disponíveis

Grande volume de dados Normalmente, sistemas web não processam um


grande volume de dados a todo momento.

Sem interações com o usuário Interação com o usuário


Quando utilizar Sistemas Batch
● Extração, transformação e carregamento (ETL);
● Migração de dados;
● Processamento paralelo;
● Tarefas que envolvem o processamento contínuo.
Spring Batch
● Historicamente o Cobol foi a primeira linguagem a se tornar
famosa pelo processamento em batch;
● Framework que permite o processamento em lote para a JVM
utilizando o Spring.
Spring Batch
Principais questões a serem pensadas ao trabalhar com um grande volume
de dados usando o Spring Batch:
● Tempo
● Integridade
● Execução
● Monitoramento
Spring Batch
Outros pontos chaves para implementação destes sistemas:
● Escalabilidade
● Disponibilidade
● Usabilidade
Resumo
● Sistemas batch:
○ Dados processados em lote;
○ Grande volume de dados;
○ Executado sem interferência humana;
○ Muito usados em tarefas de integração e migração de dados.

● Spring Batch framework usado para para fazer o processamento em


batch;

Você também pode gostar