explain analyze를 통한 PLAN 분석 예제 입니다.
해당 명령은 PLAN확인 뿐만 아니라 실제 수행이 동반되므로 주의해야 합니다.
1. 테스트를 위한 테이블은 먼저 생성한 테이블을 기준으로 합니다.
create table zz_test001
(
a varchar(5),
b varchar(10)
);
create table zz_test002
(
c varchar(5),
a varchar(5),
b varchar(10)
);
2. SQL PLAN 정보 보기 (실행계획 확인)
explain analyze
select *
from zz_test001 a,
zz_test002 b
where a.a = '00001'
and a.a = b.a;
3. SQL PLAN 결과
explain analyze을 통해 SQL을 수행합니다. (explain analyze는 SQL이 실제 수행됩니다.)
Nested Loop (cost=0.00..5.84 rows=3 width=40) (actual time=0.020..0.062 rows=3 loops=1)
-> Seq Scan on zz_test001 a (cost=0.00..1.80 rows=1 width=17) (actual time=0.010..0.020 rows=1 loops=1)
Filter: ((a)::text = '00001'::text)
-> Seq Scan on zz_test002 b (cost=0.00..4.01 rows=3 width=23) (actual time=0.005..0.035 rows=3 loops=1)
Filter: ((b.a)::text = '00001'::text)
Total runtime: 0.103 ms
=> cost = 추정치이므로 실제 수행 시간과는 차이가 있습니다.
actual time = 실제 수행 시간 (explain analyze으로 설정)
loops = 해당 노드를 수행하는 총회수
총실행 시간 = 결과행 조직을 위한 시간 + 수행자 기동 및 정지시간, 해석 및 PLAN 작성 시간은 제외
by, 박용훈
'2. DBMS이야기 > 01. PostgreSQL' 카테고리의 다른 글
PPAS DB Full 백업 스크립트 작성 및 관리 방법 (0) | 2014.05.23 |
---|---|
[Admin] 1.Architecture : Data Cluster (0) | 2014.05.22 |
[Admin] 1.Architecture : Instance (0) | 2014.05.21 |
PostgreSQL 내부 아키텍처에 따른 성능 지연 이슈? (0) | 2014.05.13 |
PostgreSQL (PPAS) PLAN 및 실행계획 보기 [1] (1) | 2014.04.22 |