postgres index 만들기

code_able·2023년 3월 11일
0

postgres에서 데이터 마트를 구축하고
대시보드에서 보고자 한다.

데이터가 많아 마트를 따로 만들어 놨지만
여전히 쿼리 성능이 느리다.

인덱스는 쿼리 성능을 높여 줄 수 있는 좋은 도구다.
하지만 인덱스는 양날의 검이니 다음과 같은특징을 잘 알아야 한다.

인덱스의 특징

  1. 인덱스는 별도의 디스크공간을 사용하여 데이터베이스 크기가 증가한다.
  2. 별도의 디스크가 있는 만큼 삽입, 업데이트 및 삭제 시간이 증가한다.
    조회가 많고 삽입, 업데이트, 삭제가 낮은 테이블에 쓰면 좋다.
  3. 조회 조건이 바뀌면 인덱스는 먹히지 않는다. 이 때는 오히려 성능이 저하된다.
    그러니 실행계획을 잘 확인해 보자
  4. 메모리 사용량이 증가한다.

postgres 인덱스 사용

인덱스 생성

CREATE INDEX idx_table_1 on table (id, reg_date);

인덱스 확인

SELECT * FROM pg_indexes WHERE tablename = 'TABLE_NAME';

인덱스 삭제

DROP INDEX INDEX_NAME;
profile
할수 있다! code able

0개의 댓글