DB구축 - 클러스터(Cluster)

강신찬·2023년 5월 22일

클러스터의 개요 및 특징

  • 데이터 저장 시 데이터 액세스 효율을 향상시키기 위해 동일한 성격의 데이터를 동일한 데이터 블록에 저장하는 물리적 저장 방법
  • 인덱스의 단점을 해결한 기법 -> 분포도(Selectivity)가 넓을수록 오히려 유리함
  • 분포도가 넓은 "테이블"의 클러스터링은 저장 공간의 절약이 가능
  • 대량의 범위를 자주 액세스(조회)하는 경우 적용
  • 인덱스를 사용한 처리 부담이 되는 넓은 분포도에 활용

클러스터의 선정기준 및 고려사항

클러스터 테이블 선정

  • 수정이 빈번하지 않는 "테이블"
  • ORDER BY, GROUP BY, UNION이 빈번한 "테이블"
  • 처리 범위가 넓어 문제가 발생하는 경우 단일 테이블 클러스터링 사용
  • 조인이 많아 문제가 발생되는 경우는 다중 테이블 클러스터링 사용

설계 시 고려사항

  • 클러스터링 된 테이블은 조회 속도를 향상시켜주지만 입력, 수정, 삭제 시 성능이 저하됨(부하가 증가)
  • 대용량을 처리하는 트랜잭션은 전체 테이블을 스캔하는 일이 자주 발생하므로 클러스터링을 하지 않는 것이 좋음
  • 클러스터링 된 테이블에 클러스터드 인덱스를 생성하면 접근 성능이 향상됨

출처: https://m.blog.naver.com/wook2124/222108778775

profile
꾸준히 공부하는 풀스텍 개발자

0개의 댓글