database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 5533 게시물 읽기
No. 5533
실행계획 고정시키기
작성자
배우미(iloveuu)
작성일
2010-01-13 13:10
조회수
6,142

A, B 테이블이 있다고 하겠습니다. B테이블은 리모트의 이기종 데이터베이스의 테이블입니다

select ..... from A, B
where A.key = B.key

일경우는 A의 데이터를 읽고 B쪽으로 NL로 풀려서 빠르게 데이터가 보여집니다. 그러나

select ..... from A, B
where A.key = B.key
and B.data = 'cond' ------------ <>

로 B쪽 리모트 쪽으로 체크조건이 한가지 들어갈 경우 많이 느려지는 환경입니다. 즉, 결국에는

A와 B가 먼저 조인된 결과를 먼저 도출해내고 <>의 조건을 마지막 체크조건으로 해야 가장 최선으로

보여집니다. 실제로 그렇게 풀렸으면 좋겠지만 query_rewrite가 되면서 <> 조건이 B쪽 테이블로

삽입되어 A와 B(<>조건의 결과)가 조인되어 많은 B를 가져오기 위하여 쿼리 성능이

확 줄어들고 있습니다. 힌트를 줘가면서 해봤는데 죽어라고 B를 가져올 때, <> 조건을 타더군요

with TT as ( select ... from A, B where A.key = B.key)
select * from TT where data = 'cond'

라고 해도 같더군요. 어떻게 해결하면 좋을까요? 특정 inline view에 실행계획을 고정시키는 방법이

있을까요?

[Top]
No.
제목
작성자
작성일
조회
5538쿼리분석기로 서로다른 서버의 테이블과 데이타 모두를 복사하고 싶습니다. [2]
이기자
2010-01-19
6977
5535원격에서 DB에 접속하고픈데 안됩니다. [1]
hyperhand
2010-01-16
6260
5534쿼리 수정좀 해주시면 감사 하겠습니다. [2]
강진수
2010-01-13
6047
5533실행계획 고정시키기
배우미
2010-01-13
6142
5532프로시저내에서 프로시저호출 [2]
이종명
2010-01-13
6425
553180% 확률을 구하고 싶습니다. [1]
조중규
2010-01-12
7381
5528조인 vs 서브 쿼리 관련 문의드립니다. [3]
도와주세요
2010-01-08
6385
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다