junhkang의 개발 블로그
close
프로필 배경
프로필 로고

junhkang의 개발 블로그

  • DEV (103)
    • Postgresql (47)
    • Linux (4)
    • AWS (4)
    • 운영체제(OS) (1)
    • Spring (19)
    • 네트워크 (3)
    • Java (4)
    • WEB (2)
    • Elastic Search (1)
    • 이펙티브 자바 (10)
    • 디자인패턴 (5)
    • GitHub (1)
    • LLM (2)
  • 홈
  • 태그
  • 방명록
[PostgreSQL] 인덱스(INDEX)와 오더바이(ORDER BY), ORDER BY 성능개선, 효율적인 인덱스 적용

[PostgreSQL] 인덱스(INDEX)와 오더바이(ORDER BY), ORDER BY 성능개선, 효율적인 인덱스 적용

1. 인덱스(INDEX)와 오더바이(ORDER BY) 인덱스는 쿼리의 결과로 특정 row를 찾는 것뿐만 아니라, 특정 순서로 데이터를 정렬하는데도 효율적일 수 있다. ORDER BY와 인덱스를 효율적으로 사용하면 별도의 정렬 과정 없이 ORDER BY를 수행할 수 있다. PostgreSQL에서 현재 지원하는 인덱스 타입 중에서는 B-tree 인덱스만이 정렬 결과로 인덱스를 생성할 수 있다. 다른 인덱스 유형은 특정되지 않은 순서로, 실행 때마다 다른 순서로 열을 반환한다. * 상세한 B-tree 인덱스의 개념은 다음 글을 참고 - 2023.09.12 - [Postgresql] - [PostgreSQL] B-tree 인덱스의 원리 및 특징 [PostgreSQL] B-tree 인덱스의 원리 및 특징 Po..

  • format_list_bulleted Postgresql
  • · 2024. 3. 12.
  • textsms
[PostgreSQL] 미사용 인덱스(INDEX) 찾기 및 삭제, 성능향상

[PostgreSQL] 미사용 인덱스(INDEX) 찾기 및 삭제, 성능향상

1. 인덱스(INDEX) 상세 개념 2023.09.12 - [Postgresql] - [PostgreSQL] 인덱스(INDEX)개념 및 생성, 삭제, 분석, 설계 방법 [PostgreSQL] 인덱스(INDEX)개념 및 생성, 삭제, 분석, 설계 방법 1. 인덱스 컨트롤 1-1. 인덱스 조회 SELECT * FROM pg_indexes WHERE tablename = '{테이블명}'; -- 테이블명에 '' 필요 1-2. 인덱스 생성 -- 단일 인덱스 CREATE INDEX {인덱스명} ON {테이블명} USING btree({컬럼명}); -- 결 junhkang.tistory.com 2. 미사용 인덱스 간단히 말해, 인덱스는 지정 컬럼에 매핑된 정보를 별도로 저장하고 있다. 보통 플랜 확인을 통해 효율적으..

  • format_list_bulleted Postgresql
  • · 2023. 10. 6.
  • textsms
[PostgreSQL] BRIN 인덱스의 원리 및 특징

[PostgreSQL] BRIN 인덱스의 원리 및 특징

1. BRIN 인덱스란? ▪ Block range index의 약자 ▪ Page 검색에 도움 되는 메타 데이터를 뽑아서 인덱스를 구성 (ex, 특정컬럼의 최대/최솟값) ▪ 특정 컬럼이 물리 주소의 일정한 상관관계를 가지는 매우 큰 테이블을 다루기 위해 설계 (타임시쿼스한 대용량 데이터 조회에 유용) Block range는 테이블 내에서 근접한 물리주소를 가진 page 그룹을 의미한다. 각 Block range 에 대해 일부 요약 정보가 인덱스로 저장된다. 예를 들어 상점의 판매 주문을 저장하는 테이블에는 각 주문이 배치된 날짜 열이 있을 수 있으며 대부분의 경우 이전 주문시점에 맞게 순차적으로 주문정보가 들어갈 것이고, ZIP 코드 열을 저장하는 테이블에는 도시에 대한 모든 코드가 자연스럽게 그룹화되어 ..

  • format_list_bulleted Postgresql
  • · 2023. 9. 18.
  • textsms
[PostgreSQL] GIN인덱스의 원리 및 특징

[PostgreSQL] GIN인덱스의 원리 및 특징

1. GIN 인덱스란? Generalized Inverted Index의 약자이다. 이전 포스트인 full text search에서 사용하는 인덱스의 유형. 기본 구조는 B-tree와 유사하지만, 저장 형태가 다르다. 저장된 요소 자제에 대한 검색이 아닌 인덱스 컬럼의 값을 split 한 token인 lexeme 배열에 대해서 검색을 한다. array_ops, tsvector_ops, jsonb_ops, jsonb_path_ops 등 의 built-in operators를 통해 접근이 가능하다. 2. full text search에서의 적용 2-1. 샘플 테이블 및 데이터 생성 create table ts(doc text, doc_tsv tsvector); insert into ts(doc) values..

  • format_list_bulleted Postgresql
  • · 2023. 9. 13.
  • textsms
[PostgreSQL] SP-GiST인덱스의 원리 및 특징

[PostgreSQL] SP-GiST인덱스의 원리 및 특징

1. SP-GiST 인덱스란? Space-Partitioned Generalized Search Tree의 약자이다. GiST인덱스와 같이 지리, 좌표, ip주소 데이터 등 복잡한 유형의 데이터를 처리하는 인덱스 유형이다. GiST가 B-tree 인덱스를 통해 보관 데이터를 세분화할 때, 위계적 순서를 따라야 하기에, 이를 보완하기 위해 만들어진 유형으로, GiST로 분리된 공간을 다시 한번 공간 단위로 나누어 관리하는 개념이다. SP-GiST는 겹치지 않는 영역으로 재귀적 분할을 할 수 있는 구조에 적합하다. 기본적으로 SP-GiST는 다양한 데이터 유형, 복잡한 쿼리를 지원하도록 설계되었다. 1-1. SP-GiST 인덱스 생성 CREATE INDEX idx_spgist_example ON exampl..

  • format_list_bulleted Postgresql
  • · 2023. 9. 13.
  • textsms
[PostgreSQL] GiST인덱스의 원리 및 특징

[PostgreSQL] GiST인덱스의 원리 및 특징

1. GiST 인덱스란? Generalized Search Tree의 약자이며 B-tree와 같은 balanced search tree의 형태이다. B-tree인덱스는 정렬된 채로 비교&일치의 연산에 최적화된 채로 연결되어있다. 하지만 현대의 다양한 데이터 종류 (기하학적, 텍스트문서, 이미지 등)를 연산하는 데는 적합하지 않다. GiST 인덱스는 이러한 데이터 타입의 인덱싱을 위해 설계되었다. GiST 인덱스는 각 유형의 데이터를 Balanced tree 형태로 구성하게하고, tree에 접근하는 연산자를 정의해 준다. 각각 leaf node는 table row(TID)와 boolean 형태의 predicate를 가지고 있고 인덱스 데이터(key)는 이 predicate와 부합한다. 그 후는 일반적인 t..

  • format_list_bulleted Postgresql
  • · 2023. 9. 13.
  • textsms
  • navigate_before
  • 1
  • 2
  • navigate_next
전체 방문자
오늘
어제
전체
전체 카테고리
  • DEV (103)
    • Postgresql (47)
    • Linux (4)
    • AWS (4)
    • 운영체제(OS) (1)
    • Spring (19)
    • 네트워크 (3)
    • Java (4)
    • WEB (2)
    • Elastic Search (1)
    • 이펙티브 자바 (10)
    • 디자인패턴 (5)
    • GitHub (1)
    • LLM (2)
최근 글
인기 글
태그
  • #Index
  • #spring
  • #티스토리챌린지
  • #test
  • #AWS
  • #오블완
  • #이펙티브자바
  • #Effective Java
  • #PostgreSQL
  • #디자인패턴
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.