데이터 베이스 파티셔닝

hannni·2023년 3월 14일
0
  • DB 파티셔닝
    서비스의 규모가 확대되면 DB에 저장하는 데이터의 규모 또한 대용량화되어, DB시스템의 용량의 한계와 성능의 저하가 유발된다
    큰 table이나 index를 관리하기 쉽도록 Partition이라는 작은 단위로 물리적 분할하는 것을 의미한다

  • DB 파티셔닝의 목적

    • 성능
    • 가용성
    • 관리 용이성
  • DB 파티셔닝의 단점

    • table간 Join비용이 증가한다
    • table과 index를 별도로 파티셔닝할 수 없으므로 함께 파티셔닝해야 한다
  • DB 파티셔닝의 종류

    • 수평 파티셔닝
      • 하나의 테이블의 각 행을 다른 테이블에 분산시키는 것이다
      • 샤딩과 동일한 개념이다
        • 샤딩
          관계형 데이터 베이스에서 대량의 데이터를 처리하기 위해서 데이터를 파티셔닝하는 기술
      • 스키마가 같은 데이터를 두 개 이상의 테이블에 나누어 저장하는 것을 말한다
    • 수직 파티셔닝
      테이블의 일부 컬럼을 분할하는 형태로 분할한다
  • DB 파티셔닝의 분할 기준

    • 범위 분할
      연속적인 숫자나 날짜 기준으로 Partitioning한다
      손쉬운 관리 기법을 제공하여 관리 시간을 단축할 수 있다
    • 목록 분할
    • 해시 분할
    • 합성 분할
      • 큰 파티션에 대한 I/O 요청을 여러 Partition으로 분산할 수 있다
      • Range partitioning할 수 있는 Column이 있지만, Partitioning결과 생성된 partition이 너무 커서 효과적으로 관리할 수 없을 때 유용하다

0개의 댓글