parallel query
=> select 를 병렬로 동시에 처리하는 것
parallel DML
=> CURD를 병렬로 동시에 처리하는 것
* 빈번한 commit, 실행횟수, Hard Parsing, Connection 은 좋지 않다.
Toad 에서 AWR 을 출력할 수 있다. (확인 필요)
* SQL Trace
SCOPE - Session(개발자)
- Instance(DBA) : DBMS 내에서 실행되는 모든 것
cr : Logical Read
pr : Physical Read
pw : Physical Write
cost : 옵티마이저가 산정한 비용
card : 카디널리티
* cmd
cmd 창에서 소스보기 => vi
나가기 ESC -> SHIFT + ; -> q!
host 운영체제 실행 명렁어
오브젝트 통계정보를 수집하는 2가지방법
- ANALYZE
- DBMS_STAT
ANALYZE 가 더 직관적이므로 초반 사용 시 이거 먼저 사용
* 실행계획 : SQL DEVELOPER 에서는 예측 실행계획, SQL TRACE 에서는 실제 실행계획이다.
* 통계정보 조회
- ESTIMATE : 추정하여 통계정보 수집 (일부만 SCAN) - 대용량일 경우 사용, 정확도가 높음
- COMPUTE : 계산하여 통계정보 수집 (FULL TABLE SCAN)
- DELETE : 통계정보 삭제
* 데이터의 불균등 분포와 균등 분포
불균등 분포 컬럼에는 histogram을 만들어야하고(없으면 옵티마이저가 오판을 할 수 있음),
균등 분포는 histogram 이 없더라도 계산할 수 있다.
실행계획 P.127, 145(clustering factor) 읽어보기
* NULL 은 비교불가, 제어불가, 연상불가
'DBMS > Oracle' 카테고리의 다른 글
[Oracle] 오라클 세션 확인 및 세션 킬(kill) 하는 방법 (0) | 2020.05.11 |
---|---|
[Oracle] 여러 행을 SELECT 하여 INSERT하기 (0) | 2020.04.09 |
[Oracle] SQL 튜닝_3. 성능 모니터링 (0) | 2019.11.30 |
[Oracle] SQL 튜닝_2. DBMS 아키텍처 (0) | 2019.11.23 |
[Oracle] SQL 튜닝_1. 데이터 처리방식에 따른 성능 (0) | 2019.11.16 |
최근댓글