배치테이블을 자체 테이블로 대체할려면 가능할까요
- 작성자 :
- B****g
- 작성일 :
- 2020-07-09 18:03:22
- 조회수 :
- 2,589
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
한전에서
배치기능을 사용중인 시스템관리자입니다.
배치가 실행하다가 hang이 걸리면
중지버튼을 사용하고
그러면 batch_job_excution 테이블이 없습니다. 메세지가 뜹니다.
시스템에서는 사용하지 않구요
다른 테이블을 사용해서 배치 정보를 저장합니다.
그래서 타겟 테이블명을 바꾸어야 기능 사용이 가능한데요
시스템에서 검색도 되지 않아서요
쿼리를 수정 못하게 제공하니 수정하기가 불가능하군요
방법이 있을까요
배치기능을 사용중인 시스템관리자입니다.
배치가 실행하다가 hang이 걸리면
중지버튼을 사용하고
그러면 batch_job_excution 테이블이 없습니다. 메세지가 뜹니다.
시스템에서는 사용하지 않구요
다른 테이블을 사용해서 배치 정보를 저장합니다.
그래서 타겟 테이블명을 바꾸어야 기능 사용이 가능한데요
시스템에서 검색도 되지 않아서요
쿼리를 수정 못하게 제공하니 수정하기가 불가능하군요
방법이 있을까요
A
안녕하세요.
표준프레임워크 센터입니다.
'batch_job_excution 테이블이 없습니다. ' 라는 메세지가 뜨는것으로 보아,
센터에서 제공하는 배치운영환경(BOPR)이나, 별도로 구성하신 어플리케이션에서 Spring batch를 쓰고 계신것 같습니다.
Spring Batch를 사용하시는 경우 배치실행정보들이 기록되는 JobRepository 의 테이블들(BATCH_ 로 시작하는 테이블들)은
테이블명의 prefix인 'BATCH_' 만 수정가능합니다. (변경옵션이 존재합니다.)
해당 테이블들에 저장하는 SQL들은 Spring Batch 내부에 존재하고 실행되도록 되어있어서 별도로 수정이 불가능합니다.
Spring batch에서 제공하는 실행이력들을 DB에 저장하길 원치 않으시고,
별도로 구성한 테이블들에 별도로 실행이력들을 남기고 싶으시다면,
jobRepository를 db가 아닌 in-memory 방식으로 구성하여 사용하시면 됩니다.
단 실행 이력들을 저장하는 처리를 모두 별도로 해주셔야 할 것입니다.
참고로, 이 방법외에 Spring Batch 관련테이블들에 트리거(DB단에서)를 적용하여 데이터가 입력될때
이벤트를 캣치하여 다른테이블로 복사하는식으로도 처리할 수 있을것 같습니다.
이상 답변이 도움되셨길바랍니다.
감사합니다.
표준프레임워크 센터입니다.
'batch_job_excution 테이블이 없습니다. ' 라는 메세지가 뜨는것으로 보아,
센터에서 제공하는 배치운영환경(BOPR)이나, 별도로 구성하신 어플리케이션에서 Spring batch를 쓰고 계신것 같습니다.
Spring Batch를 사용하시는 경우 배치실행정보들이 기록되는 JobRepository 의 테이블들(BATCH_ 로 시작하는 테이블들)은
테이블명의 prefix인 'BATCH_' 만 수정가능합니다. (변경옵션이 존재합니다.)
해당 테이블들에 저장하는 SQL들은 Spring Batch 내부에 존재하고 실행되도록 되어있어서 별도로 수정이 불가능합니다.
Spring batch에서 제공하는 실행이력들을 DB에 저장하길 원치 않으시고,
별도로 구성한 테이블들에 별도로 실행이력들을 남기고 싶으시다면,
jobRepository를 db가 아닌 in-memory 방식으로 구성하여 사용하시면 됩니다.
단 실행 이력들을 저장하는 처리를 모두 별도로 해주셔야 할 것입니다.
참고로, 이 방법외에 Spring Batch 관련테이블들에 트리거(DB단에서)를 적용하여 데이터가 입력될때
이벤트를 캣치하여 다른테이블로 복사하는식으로도 처리할 수 있을것 같습니다.
이상 답변이 도움되셨길바랍니다.
감사합니다.