데이터베이스 튜닝 절차
- Language & Solution/SQL
- 2017. 12. 17. 23:17
데이터베이스 튜닝 절차
======================
* 각 단계별로 연관성이 있음.
1) 모델링 단계 튜닝
① 비지니스 규칙 튜닝
* 주요 내용
- 업무의 표준화, 단순화, 통폐합 등.
- 반복적인 수작업 → 전산화
일시적이고 특정 담당자 위주의 작업 → 수작업
- 각 시스템별 응답시간 조정
② 데이터 모델링 튜닝
2) S/W 단계 튜닝
① 데이터베이스 Access 방식 튜닝
* 주요 내용
- DBMS의 기능에 대한 충분한 활용 여부 검증
- 옵티마이저 모드 결정
배열 처리 및 부분 범위 처리 적용 여부 검증
② 데이터베이스 Objects 튜닝
- 인덱스 추가 및 변경, 테이블 분할, 집계테이블,
파티션 테이블 활용 등
㈜ 효과는 크지만 관련된 application에 끼칠 영향력을
검토할 수 있어야 함.
③ SQL 및 Program 튜닝
* Oracle의 Hint
→ Optimizer에게 작업방법을 알려줄 수 있는 수단임.
따라서 힌트를 사용하게 되면 대부분 힌트에 의해서
optimizer는 작업을 하게 됨. (SQL 튜닝이 쉬워짐)
한편, 힌트를 갖고 있는 SQL의 실행계획은 고정됨.
(힌트의 문제점)
* 사용법
- Hint의 영향력은 hint를 갖고 있는 SQL에 한정됨
- 하나의 SQL은 배타적인 관계에 해당하는 hint가 아니라면
개수에 제한없이 hint를 사용할 수 있음
- Hint는 syntax 에러가 없음
- /* + hint */ 또는 -- + 와 같이 "*" 와 "+" 사이에
또는 "-" 와 "+" 사이에 빈칸이 있어선 안됨
- Hint에 의해서 테이블을 지칭할 때, 테이블에 대해서
alias를 사용 중이라면 hint도 반드시 alias를 사용해야 함
3) H/W 단계 튜닝
① 메모리 튜닝
㈜ 필요할 때 메모리 크기를 증가시키는 방법
SQL> ALTER SESSION SET SORT_AREA_SIZE = 2097152;
② 물리적 구조 및 I/O 튜닝
③ Process 간 경합 튜닝
④ H/W 기반에 특화된 튜닝
'Language & Solution > SQL' 카테고리의 다른 글
뷰(View) (0) | 2017.12.17 |
---|---|
실행계획(Execution Plan) (0) | 2017.12.11 |
이 글을 공유하기