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
'BackEnd > Spring Batch' 카테고리의 다른 글
Spring Batch 실행 순서 정리 (0) | 2025.06.24 |
---|---|
Spring Batch Chunk Size에 따른 성능 비교 실험 (Bulk Insert 포함) (0) | 2025.06.02 |
Spring Batch + MyBatis 예제 정리 (CSV → DB 처리) (0) | 2025.06.02 |