문서의 선택한 두 판 사이의 차이를 보여줍니다.
— |
kb:sqlserveroptimization [2014/11/09 21:47] (현재) |
||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ====== Sql Server Optimization ====== | ||
+ | [[SqlServer]] 최적화. 처음에 세팅 잘 해 두는 것도 중요하지만, 지속적인 모니터링과 관리도 중요하네 그려. | ||
+ | |||
+ | |||
+ | ====== 시스템 세팅 ====== | ||
+ | * 데이터 파일과 트랜잭션 로그 파일은 물리적으로 서로 다른 드라이브에 배치 | ||
+ | * 파일 그룹을 사용한 데이터베이스 생성 | ||
+ | * 주(PRIMARY) 파일 그룹의 주 데이터 파일에는 메타 데이터 저장 | ||
+ | * 사용자 정의 파일 그룹에 사용자 개체 저장 | ||
+ | * 기본 파일 그룹 변경: 주 파일 그룹 => 사용자 정의 파일 그룹 | ||
+ | * 데이터 파일은 RAID1+0 또는 RAID5로 구성된 드라이브에 배치 | ||
+ | * 트랜잭션 로그 파일은 RAID1로 구성된 드라이브에 배치 | ||
+ | * 데이터 파일과 트랜잭션 로그 파일은 예상되는 크기를 고려하여 충분한 크기로 설정 | ||
+ | * 파일의 최대 크기 지정 가능 (특정 데이터베이스에 의한 영향 방지) | ||
+ | * 파일의 자동 증가 크기를 %단위가 아닌 MB 단위로 설정 | ||
+ | * 데이터베이스 파일 이동 | ||
+ | * ALTER DATABASE 문 사용 | ||
+ | * 파일 분리 및 연결 | ||
+ | |||
+ | |||
+ | ====== 모델링 ====== | ||
+ | 쿼리 종류에 따라 다르겠지만, 정규화를 하지 않은 쪽이 더 빠르지 않나? | ||
+ | |||
+ | |||
+ | ====== Index 관리 ====== | ||
+ | 뭔가 내용이 많아서 [[SqlServerIndexTuning]] 페이지로 분리 | ||
+ | |||
+ | |||
+ | ====== 수직/수평 분할 ====== | ||
+ | * 수직 분할 : 쿼리(트랜잭션)의 종류에 따라 테이블의 컬럼들을 분리하여 별도의 테이블로 구성. | ||
+ | * 수평 분할 : 한 테이블에 행이 너무 많은 경우 이를 별도의 테이블로 구성. 어떤 데이터가 어느 테이블에 있는지를 알기 위한 해쉬 함수 필요. | ||
+ | |||
+ | |||
+ | ====== 링크 ====== | ||
+ | * [[http://www.microsoft.com/korea/technet/sql/ | SQL Server 리소스 센터]] | ||
+ | * [[http://www.microsoft.com/korea/technet/sql/tuning_guide_developer01.asp | SQL Server for Developer: 개발자를 위한 튜닝 가이드]] | ||
+ | * [[http://www.microsoft.com/korea/technet/sql/tuning_guide_admin03.asp | SQL Server for Developer: 관리자를 위한 튜닝 가이드]] | ||
+ | * [[http://www.microsoft.com/korea/TechNet/sql/Technote/dat410ef.asp | 개발자를 위한 MS SQL Server 성능 조정 및 최적화, 제 1부: 성능 문제 개요]] | ||
+ | * [[http://www.microsoft.com/korea/TechNet/sql/Technote/dat411.asp | 개발자를 위한 MS SQL Server 성능 조정 및 최적화, 제 2부: 쿼리 최적화 프로그램]] | ||
+ | * [[http://www.microsoft.com/korea/TechNet/sql/Technote/dat412ef.asp | 개발자를 위한 MS SQL Server 성능 조정 및 최적화, 제 3부: 성능 향상을 위한 SQL Server 구성]] | ||
+ | * [[http://www.microsoft.com/korea/technet/sql/technote/sql7pt.asp | MS SQL Server 7.0 성능 조정 가이드]] | ||
+ | |||
+ | * [[http://blog.stevex.net/index.php/why-is-sql-server-so-slow/ | Why is SQL Server So Slow?]] | ||
+ | * [[http://msdn2.microsoft.com/en-us/library/ms979169.aspx | Checklist: SQL Server Performance]] | ||
+ | * [[http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx | Troubleshooting Performance Problems in SQL Server 2005]] | ||
+ | * [[http://www.microsoft.com/technet/prodtechnol/sql/2005/scddrtng.mspx | Scaling Out SQL Server with Data Dependent Routing]] | ||
+ | * [[http://www.microsoft.com/technet/prodtechnol/sql/2005/physdbstor.mspx | Physical Database Storage Design]] | ||
+ | |||
+ | * [[http://www.sql-server-performance.com/best_sql_server_performance_tips.asp | Best SQL Server Performance Tuning Tips]] | ||
+ | * [[http://www.sql-server-performance.com/nb_query_process_tuning.asp | SQL Server Performance: Query Tuning vs. Process Tuning]] | ||
+ | * [[http://www.sql-server-performance.com/oltp_performance.asp | Tips for Performance Tuning SQL Server OLTP Databases]] | ||
+ | * [[http://www.databasejournal.com/features/mssql/article.php/1466951 | SQL Server Performance Tuning for SQL Server Developers]] | ||
+ | |||
+ | * [[http://support.microsoft.com/kb/319942/ | MSKB > 적절한 SQL Server 구성 설정을 결정하는 방법]] | ||
+ | * [[http://www.zdnet.co.kr/builder/platform/windows/0,39031685,39146419,00.htm | IT 관리자를 위한 필수 응급처치법「MS SQL 서버의 메모리가 부족해요.」]] | ||
+ | |||
+ | * [[http://blogs.msdn.com/psssql/archive/2006/11/27/what-do-i-need-to-know-about-sql-server-database-engine-i-o.aspx | What do I need to know about SQL Server database engine I/O?]] | ||
+ | |||
+ | ---- | ||
+ | * see also [[SqlServer]] | ||