실행계획이 달라지는 경우에 대해서 문의드립니다.

by 동건 posted Jan 13, 2019

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window10 64bit
CUBRID Ver.
최신버전
CUBRID TOOL Ver.
최신버전
응용 환경(API)
매니저 쿼리실행

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
1. 이관 테스트에서 쿼리 속도가 나오지 않는 문제가 있어, 검토중에 있습니다.  

  1) A 테이블을 A_test로 변경하는 형태로 여러 테이블을 생성하였습니다. 해당 쿼리는 직접 실행하였습니다.

  2) 위 과정에서, PK/FK/INDEX  등에 대해서는 기존에 있는 테이블을 참조하여, 네이밍 및 대상 테이블도 다 맞게 변경해주었습니다. (copy는 copy 테이블을 바라보도록)

  3) COPY된 테이블에 원본 테이블 정보를 INSERT SELECT 구문으로 등록 진행하였습니다.


2. 테이블만 바뀐 동일한 쿼리를 실행할 때, 한쪽의 쿼리가 너무 느려지는 현상을 확인하였습니다. 

  1) 30~35초 vs 0.2초

  2) 실행계획을 확인하니, 전체 비용이 달랐습니다. 중간 과정에서 인덱스를 타는 순서가 다른 경우를 확인하였습니다. (log 파일들의 46라인, 194라인 참조바랍니다. )

  3) 앞서 키 등에 대해서는 동일하게 지정하였는데, 왜 위와같은 결과가 나오는지 알 수 있을까요?

  4) 실행계획 스크린샷 및 관련 쿼리 등 참조할만한 내용은 첨부하겟습니다.



혹시 인덱스 적용 관련하여 별도 작업이 필요하다던지.. 가이드가 있으시면 답변 부탁드립니다.

감사합니다.



Articles

35 36 37 38 39 40 41 42 43 44