RDBMS:ProgramOptimization
RDBMS 최적화 방법 정리.
파라미터 튜닝 (Parameter tuning)
조인 전략 (Join strategy)
쿼리 실행 시 옵티마이저가 다양한 조인 방식 중에서 어떤 방식을 채택하느냐에 따라 쿼리 성능이 크게 달라질 수 있게 됩니다. 일반적으로 데이터 건수가 적은 경우에는 Nested loops join을 사용하고, 데이터 건수가 많은 경우에는 Hash join을 사용합니다. 그리고 조인 대상 테이블 중에 데이터 건수가 적은 테이블부터 액세스를 해야 더 좋은 성능을 보장할 수 있습니다.
인덱스 전략 (Index strategy)
데이터 아키텍처 전략 (Data architecture strategy)
- 데이터 요구분석
- 데이터베이스 선택 (ex : RDBMS, NoSQL, 그래프 DB, 임베디드DB, etc.)
- 서버/클러스터 구성 (ex: 단일 서버, HA구성, 클러스터 구성, RAC, Max scale, etc.)
- 파일 시스템 선택 (Oracle : OS Filesystem vs ASM vs Raw device)
- 데이터베이스 저장 엔진 선택 (MariaDB : Innodb, Aria, XtraDB, etc.)
- 데이터 표준화 (단어/용어/도메인)
- 데이터 모델링 (개념/논리/물리, 주제영역)
- 데이터 간 관계 정의
- 데이터 인터페이스 정의
- 데이터 수집 방법 및 범위 (ex : App. 생성 데이터, 외부 연계, 통계 데이터, 시스템 운영 데이터, etc.)
- 오브젝트 사용 정책 (ex: 트리거 사용 여부, PL/SQL 사용 여부, FK 설정 여부, 최대 인덱스 생성 허용 갯수, etc.)
- 명명 규칙 (ex: 테이블명, 테이블스페이스명, 인덱스명, 사용자계정명, etc.)
- 데이터베이스 사용자 계정/권한 정책
- 데이터베이스 접근 제어 정책
- 데이터 보관 주기
- 데이터 로그 관리
- 데이터 백업 전략
SQL 튜닝 (SQL tuning)
See also
Favorite site
References
-
RDBMS_performance_optimization_strategy.pdf ↩