inflearn logo
강의

Course

Instructor

Oracle Performance Analysis and Instance Tuning Core Guide

Detailed Structure of Library Cache

table full scan과 index_ffs 성능비교

126

sk

1 asked

0

안녕하세요 강사님

덕분에 강의 잘 듣고 있습니다

table full scan과 index_ffs 성능 비교 시

index_ffs 가 크기가 작아서 무조건 더 빠를 것이라고 생각했는데요

table full scan 시 direct i/o가 발생하여

index_ffs 보다 더 빠른 경우도 생길 수 있는건가요?

oracle dbms/rdbms

Answer 2

1

dooleyz3525

안녕하십니까,

주말에 일이 있어서 답변이 늦었습니다.

table full scan이 index fast full scan 보다 빠른 경우는 거의 없을 것 같습니다. index ffs는 full scan 뿐만 아니라, 사이즈가 크면 direct io 까지 수행합니다. index 크기가 table 크기보다 크지 않으면(아주 예외적인 경우) index ffs가 더 빠릅니다.

 

감사합니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. sk님.

질문하신 내용에 대해 답변을 드리겠습니다. Table Full Scan과 Index Full Scan (index_ffs) 간의 성능 비교는 매우 상황에 따라 다를 수 있습니다. 일반적으로 생각하기에 index_ffs가 블록 사이즈가 작아 빠를 것 같지만, 다음과 같은 상황에서는 성능 차이가 다르게 나타날 수 있습니다.

  1. Direct I/O: Table Full Scan은 Direct Path Read를 사용할 수 있습니다. 이 방식은 대량의 블록 데이터를 한 번에 읽어 오기 때문에 속도에서 이점이 있을 수 있습니다. Direct Path Read는 데이터가 버퍼 캐시를 우회하여 직접 데이터 파일에서 읽어들일 수 있도록 하여 I/O 효율성을 높일 수 있습니다.

  2. Multi-block Read Count: Table Full Scan의 경우 다중 블록을 한 번에 읽는 방식으로 진행되기 때문에 I/O 성능을 극대화할 수 있습니다. 반대로, 인덱스를 사용하면 랜덤 I/O가 발생할 수 있으므로 성능이 저하될 수 있습니다.

  3. 테이블과 인덱스의 크기 및 사용 빈도: 작은 크기의 테이블이나 자주 접근되는 것은 캐시 효율성이 증가할 수 있으므로 인덱스의 성능 차이가 크게 나타날 수 있습니다.

이 주제를 더 깊이 이해하시려면 아래 링크를 참조하시면 좋겠습니다:
- full scan 시 OS I/O 질문있습니다.
- Sequential Acess는 HDD상에서도 Block을 Sequential하게 읽나요?

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Toad for Oracle Trial 버전을 지원하지 않는것으로 보입니다.

0

63

1

HDD가 아닌 SSD인 경우는 dBMS I/O가 어떻게 동작하나요?

0

125

2

HOST CPU 자료를 받으려면?

0

142

3

Buffer Cache를 통한 데이터 Access 에서 DBA 정보를 어떻게 알아내는지 궁금합니다.

0

155

2

random i/o와 full scan 문제 질문

0

166

3

hugepage_settings.sh 파일 실행시 커널 버전

0

210

2

강의중 윈도우 경고음?이 너무 크게 들릴때가 있습니다.

0

149

3

19ee 설치 관련

0

166

2

클라우드 굳이 안해도 되나요??

0

253

2

full scan 시 OS I/O 질문있습니다.

0

241

1

19c ee rpm 파일 설치 문의

0

228

1

direct path read/write temp 관련 질문

0

245

1

swingbench 에러좀 확인부탁드려요

0

339

2

회원가입 시 Customer type 구분

0

242

2

수료증 발급문의

0

232

1

swingbench 2.6 다운이 안받아져요

0

275

1

오라클 long data type 지원

0

438

1

sqldeveloper를 앞에서 썼다고 하셧는데...

0

216

1

soe_10g_01.dbf생성중 오류

0

222

1

TOAD 연결 질문드립니다.

0

345

1

oracl21c로 설치해도 되나요?

0

275

1

Hard Parsing의 자원 사용

1

513

2

Sequential Acess는 HDD상에서도 Block을 Sequential하게 읽나요?

1

365

2

인덱스 등 선행 지식 문의

0

216

1