Spring Batch

Spring Batch

[Spring Batch] 스프링 배치4 - JobRepository와 메타 테이블

1. JobRepository란? 스프링 배치에서는 JobRepository 인터페이스 그 자체를 의미하거나, JobRepository 인터페이스를 구현해 데이터를 저장하는 데 사용되는 데이터 저장소를 의미한다. 개발자가 직접 JobRepository 인터페이스를 직접 다룰 일은 거의 없으므로 본문은 후자를 지칭한다. 이러한 JobRepository는 잡이나 스텝 등의 상태를 저장하는 데 사용되며, 실행 추세와 횟수 등을 담고 있으므로 모니터링 영역 등에서 유용하게 사용된다. 2. JobRepository 내 메타 테이블 살펴보기 RDB는 스프링 배치에서 기본적으로 사용되는 JobRepository이며, RDB를 사용할 경우 스프링 배치가 제공하는 여러 테이블을 이용해 배치 메타 데이터를 저장한다. 스키..

Spring Batch

[Spring Batch] 스프링 배치3 - 스텝(Step)

1. 스텝이란? 잡이 전체적인 처리를 지칭하는 반면, 스텝은 잡의 구성 요소를 담당한다. 스텝(step)은 모든 단위 작업의 조각으로서 트랜잭션 내에서 자체적으로 입/출력을 처리한다. 즉, 스텝을 정의하자면 독립적이고 순차적으로 배치 처리를 수행하는 잡의 하위 컴포넌트라고 할 수 있다. 배치 처리는 일반적으로 데이터 처리와 관련이 있는데, 데이터 처리를 위한 태스크릿(Tasklet) 모델과 청크(Chunk) 기반 처리 모델 두 가지 유형의 처리 모델을 지원한다. 1) 태스크릿 모델 단일 명령만 실행하는 작업에 적합 삭제 SQL문 실행, 디렉터리를 정리하는 셸 스크립트, 알림 메일 전송 등 Tasklet 인터페이스를 사용해 Tasklet.execute 메서드가 RepeatStatus.FINISHED를 반환..

Spring Batch

[Spring Batch] 스프링 배치2 - 잡(Job)

1. 잡이란? 잡(job)은 처음부터 끝까지 독립적으로 실행할 수 있는 고유하며 순서가 지정된 여러 스텝의 목록이다. 이 정의가 너무 장황하다면 이전에 설명했던 대로 "배치로 수행할 전체 작업" 정도로 생각해도 무방할 것 같다. 잡의 특성은 다음과 같다. 1) 유일하다 잡은 동일한 구성으로 반복적으로 실행할 수 있다 2) 순서를 가진 여러 스탭의 목록이다 잡은 모든 스텝을 논리적으로 실행할 수 있도록 구성된다 어떤 일련의 과정을 거쳐야만 비로소 전체 작업이 달성되는 것이다 3) 처음부터 끝까지 실행 가능하다 외부 의존성 없이 실행할 수 있는 일련의 스텝이다 즉, 이전 스텝 작업의 결과를 기다리는 식으로 잡을 구성하는 것이 아니라 시작을 바로 할 수 있는 시점에 잡이 시작되도록 잡을 구성해야 한다는 것이다..

Spring Batch

[Spring Batch] 스프링 배치1 - 기본 구조 및 도메인

배치 애플리케이션의 개념과 스프링 배치의 대략적인 개요는 여기를 참고하자. 여기서는 전체적인 그림만 그리고 세부적인 사항과 구현은 별도의 포스팅으로 다룰 예정이다. 1. 스프링 배치 기본 구조 스프링 배치는 세 개의 티어로 구성된 레이어 구조로 이루어져있다. 1) 애플리케이션 레이어 (Application Layer) 배치 처리 구축에 사용되는 모든 사용자 코드와 구성 비즈니스 로직, 서비스, 잡 구조화와 관련된 구성을 포함한다 코어와 인프라스트럭처를 이용해 배치의 기능을 만든다 2) 코어 레이어 (Core Layer) 배치 도메인을 정의하는 모든 부분이 포함된다 Job, Step, JobLauncher, JobParamters 3) 인프라스트럭처 레이어 외부와 상호작용을 담당한다 파일, 데이터베이스와의..

코택
'Spring Batch' 카테고리의 글 목록