Space within each segment (table or index) will be
managed automatically with a bitmap instead of freelists.
Even with efficient extent allocation, table and index segments may eventually contain a
lot of free space due to update and delete statements. As a result, a lot of unused space can be
reclaimed by using some of the scripts I provide later in this chapter, as well as by using the
Oracle Segment Advisor.
Oracle Segments, Extents, and Blocks
In Chapter 1, I gave you an overview of tablespaces and the logical structures contained within
them. I also briefly presented datafiles, allocated at the operating system level, as the building
blocks for tablespaces. Being able to effectively manage disk space in the database requires an
in-depth knowledge of tablespaces and datafiles, as well as the components of the segments
Chapter 6: Monitoring Space Usage 167
stored within the tablespaces, such as tables and indexes. At the lowest level, a tablespace
segment consists of one or more extents, each extent comprising one or more data blocks.
Figure 6-1 shows the relationship between segments, extents, and blocks in an Oracle database.
In the following sections, we??™ll cover some of the details of data blocks, extents, and segments
with the focus on space management.
Data Blocks
A data block is the smallest unit of storage in the database. Ideally, an Oracle block is a multiple
of the operating system block to ensure efficient I/O operations.
Pages:
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307