Full Table Scan (FTS):
In this scan all formatted blocks of a table which is below High Water Mark (HWM) is scanned sequentially and every row is examined to determine if it satisfies the query’s "where' clause. Since the blocks are scanned sequentially, to speed up the whole scanning process I/O read calls larger than a single block. The size of I/O read call is determined byDB_FILE_MULTIBLOCK_READ_COUNT parameter.
Just because during accessing large number of blocks with FTS Oracle can use multiblock I/O read call, FTS is sometimes better than index range scans.
Situations where optimizer chooses Full Table Scans:
Lack of Index.
The query predicate applies a function to the indexed column.
Select COUNT(*) with B-Tree indexes & Nulls.
Large Amount of Data
Small Table
High Degree of Parallelism
FTS Hint
The table statistics are stale.
The query predicate does not use the leading edge of a B-tree index..
The query is unselective.
In this scan all formatted blocks of a table which is below High Water Mark (HWM) is scanned sequentially and every row is examined to determine if it satisfies the query’s "where' clause. Since the blocks are scanned sequentially, to speed up the whole scanning process I/O read calls larger than a single block. The size of I/O read call is determined byDB_FILE_MULTIBLOCK_READ_COUNT parameter.
Just because during accessing large number of blocks with FTS Oracle can use multiblock I/O read call, FTS is sometimes better than index range scans.
Situations where optimizer chooses Full Table Scans:
Lack of Index.
The query predicate applies a function to the indexed column.
Select COUNT(*) with B-Tree indexes & Nulls.
Large Amount of Data
Small Table
High Degree of Parallelism
FTS Hint
The table statistics are stale.
The query predicate does not use the leading edge of a B-tree index..
The query is unselective.
No comments:
Post a Comment