-
01. Spring BatchBackEnd/Spring Batch 2021. 12. 7. 21:39반응형
Spring Batch는 로깅/추적, 트랙잭션 관리, 작업 처리 통계, 작업 재시작, 건너뛰기, 리소스 관리 등 대용량 레코드 처리에 필수적인 재사용 가능한 기능을 제공하는 가볍고 포괄적인 배치 프레임워크입니다. 또한 최적화 및 파티셔닝 기술을 통해 대용량 및 고성능 일괄 작업을 가능하게 하는 고급 기술 서비스 및 기능을 제공합니다.
Spring Batch 특징
- 트랜잭션(Transaction) 관리
- Chunk 기반 처리
- 선언적 I/O
- 시작/종료/재시작
- 재시작(Retry)/건너뛰기(Skip)
- 웹 기반 관리 인터페이스(Interface) (Spring Cloud Data Flow)
Spring Batch Architecture
Application
- 스프링 배치 프레임워크를 통해 개발자가 만든 모든 배치 Job과 커스텀 코드를 포함합니다.
- 개발자는 업무로직의 구현에만 집중하고 공통적인 기반 기술은 프레임워크가 담당하게 합니다.
Batch Core
- Job을 실행, 모니터링, 관리하는 API로 구성되어 있습니다.
- JobLauncher, Job, Step, Flow 등이 속합니다.
Batch Infrastructure
- Application, Core 모두 공통 Infrastructure 위에서 빌드합니다.
- Job 실행의 흐름과 처리를 위한 틀을 제공합니다.
- Reader, Processor, Writer, Skip, Retry 등이 속합니다.
Spring Batch 핵심 패턴(Pattern)
- Read: 데이터베이스, 파일, 큐에서 다량의 데이터를 조회합니다.
- Process: 특정 방법으로 데이터를 가공합니다.
- Write: 데이터를 수정된 양식으로 다시 저장합니다.
[참고자료]
반응형'BackEnd > Spring Batch' 카테고리의 다른 글
06. Job (0) 2021.12.16 05. 스프링 배치 초기화 설정 (0) 2021.12.16 04. 도메인 언어(Domain Language) (0) 2021.12.15 03. 메타데이터 스키마(Meta-Data Schema) (0) 2021.12.11 02. Hello Spring Batch Project (0) 2021.12.11