[SPRING] 스프링 배치의 그리드 크기
SPRING스프링 배치의 그리드 크기
대량 파일에서 데이터를 읽고 처리하고 DB에 삽입하는 배치 작업이 있습니다.
나는 기본 파티션 핸들러를 사용하여 spring의 파티션 기능을 사용하고있다.
<bean class="org.spr...TaskExecutorPartitionHandler">
<property name="taskExecutor" ref="taskExecutor"/>
<property name="step" ref="readFromFile" />
<property name="gridSize" value="10" />
</bean>
여기에 gridSize의 의미는 무엇입니까? taskExecutor의 동시성과 동일한 방식으로 구성했습니다.
해결법
-
==============================
1.gridSize는 (보통) 동일한 수의 작업자가 처리 할 데이터 블록 수를 지정합니다. 맵 / 축소에서 매핑 된 데이터 블록의 수로 생각하십시오.
gridSize는 (보통) 동일한 수의 작업자가 처리 할 데이터 블록 수를 지정합니다. 맵 / 축소에서 매핑 된 데이터 블록의 수로 생각하십시오.
StepExecutionSplitter를 사용하여 데이터가 주어지면 PartitionHandler "partitions"/는 gridSize 파트로 데이터를 분할하고 각 파트를 독립적 인 worker => 쓰레드로 보냅니다.
예를 들어 DB에 처리해야하는 행이 10 개 있습니다. gridSize를 5로 설정하고 직선적 인 파티션 논리를 사용하면 스레드 당 2 개의 행 => 5 개의 스레드가 각각 2 개의 행에 동시에 작업하게됩니다.
-
==============================
2.API에 따라,
API에 따라,
-
==============================
3.그리드 크기는 하나의 분할 된 단계가 처리를 위해 들어 올릴 작업 집합입니다 (가방 자루로 가정). 모든 작업 (가방 자루)을 다 마친 후에는 다음 작업 세트 (가방 자루)로 돌아올 것입니다.
그리드 크기는 하나의 분할 된 단계가 처리를 위해 들어 올릴 작업 집합입니다 (가방 자루로 가정). 모든 작업 (가방 자루)을 다 마친 후에는 다음 작업 세트 (가방 자루)로 돌아올 것입니다.
from https://stackoverflow.com/questions/7759156/grid-size-in-spring-batch by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] @ServerEndpoint 및 @Autowired (0) | 2019.02.12 |
---|---|
[SPRING] 스프링 보안 : REST 인증 테스트 및 이해 (0) | 2019.02.12 |
[SPRING] ItemWriter에 보내기 전에 중복 된 항목을 필터링하는 방법을 일괄 처리하는 방법 (0) | 2019.02.12 |
[SPRING] Spring 프로필, 다른 Log4j2 구성 (0) | 2019.02.12 |
[SPRING] GET 리디렉션에서 SessionAttributes가 지워지는 이유는 무엇입니까? (0) | 2019.02.12 |