inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 배치

Partitioning (2)

Multi-threaded과 Partitioning의 차이가 있나요?

1117

김나다

작성한 질문수 8

0

Multi-threaded에다가 각 스레드가 담당할 데이터를 구분시켜주는 기능이 포함된게 Partitioning인가요??

단지 차이점이 이렇게만 느껴집니다

spring-boot spring-batch

답변 1

3

정수원

Multi-threaded 가 하나의 스텝안에서 청크 프로세스를 여러 스레드가 동시적으로 처리하는 개념이라면 Partitioning 은 각 스레드별로 스텝자체가 할당되어 동시적으로 처리되는 개념입니다.

그 외에도 내부적인 처리 동작은 차이가 나긴 합니다.

청크 프로세스를 멀티스레드로 처리할 것인지 아니면 스텝 자체를 멀티스레드로 처리할 것인지 기준을 정하면 되는데 Multi-threaded 에 의한 청크프로세스는 여러 스레드가 ItemReader 객체를 공유해서 사용하기 때문에 경합이 발생하는 대신에 Partitioning 은 처음부터 스레드별로 스텝이 독립적으로 할당되고 데이터가 중복되지 않도록 읽어오기 때문에 경합이 발생하지 않는다는 것도 차이점이라 할 수 있습니다.

Multi-threaded 는 동시적 접근 즉 concurrency 개념이라면 Partitioning 는 병렬접근 즉 parallel 개념으로 이해하시면 될 것 같습니다.

스프링 배치 버전 질문

0

122

1

소스코드가 어디에 있나요?

0

96

2

트랜잭션 예외

0

92

1

질문이 있습니다.

0

130

2

ChunkListener 에서 beforeChunk 의 실행 시점 관련 질문

0

125

2

여러 JOB 설정하는법

0

150

2

강의 자료 다른 방법 있을까요?

0

154

1

JobExecution과 JobExecutionContext와의 관계

0

186

2

특정 job만 실행

1

252

1

Batch 성능 질문

0

153

1

ItemReaderAdapter 종료

0

80

1

[ 강좌 Git 브랜치 문의 ] 섹션 9 > JdbcCursorItemReader, JpaCursorItemReader

0

179

2

Spring Batch 배포 질문

0

246

2

spring batch 버전

0

236

2

retry count 관련 질문

0

172

2

StepExecutionListener 의 afterStep 에서 return ExitStatus.FAILED 에 의한 동작에 의문이 갑니다.

0

330

2

jdbc, jpa 커서방식 조회 방식 차이 질문 (강사님께 답변 받고 싶습니다)

0

235

2

Multithread step과 AsyncItemProcessor

0

203

2

job 재실행

0

251

2

bean 생명주기 문제 도와주세요(@Scope("step"), @Autowired)

0

183

1

Multi-threaded-step과 Partitioning 차이 확인

0

175

2

jdbcCursorReader, jdbcPagingReader 질문

0

146

1

step muti-thread 질문

0

111

1

itemSteam open update close 질문

0

112

1