DB 성능과 인덱스

Dahea Moon·2023년 7월 9일
0

DB 성능

  • 데이터는 메모리보다 느린 디스크에 저장

  • DB 성능의 핵심 = 디스크의 랜덤 I/O 최소화

  • 디스크 접근 줄이기
    - 메모리 캐시 히트율 높히기 > 메모리에 올린 데이터로 요청을 최대한 처리

    • 메모리에 데이터 유실을 고려해 WAL(Write Ahead Log) 사용
    • WAL로 순차적 I/O 발생시켜서 정합성 유지

인덱스

  • 인덱스 = 정렬된 자료구조
  • 인덱스는 정렬을 원하는 데이터를 기준으로 정렬된 매핑 테이블
  • 정렬을 통해 탐색/검색 범위를 최소화
  • 자료구조: B+ Tree
    • 항상 노드의 균형을 이룸
    • 하나의 노드가 여러개의 자식 노드를 가질 수 있음
    • 리프노드에만 데이터 존재
  • 클러스터 인덱스 : 데이터 위치를 결정하는 키 값 (Mysql=PK, Oracle=주소)
profile
나를 위한 기록장

0개의 댓글