Table of Contents

About

Articles which talk about:

At the finest level of granularity in the logical structure of an Oracle Database, the data is stored in data blocks.

The data block sizes should be a multiple of the operating system's block size.

One data block corresponds to a specific number of bytes of physical database space on disk.

The standard block size is specified by the DB_BLOCK_SIZE initialization parameter. A common block size is 8k. In addition, you can specify up to four other block sizes. A database uses and allocates free database space in Oracle Database data blocks.

Oracle Segment Extent Data Block

A block is also see as:

  1. the individual rows,
  2. the set of rows for each possible transaction on the block,
  3. the entire set of rows in the block.

If you had 200,000 rows in a table, deleted half of them, then the table would still 'own' the same number of blocks. See Oracle Database - High Water Mark (HWM) - boundary between used and unused space

Retrieval of block

Blocks may be retrieved and used by the database in one of two ways :

  • current
  • or consistent

A query will generally perform “Oracle Database - Consistent (Read get|Buffer Mode) (CR)” and the term logical I/O refer often to it.

Current get

A current mode get is a retrieval of a block as it exists right now. You will see these most frequently during modification statement, which must update only the latest copy of the block.

Statistic : Oracle Database - (Db Block Get|Current Get) Buffer Mode (CU)

Consistent get

Consistent gets are the retrieval of blocks from the buffer_cache in “read consistent” mode and may include read asides to UNDO (rollback segments).

Statistic : Oracle Database - Consistent (Read get|Buffer Mode) (CR)

Reference