새소식

반응형
밥벌이/데이터베이스

튜닝의 타입

  • -
반응형
  • 하드웨어 튜닝
    • 5-분(5-Minute) 규칙
      렌덤하게 접근되는 페이지가 5분내에 한 번 이상 빈번하게 사용된다면, 이것은 메모리 내에 유지되어야 함(충분한 메모리를 구입)
    • 1-분(1-Minute) 규칙
      순차적으로 접근되는 페이지가 1분 내에 한 번 이상 빈번하게 사용된다면 이것은 메모리 내에 유지되어야 함(충분한 메모리를 구입)
    • RAID 수준 선택
      기록이 드물고 데이터가 매우 큰 경우에는 RAID 5가 좋고, 다른 경우에는 RAID 1 이 바람직함
    •    
  • 데이터베이스 설계 튜닝
    • 스키마 튜닝
      • 가장 빈번하게 접근되는 데이터를 분리하기 위해 릴레이션들을 수직으로 분할(오직 필요한 정보만 가져옴)
      • 비정규화된 릴레이션을 저장함으로써 성능을 향상시킴
      • 빈번하게 요구되는 조인에서 부합되는 레코드를 같은 디스크 페이지에 함께 클러스터링 함으로써, 조인을 효율적으로 수행할 수 있도록 함
    • 인덱스 튜닝
      • 느린 질의 및 갱신 속도를 빠르게 하기 위해 적절한 인덱스를 생성
      • 불필요한 여분의 인덱스를 제거함으로써, 느린 갱신 속도를 빠르게 함
      • 가장 빈번한 형식의 질의들에 대해 적절한 인덱스 타입(B-tree/해시)을 선정
      • 클러스터화할 인덱스를 선정
    • 실제화(Materialized) 뷰 튜닝
      • 실제화 뷰는 집단(Aggregate) 질의와 같은 질의들의 속도를 향상시키는 데 도움을 줄 수 있음
      • 뷰 유지가 프로그래머 책임이 아니라 시스템 책임이기 때문에, 비정규화된 스키마가 보다 바람직함
           
  • 트랜잭션 튜닝
    • 집합-중심 질의 사용
      여러 개의 내장(Embedded) SQL/ODBC/JDBC 질의들을 결합하여 하나의 집합 중심 질의 생성
    • 저장 프로시저 사용
      질의의 재-파싱과 재-최적화 방지
    • 락 경합 감소
      • 다중 버전 동시성 제어 기법 사용
      • 장기(long) 트랜잭션들에 대해 수준-2 일관성(Cursor-Stability) 사용
    • mini-batch 트랜잭션 사용
      • 큰 트랜잭션을 mini-baTch 트랜잭션들로 분할하여 사용
      • mini-batch에서는 직렬 가능을 보장하기 위해 락들이 트랜잭션들에 걸쳐서 유지
반응형

'밥벌이 > 데이터베이스' 카테고리의 다른 글

튜닝의 개요  (0) 2011.03.11
튜닝의 종류  (0) 2011.03.11
성능 평가(Benchmarks)  (0) 2011.03.11
데이터베이스 회복의 개요  (0) 2011.03.10
데이터베이스 회복기법  (0) 2011.03.10
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.