실행 계획 예상 비용 0 1 2,948

by 나기카프 [SQL Query] [2024.03.22 11:26:06]


안녕하세요. DB를 이제 막 공부하고 있는 초보입니다.

쿼리 수행시간이 길어져서 쿼리 튜닝을 진행하고 있습니다.

쿼리를 짜보기만 하고 튜닝은 해본적이 없어서 삽질하면서 짜고 있는데요,

 

저는 Execution Plan 기준으로 Cost를 가장 적은 결과가 빠른 쿼리라고 생각하면서 튜닝했습니다.

A쿼리가 B쿼리보다 30배 정도 Cost가 높은데, 실행시간은 절반정도 빠릅니다.

데이터가 버퍼 캐시에 있는 상태, 캐시에 없는 상태 동일하게 B쿼리가 빠릅니다.

 

제가 알고 있는 지식으로는 이해가 안가는데요,

1. Optimizer Excution Plan으로 분석할 때 Cost뿐 아니라 Rows나 NodeType을 같이 고려해야하는 지

예를들면, NodeType중 Sort와 Merge Join 두 타입이 같은 비용이라도 다른 가중치가 있나요?

2. 실행계획의 Cost가 '최소-최대' 형식으로 표현이 되는데, 최소와 최대가 차이가 크게 나타나는 이유가 뭔지

3. 실제 속도와 Cost와 상관관계가 있나요?

가 궁금합니다.

 

아, 데이터베이스는 PostgreSQL 사용하고 있습니다.

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