[SPRING] Batch 프로세스
"데이터를 청크청크! Spring Batch로 일괄 처리 마스터하기"
Batch - Job, Step, Tasklet
Batch 프로세스는 크게 3가지로 나뉜다
Job -> Step -> Tasklet : chunk단위 처리 (Reader, 읽기 + Process, 처리 + Writer, 쓰기 순으로 동작)
청크란 작업할 데이터의 각 커밋 사이에 처리되는 row의 수
Chunk 단위 처리의 구조를 살펴보자.
- Reader에서 데이터를 읽어온다.
- 읽어온 데이터를 Processor에서 가공한다.
- 가공된 데이터들은 별도에 공간에 모은 뒤, Chunk 단위만큼 쌓이면 Writer에 전달하고 Writer는 일괄 저장을 시킨다.
Reader와 Processor에서는 1건씩 다뤄지고, Writer에선 Chunk 단위로 처리된다.
일련의 과정을 하나의 Job하나의 배치 처리단위라고 말한다.
Step은 실제 Batch 작업을 수행하는 역할.
Batch 비지니스 로직을 처리하는 기능은 Step에 구현되어 있다.
Step는 Batch로 실제 처리하고자 하는 기능과 설정을 모두 포함하는 장소.
Step은 Tasklet 단위로 처리.
참고 :
https://khj93.tistory.com/entry/Spring-Batch%EB%9E%80-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B3%A0-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
Spring Batch란? 이해하고 사용하기(예제소스 포함)
들어가기 앞서.. Spring Batch에는 굉장히 많은 설정과 기능들이 존재합니다. 해당 포스팅에서는 기초적인 Spring Batch에 대해서 설명하고 사용하는 예제에 대해서 설명을 하려고 합니다. Spring Batch를
khj93.tistory.com
https://velog.io/@hyunho058/Spring-Batch-Chunk-%EC%A7%80%ED%96%A5-%EC%B2%98%EB%A6%AC
[Spring Batch] Chunk 지향 처리
chunk - 데이터 덩어리로 작업 할 때 각 커밋 사이에 처리되는 row수Step은 Tasklet 단위로 처리되고, Tasklet 중에서 ChunkOrientedTasklet을 통해 Chunk를 처리하며 이를 구성하는 3 요소 ItemReader, ItemWriter
velog.io
https://velog.io/@ililil9482/Chunk-%EC%A7%80%ED%96%A5-%EC%B2%98%EB%A6%AC
https://devocean.sk.com/blog/techBoardDetail.do?ID=164085
Spring Batch 는 어떻게 Chunk 지향처리를 하고, Transaction을 언제 걸까
devocean.sk.com
3줄 요약
1. Spring Batch의 핵심 구조는 Job → Step → Tasklet으로 구성되며, 주로 청크(Chunk) 단위로 데이터를 처리한다.
2. Reader는 데이터를 읽고, Processor는 데이터를 가공하며, Writer는 청크 단위로 데이터를 일괄 저장한다.
3. Step은 실제 배치 작업과 설정을 담당하며, Tasklet은 Step 내에서 구체적인 처리 작업을 수행한다.
'Java > Spring' 카테고리의 다른 글
[Spring] @Data (1) | 2024.10.21 |
---|---|
[Spring] 프로메테우스와 그라파나 (0) | 2024.10.17 |
[Spring] 다양한 엔드포인트 (1) | 2024.10.15 |
[Spring] QueryDSL (0) | 2024.10.10 |
[Spring] 빈 스코프 (0) | 2024.10.10 |