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
운영게시판
최근게시물
PostgreSQL Q&A 4686 게시물 읽기
No. 4686
속도문제..
작성자
한강희
작성일
2003-04-29 14:03
조회수
1,447

semi=> EXPLAIN SELECT uid FROM archive where bid=test;

ERROR: Attribute 'test' not found

semi=> EXPLAIN SELECT uid FROM archive where bid='test';

NOTICE: QUERY PLAN:

 

Seq Scan on archive (cost=0.00..2105.71 rows=355 width=4)

 

EXPLAIN

semi=> EXPLAIN SELECT uid FROM bbs where bid='test';

NOTICE: QUERY PLAN:

 

Seq Scan on bbs (cost=0.00..22.50 rows=5 width=4)

 

EXPLAIN

semi=>

 

위의 쿼리를 보시면 archive테이블에는 게시물이 7만건 정도이구여 bbs게시판에는 게시물이 10건정도입니다. 구조는 archive나 bbs나 비슷하구여.

가장 간단한 쿼리로 체크를 했는데도 게시물이 많다고 저리 시간차이가 나네여. 하드웨어의 성능은 펜3(550)에 램이 128인데 저렇게까지 차이가 날일은 없다고 생각하는데 고수님들의 의견바랍니다.

이 글에 대한 댓글이 총 3건 있습니다.

먼저 cost 값은 시간을 뜻하는 것이 아니라, DB를 사용하는데 든 비용을 뜻합니다.

정확하게 메뉴얼에서는 이렇게 말하고 있네요.

 

which(cost) is the planner's guess at how long it will take to run the query (measured in units of disk page fetches).

 

제가 보기에는 지극히 정상적인 값인 것 같습니다. 왜냐하면, 10만 자료중에 인덱스를 사용하지 않고 350건을 찾아내려면 비용이 저만큼은 들듯. :)

 

일단 인덱스를 만들어보시고,

다음 vacuum으로 쓰지 않는 데이터들을 정리하시고, 다시 테스트해보세요.

김상기(ioseph)님이 2003-04-30 23:13에 작성한 댓글입니다.

참고로 이곳 게시판들의 검색 루틴은 100만건 이상의 자료에서 쿼리를 사용하고 그것도 결과내 검색 (and 연산)일 경우는 그런 자료에 대한 또 inner join을 사용하고 있습니다. 인덱스를 사용하지 않고서는 꿈도 못꾸는 일이지요.

김상기(ioseph)님이 2003-04-30 23:15에 작성한 댓글입니다.

답변 감사합니다.

한강희님이 2003-05-01 15:26에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
4689웹호스팅 인트라넷 구축에 대한 질문입니다..
최강석
2003-04-30
1167
4688[질문]자료 복구 명령어 pg_restore ? [3]
대훈
2003-04-30
2906
4687[질문]postgresql 시작 과정이 어떻게 되지요? [2]
박병호
2003-04-29
1353
4686속도문제.. [3]
한강희
2003-04-29
1447
4685[질문] 무료 RDBMS에 대한 법적문제에 대하여... [2]
김남영
2003-04-28
1556
4683db에서 한 테이블 데이터만 백업 받을려면... [1]
gabriel
2003-04-28
1435
4681[질문] foreign key 오류 나요... ㅠ_-); [2]
임유빈
2003-04-25
1214
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다