L relationship between extent and segment
The number of Oracle blocks for each extent is determined by the extent size/DB_BLOCK_SIZE. The extent size is determined by the initial, next, determine parameters such as pctincrease.
The number of extents in each segment is a dynamically scalable value. The maximum value is determined by the maxextents value in the storage clause of the SQL statement that creates or modifies the segment.
Generally, a non-partitioned table is stored as a segment.
Segment contains multiple extent, which can be controlled by some storage parameters.
The number of blocks of an extent depends on the size of the extent when you define the storage parameters, that is, the segment header has a block to store the relevant storage information. The larger the block, the more it stores.
L how to define the block size?
A data block is a part of a data file.
The redo log is called a redo block, not a data block. The size is generally equal to the size of the operating system block. You can use the query statement select max (lebsz) from x $ kccle; to obtain the size of the redo block.
For example:
SQL> conn/as sysdba
Connected.
SQL> select max (lebsz) from x $ kccle;
MAX (LEBSZ)
----------
512
The control file is not called a data block, or a control file block. You can use the select distinct block_size from v $ controlfile statement to obtain the size of a control file.
For example:
SQL> select distinct block_size from v $ controlfile;
BLOCK_SIZE
----------
16384