[sql] SQL 데이터베이스 성능 통계 수집을 통해 어떤 튜닝 포인트를 찾을 수 있나요?
1. 인덱스 성능 향상
- 인덱스 통계 분석: 인덱스 사용 빈도 및 효율성을 파악하여 최적의 인덱스를 생성하거나 기존 인덱스를 조정합니다.
- 인덱스 Fragmentation 분석: 인덱스 조각화 정도를 파악하여 조각화를 최소화하고 성능을 향상시킵니다.
2. 질의 최적화
- 실행 계획 분석: 질의 실행 계획을 분석하여 비효율적인 부분을 수정하고 최적의 실행 계획을 선택합니다.
- 질의 성능 통계 분석: 질의 별 수행 시간, 복잡도 등을 분석하여 튜닝 대상을 식별합니다.
3. 테이블 및 쿼리 성능 개선
- 테이블 통계 수집: 테이블의 레코드 분포, 통계적 정보를 수집하여 최적의 쿼리 실행 계획을 수립합니다.
- 쿼리 재작성: 비효율적인 쿼리를 재작성하여 성능을 향상시킵니다.
성능 통계 수집을 통해 이러한 튜닝 포인트를 파악하고 적절한 조치를 취함으로써 데이터베이스의 전반적인 성능을 향상시킬 수 있습니다.
관련 참고 자료:
- https://docs.microsoft.com/en-us/sql/relational-databases/performance/statistics/about-statistics?view=sql-server-ver15
- https://aws.amazon.com/ko/quickstart/architecture/sql-server-data-warehouse/