1. chunk
기본개념t
- Cunck란 여러개의 아이템을 묶은 하나의 덩어리를 의미한다.수정
- 한번에 하나씩 아이템을 입력받아 Chunk 단위의 덩어리로만들어 Cunck 단위로 트랙잭션을 처리한다, Cunck 단위의 Commit과 Rollback이 이루어짐
- 일반적으로 청크 단위로 쪼개어 더이상 처리할 데이터가 없을때까지 반복해서 입출력하는데 사용된다.
입력기가 item들을 읽어서 원안에 저장한다. 이원들이 청크가된다
이덩어리의 청크를 출력기에 보낼때는 item의 묶음인 items로 하나의 단위로 묶어서 보낸다.
![chunk 와 chunk
chunck를 전달받은 ItemProcessor은 가공되고 변형한다음 Chunk
- Cunck < I > 차이점 Cunck< O >
- Cunck 는 ItemReader로 읽은 하나의 아이템을 chunk에서 정한 개수만큼 반복해서 저장하는 타입
- Cunck
는 ItemReader로부터 전달받은 Cunck를 참조해서 ItemProcessor에서 적절하게 강공, 필터링한 다음 ItemWriter 에전달하는 타입
Chunk 아키텍처
chunk를 사용해 item들을 어떻게 받고, 가공하여 DB까지 처리되는 아키텍쳐 (chunk3.jpg)
- source로부터 읽어서 chunk에 저장되고 List에 item들을 담아놓는다.
- chunk size만큼 자리수가 찰때까지 반복한다.
- 다찬다면, inputs 들을 ItemProcessor로 전달한다, Iterator로 읽으면서 번형, 가공한다.
- transform을 item개수만큼 Chunk
에 담는다. 그후 최종적으로 ItemWriter에게 전달한다. - 그후 최종적으로 DB에 저장한다.
즉 ItemReader, ItemProcessor는 Chunk 내 개별 아이템을 처리한다.
ItemWriter는 Chunk 크기만큼 아이템을 일괄 처리한다.
작성중…..