<오라클 성능 고도화 원리와 해법1> Ch06-07 Result 캐시
오라클 성능 고도화 원리와 해법1 - Ch06-07 Result 캐시 Result 캐시는 버퍼 캐시와는 달리 Shared Pool에 위치하지만 시스템 I/O 발생량을 최소화하는 데 도움이 되는 기능이므로 본 장에서 설명한다. DB 버퍼 캐시는 쿼리에서 자주 사용되는 블록들을 캐싱해두는 메모리 공간이다. DB 버퍼 캐시에 캐싱된 블록을 읽는 것도 때...
오라클 성능 고도화 원리와 해법1 - Ch06-07 Result 캐시 Result 캐시는 버퍼 캐시와는 달리 Shared Pool에 위치하지만 시스템 I/O 발생량을 최소화하는 데 도움이 되는 기능이므로 본 장에서 설명한다. DB 버퍼 캐시는 쿼리에서 자주 사용되는 블록들을 캐싱해두는 메모리 공간이다. DB 버퍼 캐시에 캐싱된 블록을 읽는 것도 때...
오라클 성능 고도화 원리와 해법1 - Ch06-06 RAC 캐시 퓨전 데이터베이스 동시 사용자가 많을 때 부하를 분산할 목적으로 시스템마다 다양한 데이터 분산 전략을 사용한다. 데이터베이스 서버간 복제 업무별 수직 분할 데이터 구분에 따른 수평 분할 1번은 여러 대의 데이터베이스 서버를 두고 각 서버에서 발생한 트랜잭션 데이터를 상...
오라클 성능 고도화 원리와 해법1 - Ch06-05 Direct Path I/O 일반적인 블록 I/O는 DB 버퍼 캐시를 경유한다. 즉, 읽고자 하는 블록을 먼저 버퍼 캐시에서 찾아보고, 찾지 못할 때만 디스크에서 읽는다. 데이터 변경도 버퍼 캐시에 적재된 블록에서 이루어지며, DBWR 프로세스가 주기적으로 변경된 블록(Dirty 버퍼 블록)들을 데...
오라클 성능 고도화 원리와 해법1 - Ch06-04 Prefetch Prefetch 라는 용어는 오라클에서 여러 가지 의미로 쓰인다. 예를 들어, 한 번의 Fetch Call 로 Array 크기만큼 여러 개 레코드를 가져오는 것을 ‘Row Prefetch’ 라는 용어로서 설명하는 문서들도 있다. 본 절에서 설명하는 Prefetch는 테이블 Prefe...
오라클 성능 고도화 원리와 해법1 - Ch06-03 Single Block vs. Multiblock I/O I/O Call 수행 원리에 대해 살펴보자. 위 Call 통계를 보면, 버퍼 캐시에서 69개 블록을 읽으면서 그 중 64개는 디스크에서 읽었다. 버퍼 캐시 히트율은 7.24%다. 디스크에서 읽은 블록 수가 64개라고 I/O Call까지 6...
오라클 성능 고도화 원리와 해법1 - Ch06-02 Memory vs. Disk I/O (1) I/O 효율화 튜닝의 중요성 디스크를 경유한 입출력은 물리적으로 액세스 암(Arm)이 움직이면서 헤드를 통해 데이터를 읽고 쓰기 때문에 느리다. 반면, 메모리를 통한 입출력은 전기적 신호에 불과하기 때문에 디스크 I/O에 비해 비교할 수 없을 정도로 빠르...
오라클 성능 고도화 원리와 해법1 - Ch06-01 블록 단위 I/O 오라클을 포함한 모든 DBMS에서 I/O는 블록(Block)53) 단위로 이뤄진다. 블록 단위로 I/O 한다는 것은, 하나의 레코드에서 하나의 컬럼만을 읽으려 할 때에도 레코드가 속한 블록 전체를 읽게 됨을 의미한다. 이는 데이터베이스 I/O 성능과 튜닝 원리를 이해하는 데에 매우...
오라클 성능 고도화 원리와 해법1 - Ch06 I/O 효율화 원리 - 개요 3장 후반부에 밝혔듯이 데이터베이스 성능 튜닝의 3대 핵심 요소는 다음과 같다. 라이브러리 캐시 최적화 데이터베이스 Call 최소화 I/O 효율화 및 버퍼 캐시 최적화 지금까지 4장과 5장에서 라이브러리 캐시 최적화와 데이터베이스 Call 최소화 원리에 ...
오라클 성능 고도화 원리와 해법1 - Ch05-08 PL/SQL 함수 호출 부하 해소 방안 다시 한 번 강조하지만, 사용자 정의 함수는 <① 소량의 데이터 조회 시에만 사용>하는 것이 좋다. <② 대용량 데이터를 조회할 때는 부분범위 처리 가능한 상황에서 제한적으로 사용>해야 하며, 되도록이면 <③ 조인 또는 스칼라 서브쿼...
오라클 성능 고도화 원리와 해법1 - Ch05-07 PL/SQL 함수의 특징과 성능 부하 (1) PL/SQL 함수의 특징 오라클은 PL/SQL로 작성된 함수/프로시저의 이식성을 고려해, 오라클 서버가 아닌 Oracle Forms, Oracle Reports 같은 제품에서도 수행될 수 있도록 설계하였다. 그래서 PL/SQL로 작성한 함수와 프로시저를...