[SpringBoot] Spring Batch (1) - Batch에 대해

2024. 10. 7. 22:05Lang/JAVA


Batch

대량의 데이터를 정기적, 일괄적으로 처리하는 방식

 


특징

1. 일괄 처리

  • 배치 작업은 실시간으로 처리되지 않고, 일정 시간 간격 또는 특정 조건에 따라 일괄적으로 대량의 작업을 한 번에 수행한다.
  • ex) 하루 동안 쌓인 데이터를 야간에 한 번에 처리하는 것

2. 대규모 데이터 또는 작업 처리

  • 배치 처리는 보통 대규모 데이터를 처리하거나 반복적인 작업을 수행하는 데 사용된다.
  • ex) 수천 건의 데이터를 데이터베이스에 저장하거나, 대량의 파일을 변환하는 작업 등

3. 자동화된 작업

  • 배치 작업은 일정 시간마다 자동으로 실행되거나, 특정 이벤트에 의해 트리거되어 자동화된 방식으로 처리
  • ex)  매일 밤 00:00에 배치 작업이 실행되어 데이터를 처리하거나 백업하는 시스템

4. 시간 지연 허용

  • 배치 처리 작업은 실시간 응답이 필요 없는 경우에 적합하다.
  • ex)  월말에 처리해야 할 정산 작업이나, 특정 시점에 필요한 대량의 데이터 분석

5. 시스템 리소스 최적화

  • 배치 처리는 실시간 작업과 달리 시스템의 리소스가 비교적 여유로운 시간대에 실행된다.
  • ex)  야간에 대규모 데이터를 처리 ( 낮 시간대의 사용자 응답성을 보장 가능)