본문 바로가기

데이터베이스(DA, AA, TA)/Oracle

(21)
[오라클] I/O SQL튜닝 방법 정리(2) direct path write direct path write 대기 이벤트는 세션 PGA(Program Global Area) 내부의 버퍼로부터 데이터파일로 기록할 때 발생됩니다. 세션은 다수의 direct write를 요청한 후 처리를 진행합니다. 세션이 I/O 처리가 완료되었다고 인지하는 시점에 direct path write 대기 이벤트를 대기합니다. direct path write 대기는 Direct load 작업이 발생함을 의미합니다. 이러한 작업이 요청될 경우 오라클은 SGA(System Global Area)를 경우하지 않고 데이터 파일에 직접 쓰기 작업을 수행합니다. 즉, DBWR(Database Writer) 프로세스에 의해 쓰기 작업이 이루어지는 것이 아니라 서버 프로세스에 의해 직접..
[오라클] I/O SQL튜닝 방법 정리(1) db file sequential read db file sequential read 대기 이벤트는 싱글 블록 I/O 수행 시에 발생하는 대기 이벤트입니다. 한번의 싱글 블록 I/O가 발생할 때마다 한 번의 db file sequential read이벤트 대기가 발생합니다. 싱글 블록 I/O는 파일로부터 하나의 블록을 읽는 모든 작업들에서 발생 가능하며 일반적으로 인데스 스캔 및 ROWID에 의한 테이블 액세스 시에 발생합니다. * Parameter P1(파일#), P2(블록#), P3(블록 수(항상 1)) * Wait Time I/O를 수행하기 위해 대기한 시간을 의미 * 일반적인 문제 상황 및 개선방법 - 원인: 비효율적인 인덱스 스캔으로 인한 과다한 싱글 블록 I/O - 진단 방법: SQL 실행 계..
[오라클] PCTFREE와 PCTUSED * PCTFREE란? - 사용가능한 Block 공간 중에서 데이터 Row의 Update 등 데이터의 변경에 대비해서 확보해 놓은 BLOCK의 %값입니다. - PCTFREE의 Default 값은 10%입니다. - PCTFREE와 PCTUSED의 합이 100을 초과하지 않는 범위내에서 0~99까지 값을 PCTFREE값을 PCTFREE 값으로 사용할 수 있습니다. - 위 그림은 PCTFREE = 20%인 그림입니다. - BLOCK의 20%를 사용가능한 빈영역으로 유지하며 빈영역은 각 BLOCK의 ROW의 UPDATE 등 데이터를 갱신하는 데 사용합니다. * PCTFREE가 적을 경우 - 기존 테이블 행 갱신에 의한 확장을 위해 적은 공간을 확보합니다. - 많은 ROW가 한 BLOCK안에 INSERT 될 수 있..
[오라클] SQL*Loader란? SQL*Loader란? SQL*Loader란 외부 화일 데이터를 ORACLE 데이터베이스의 테이블에 넣기 위한 유틸리티 입니다. SQL*Loader 특징 1) 하나 이상의 입력 파일을 사용할 수 있습니다. 2) 로드를 위해 여러 개의 입력 레코드가 하나의 논리적 레코드로 결합될 수 있습니다. 3) 입력 필드는 고정된 길이를 가질 수도, 다양한 길이를 가질 수도 있습니다. 4) 입력 데이터는 문자, 이진, 팩 십진수(packed decimal), 날짜, 그리고 존 십진수(zoned decimal) 등의 어떤 유형도 사용할 수 있습니다. 5) 데이터는 디스크나 테이프, 또는 명명된 파이프 등 여러 유형의 매체로부터 로드될 수 있습니다. 6) 데이터는 한 번에 여러 테이블로 로드될 수 있습니다. 7) 데이터는..
[오라클] SQL*Plus 사용법 정리 spool 파일명 // ex) /user/test/a.txt -- spool 관련 명령어 . . . ex) set echo off; ....명령 구문..... // 쿼리 또는 @쿼리파일명 ex) /user/test/a.sql spool off spool은 명령들을 일괄로 처리해 주는 명령어 이다. spool 명령에 파일명을 파라미터로 지정하면 spool에서 실행된 모든 명령 들이 파일로 저장된다. ---------------------------------- spool 관련 명령어 ---------------------------------- set heading off : 헤더가 표시되지 않고 데이터만 표시한다. set pagesize 0 : 기본값은 14이며 공백을 없애기 위해 0으로 세팅, page..