오라클 여러 테이블 동시 셀렉트 방법 0 4 877

by 엽기토끼이요 [SQL Query] [2019.10.31 09:46:26]


환경은 DBLINK로 연결된 여러 서버가 있습니다. 이 서버들이 하나같이 느려서 셀렉트가 10초이상걸릴 때가 많습니다.

순차적으로 접근하다 보니 최종 조회 시간이 20초를 넘어 가는 것도 많고요.

그래서 각 테이블 자체를 동시에 셀렉트 하고싶은데, 오라클 스레드로 검색하면 도움되는 이야기는 없네요... 프로시저 스레드를 검색하면 스케줄러 이야기를 꺼내고요. 프로시저도 여러개 동시에 돌릴 예정인데 스케줄러로 돌리면 끝날 때 가지 순서를 기다리면서 해야하니까 제가 원하는 답도 아니더라고요.

 

요약.

3개의 테이블에 대해서 (셀렉트, 인서트, 업데이트, 머지, 프로시저) 이런 작업들을 동시에 실행을 하고싶다.(응답 결과가 느리기 때문에)

 

안 되는걸 저혼자 삽질 하는 기분이 드네요.

by 우리집아찌 [2019.10.31 09:54:58]

오라클이 아니라 ajax 처럼 비동기방식으로 처리하면 될거 같습니다 그리고 디비링크 이용시 서버간의 테이블 조인은 피하는것이 좋습니다


by 엽기토끼이요 [2019.10.31 09:59:35]

서버간의 테이블 조인은 아니고요. 다른 테이블을 그냥 조회만 할 뿐 입니다. 쿼리 자체에서 스레드 같이 해결 하고 싶은데 키워드 혹시 모르시나요? 키워드만 좀 알아서 해결 될 기분인데...


by 우리집아찌 [2019.10.31 10:07:07]

제가 아는한 쿼리에서 그런기능은 없는걸로 알고있습니다.

다른방법을 이용하시는기 좋을것 같네요


by 부쉬맨 [2019.11.01 11:50:01]

조회를 해서 표현방법에 대한 내용이없네요.

해당 3개 테이블을 한번에 나열에서 그리드에서 보고 싶은거라고하면 union all하여서 보면될꺼같은데

쿼리자체를 스레드 같이 해결하고 싶으신거라면 패러럴로 처리하는 방법은있습니다.

db관점이 아니라 개발관점에서 스레드를 처리하여서 해당 테이블을 날려볼수있을텐데 차라리 개발쪽단에서 풀어보는걸 추천합니다.

이유는 그냥 조회도 아니고 dblink조회임으로 패러럴이 안될꺼라서요.

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