DBLINK 문의 드립니다... 0 3 744

by 레알 [DB 기타] [2016.06.14 11:48:37]


안녕하세요

현재 DBLINK로 대리결재자 정보를 조회(VIEW 사용)하고 있는데 전직원이 사용하다 보니 세션 과부하 현상이 발생됩니다.

(대략 1000번 정도 조회되는거 같습니다.)

그래서 5분 마다 배치로 현재날짜에 시작일과 종료일이 조회되는 결재자 정보를 A테이블에 이관 작업하려고 합니다.

여기서 문제가 결재자 정보가 자주는 아니지만 삭제되는 경우도 종종 발생됩니다.

아래 방법중 어떤게 성능상 이슈없이 사용가능한지 답변 부탁드립니다 ^^;;

1. MERGE 문을 사용.

2. A 테이블 전체 DELETE 후 INSERT 

 

by jkson [2016.06.14 11:54:17]

원본테이블의 컬럼 크기 변경이라든지 수정이 생기면 프로시저로 동기화할 때 오류날 가능성이 크구요.. 원본테이블이 그렇게 크지 않고 데이터 변경이 자주 일어나는 편이 아니라면 MVIEW(MATERIALIZED VIEW) 사용하세요.


by 겸댕2후니 [2016.06.14 13:03:27]

jkson님 말씀대로, Mview를 사용하시는 것이 좋을 것 같습니다.

갱신시간을 5분으로 설정하시면, 위에서 말씀하신 결과와 동일합니다.


by 레알 [2016.06.15 10:45:31]

json, 겸댕2후니 님 좋은 정보 감사합니다~

MVIEW 좋은 기능이네요 ㅎㅎ

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입