사용자 도구

사이트 도구


kb:sqlserveroptimization

Sql Server Optimization

SqlServer 최적화. 처음에 세팅 잘 해 두는 것도 중요하지만, 지속적인 모니터링과 관리도 중요하네 그려.

시스템 세팅

  • 데이터 파일과 트랜잭션 로그 파일은 물리적으로 서로 다른 드라이브에 배치
  • 파일 그룹을 사용한 데이터베이스 생성
  • 주(PRIMARY) 파일 그룹의 주 데이터 파일에는 메타 데이터 저장
  • 사용자 정의 파일 그룹에 사용자 개체 저장
  • 기본 파일 그룹 변경: 주 파일 그룹 ⇒ 사용자 정의 파일 그룹
  • 데이터 파일은 RAID1+0 또는 RAID5로 구성된 드라이브에 배치
  • 트랜잭션 로그 파일은 RAID1로 구성된 드라이브에 배치
  • 데이터 파일과 트랜잭션 로그 파일은 예상되는 크기를 고려하여 충분한 크기로 설정
  • 파일의 최대 크기 지정 가능 (특정 데이터베이스에 의한 영향 방지)
  • 파일의 자동 증가 크기를 %단위가 아닌 MB 단위로 설정
  • 데이터베이스 파일 이동
  • ALTER DATABASE 문 사용
  • 파일 분리 및 연결

모델링

쿼리 종류에 따라 다르겠지만, 정규화를 하지 않은 쪽이 더 빠르지 않나?

Index 관리

뭔가 내용이 많아서 SqlServerIndexTuning 페이지로 분리

수직/수평 분할

  • 수직 분할 : 쿼리(트랜잭션)의 종류에 따라 테이블의 컬럼들을 분리하여 별도의 테이블로 구성.
  • 수평 분할 : 한 테이블에 행이 너무 많은 경우 이를 별도의 테이블로 구성. 어떤 데이터가 어느 테이블에 있는지를 알기 위한 해쉬 함수 필요.

링크

kb/sqlserveroptimization.txt · 마지막으로 수정됨: 2014/11/09 21:47 (바깥 편집)