BackEnd/Spring Batch

Spring Batch 실행 이력 테이블 분석 가이드

Raconer 2025. 6. 2. 19:09
728x90

📁 BATCH_JOB_INSTANCE

실행된 Job의 논리적 인스턴스를 저장합니다.

 

컬럼명 타입 설명 예시
JOB_INSTANCE_ID BIGINT Job 인스턴스 고유 ID (PK) 1
VERSION BIGINT 낙관적 락을 위한 버전 번호 0
JOB_NAME VARCHAR(100) Job 이름 dailySalesJob
JOB_KEY VARCHAR(32) Job 파라미터의 해시 값 5ab0ef124abc…

 


 

📁 BATCH_JOB_EXECUTION

실제 Job 실행 이력 정보를 저장합니다.
컬럼명 타입 설명 예시
JOB_EXECUTION_ID BIGINT Job 실행 고유 ID (PK) 1
VERSION BIGINT 낙관적 락을 위한 버전 번호 0
JOB_INSTANCE_ID BIGINT 연결된 JobInstance ID 1
CREATE_TIME DATETIME(6) 실행 생성 시각 2024-06-01 10:00:00.000000
START_TIME DATETIME(6) Job 시작 시각 2024-06-01 10:01:00.000000
END_TIME DATETIME(6) Job 종료 시각 2024-06-01 10:05:00.000000
STATUS VARCHAR(10) 실행 상태 COMPLETED
EXIT_CODE VARCHAR(2500) 종료 코드 COMPLETED
EXIT_MESSAGE VARCHAR(2500) 종료 메시지 처리 완료
LAST_UPDATED DATETIME(6) 마지막 갱신 시각 2024-06-01 10:05:01.000000
JOB_CONFIGURATION_LOCATION VARCHAR(2500) Job 설정 파일 경로 classpath:jobs/sample.xml

 


 

📁 BATCH_JOB_EXECUTION_PARAMS

Job 실행 시 사용된 파라미터 정보를 저장합니다.

 

컬럼명
타입 설명 예시
JOB_EXECUTION_ID BIGINT Job 실행 ID (FK) 1
TYPE_CD VARCHAR(6) 파라미터 타입 (STRING, DATE 등) STRING
KEY_NAME VARCHAR(100) 파라미터 키 이름 targetDate
STRING_VAL VARCHAR(250) 문자열 값 2024-06-01
DATE_VAL DATETIME(6) 날짜 값 null
LONG_VAL BIGINT Long 타입 값 null
DOUBLE_VAL DOUBLE Double 타입 값 null
IDENTIFYING CHAR(1) Job 식별에 사용되는지 여부 Y

 


 

📁 BATCH_JOB_EXECUTION_CONTEXT

Job 실행 중 내부 상태를 직렬화하여 저장합니다.

 

컬럼명
타입 설명 예시
JOB_EXECUTION_ID BIGINT Job 실행 ID (PK) 1
SHORT_CONTEXT VARCHAR(2500) 간략화된 컨텍스트 정보 {“stepName”:“readData”}
SERIALIZED_CONTEXT TEXT 직렬화된 전체 컨텍스트 Serialized Object

 


 

📁 BATCH_STEP_EXECUTION

Job의 Step 단위 실행 정보를 저장합니다.

 

컬럼명
타입 설명 예시
STEP_EXECUTION_ID BIGINT Step 실행 고유 ID 100
VERSION BIGINT 낙관적 락 버전 0
STEP_NAME VARCHAR(100) Step 이름 loadToDBStep
JOB_EXECUTION_ID BIGINT 연결된 Job 실행 ID 1
START_TIME DATETIME(6) Step 시작 시각 2024-06-01 10:01:05
END_TIME DATETIME(6) Step 종료 시각 2024-06-01 10:03:00
STATUS VARCHAR(10) 실행 상태 COMPLETED
COMMIT_COUNT BIGINT 커밋 횟수 10
READ_COUNT BIGINT 읽은 데이터 수 1000
FILTER_COUNT BIGINT 필터링된 데이터 수 5
WRITE_COUNT BIGINT 쓴 데이터 수 995
READ_SKIP_COUNT BIGINT 읽기 중 스킵된 수 0
WRITE_SKIP_COUNT BIGINT 쓰기 중 스킵된 수 0
PROCESS_SKIP_COUNT BIGINT 처리 중 스킵된 수 0
ROLLBACK_COUNT BIGINT 롤백 횟수 1
EXIT_CODE VARCHAR(2500) 종료 코드 COMPLETED
EXIT_MESSAGE VARCHAR(2500) 종료 메시지 정상 처리
LAST_UPDATED DATETIME(6) 마지막 갱신 시각 2024-06-01 10:03:01

 


 

📁 BATCH_STEP_EXECUTION_CONTEXT

 

Step 실행 중의 컨텍스트 정보를 직렬화하여 저장합니다.

 

컬럼명
타입 설명 예시
STEP_EXECUTION_ID BIGINT Step 실행 ID (PK) 100
SHORT_CONTEXT VARCHAR(2500) 간략 컨텍스트 {“currentPage”:3}
SERIALIZED_CONTEXT TEXT 직렬화된 전체 컨텍스트 Serialized Object

 


 

📁 BATCH_JOB_SEQ / BATCH_JOB_EXECUTION_SEQ / BATCH_STEP_EXECUTION_SEQ

 

각 ID의 자동 생성을 위한 시퀀스 테이블입니다.

 

컬럼명
타입 설명 예시
ID BIGINT 마지막 생성된 ID 값 101
UNIQUE_KEY CHAR(1) 고정 값 (보통 '0') 0

 


 

📁 PEOPLE (예제 전용 사용자 테이블)

샘플 데이터용 테이블로 사용됩니다.

 

컬럼명
타입 설명 예시
person_id BIGINT AUTO_INCREMENT 고유 사용자 ID 100005
first_name VARCHAR(20) 이름 철수
last_name VARCHAR(20)

 

728x90