Database Reference
In-Depth Information
In an MSSM tablespace, segments have a definite HWM. In an ASSM tablespace, however, there is an HWM and
a low HWM. In MSSM, when the HWM is advanced (e.g., as rows are inserted), all of the blocks are formatted and
valid, and Oracle can read them safely. With ASSM, however, when the HWM is advanced Oracle doesn't format all
of the blocks immediately—they are only formatted and made safe to read upon their first actual use. The first actual
use will be when the database decides to insert a record into a given block. Under ASSM, the data is inserted in any
of the blocks between the low HWM) and the HWM, so many of the blocks between these two points might not be
formatted. The low HWM is defined to be the point below which all blocks are formatted (because they currently
contain data or previously contained data).
So, when full scanning a segment, we have to know if the blocks to be read are safe or unformatted (meaning
they contain nothing of interest and we do not process them). To make it so that not every block in the table needs
go through this safe/not safe check, Oracle maintains a low HWM and a HWM. Oracle will full scan the table up to
the HWM—and for all of the blocks below the low HWM, it will just read and process them. For blocks between the
low HWM and the HWM (see Figure 10-2 ), it must be more careful and refer to the ASSM bitmap information used to
manage these blocks in order to see which of them it should read and which it should just ignore.
High-water Mark of Newly Created Table
Low High-water Mark
High-water Mark
Figure 10-2. Depiction of a low HWM
FREELISTS
When you use an MSSM tablespace, the FREELIST is where Oracle keeps track of blocks under the HWM for objects
that have free space on them.
FREELISTS and FREELIST GROUPS do not pertain to assM tablespaces at all; only MssM tablespaces use this
technique.
Note
 
 
Search WWH ::




Custom Search