반응형
- 스프링 배치 메타 데이터
- 스프링 배치의 실행 및 관리를 위한 목적으로 여러 도메인들 ( Job, Step , JobParameters .. ) 의 정보들을 저장 업데이트, 조회할 수 있는 스키마 제공
- 과거, 현재의 실행에 대한 세세한 정보, 실행에 대한 성공과 실패 여부 등을 일목요연하게 관리 함으로서 배치 운용에 있어 리스크 발생시 빠른 대처 가능
- DB와 연동할 경우 필수적으로 메타 테이블이 생성되어야한다.
- DB 스키마 제공
- 파일위치 : org/springframework/batch/core/***
- DB 유형별로 제공
- 스키마 생성 설정
- 수동생성 : 스크립트를 가져와 쿼리 복사 후 직접 실행
- 자동생성 : spring.batch.jdbc.initialize-schema 설정
- ALWAYS
- 스크립트 항상 실행
- RDBMS 설정이 되어 있을 경우 내장 DB보다 우선적으로 실행
- EMBEDDED
- 내장 DB일 때만 실행되며 스키마가 자동 생성됨, 기본값
- NEVER
- 스크립트 항상 실행 안됨
- 내장 DB 일경우 스크립트가 생성이 안되기 때문에 오류 발생
- 운영에서 수동으로 스크립트 생성 후 설정하는 것을 권장함
- ALWAYS
- 배치 테이블 설명
- 구성
- JOB_INSTANCE
- Job이 실행될 때 JobInstance 정보가 저장되며 job_name과 job_key를 키로 하여 하나의 데이터가 저장
- 동일한 job_name과 job_key로 중복 저장될 수 없다.
- JOB_EXECUTION
- job의 실행정보가 저장되며 Job 생성, 시작, 종료시간, 실행상태, 메시지 등을 관리한다.
- JOB_EXECUTION_CONTEXT
- Job과 함께 실행되는 JobParameter 정보 저장
- JOB_EXECUTION_PARAMS
- Job의 실행동안 여러가지 상태정보, 공유 데이터를 직렬화 (Json 형식) 해서 저장
- Step 간 서로 공유 가능하다.
- STEP_EXCUTION
- Step의 실행정보가 저장되며 생성, 시작, 종료시간, 실행상태, 메시지 등을 관리한다.
- STEP_EXCUTION_CONTEXT
- Step의 실행동안 여러가지 상태정보, 공유 데이터를 직렬화 해서 저장
- Step별로 저장되며 Step 간 서로 공유할 수 없다.
- JOB_INSTANCE
- ⇒ Job과 관련된 테이블
- 구성
반응형
'Spring' 카테고리의 다른 글
[Design Pattern] Strategy Pattern 전략패턴에 대해 알아보자! (0) | 2022.10.30 |
---|---|
[DI,DIP] 의존성 주입에 대하여 (0) | 2022.10.12 |
[SpringBoot - 인프런] EnableBatchProcessing (0) | 2022.08.20 |
[인프런/개념] 스프링 배치 : 아키텍처 (0) | 2022.08.12 |
[SpringBoot - 인프런] 스프링 배치의 개요 (0) | 2022.08.04 |