Oracle块中的行偏移量,Oracle Concepts Guide学习笔记

28.In addition to all the regular Oracle features, Real Application Clusters exploits the

redundancy provided by clustering to deliver availability with n-1 node failures in

an n-node cluster. In other words, all users have access to all data as long as there is

one available node in the cluster.

(除了拥有ORACLE一般的特性外,RAC还有一些特殊的地方)

29.Data Blocks, Extents, and Segments

A segment and all its extents are stored in one tablespace.Within a tablespace, a

segment can include extents from more than one file; that is, the segment can span

datafiles. However, each extent can contain data from only one datafile.

(段及它所有的分区都存储在一个表空间中,在一个表空间中,一个段可来自多个数据文件;也就是

说段可跨越数据文件。但是,每个分区包含的数据只能来自一个数据文件)

Although you can allocate additional extents, the blocks themselves are allocated

separately. If you allocate an extent to a specific instance, the blocks are immediately

allocated to the free list. However, if the extent is not allocated to a specific instance,

then the blocks themselves are allocated only when the high water mark moves.

(虽然能指派额外分区,如果指派一个分区到一个明确的例程,那么这个分区的数据块会立即被指派到自由列表

。可是如果分区不指派到确切的例程,那么数据块仅当高水位线移动时才会被指派)

The high water mark is the boundary between used and unused space in a segment

(高水位标记是段中使用的空间与空闲空间的分界标志)

Data Block Format

1)Header (Common and Variable)

The header contains general block information, such as the block address and the

type of segment (for example, data or index).

(数据块头包括一般的数据块信息,块地址、段类型)

2)Table Directory

This portion of the data block contains information about the table having rows in

this block.

(表目录包含在该块中的有关表所有的行的一些信息)

3)Row Directory

This portion of the data block contains information about the actual rows in the

block (including addresses for each row piece in the row data area).

(行目录:包括实际的行信息)

After the space has been allocated in the row directory of a data block’s overhead,

this space is not reclaimed when the row is deleted. Therefore, a block that is

currently empty but had up to 50 rows at one time continues to’ have 100 bytes

allocated in the header for the row directory. Oracle reuses this space only when

new rows are inserted in the block.

(对于上面这段的理解biti有很好的解释:在块头有一个用来存放行的偏移量的信息的空间,注意:

这个空间,即使row被删除了也不会释放。 只有新插入的row 的偏移量信息可以重用这个空间,

这个空间不能用来被存放用户的数据)

4)Overhead

The data block header, table directory, and row directory are referred to collectively

as overhead. Some block overhead is fixed in size; the total block overhead size is

variable. On average, the fixed and variable portions of data block overhead total 84

to 107 bytes.

(The data block header, table directory, and row directory三者“结合”就是overhead,

一些数据块的overhead是固定尺寸的;总的块overhead尺寸是可变的。平均下来,

固定的和可变的数据块overhead的总大小在84字节到107字节。)

5)free space

In data blocks allocated for the data segment of a table or cluster, or for the index

segment of an index, free space can also hold transaction entries. A transaction

entry is required in a block for each INSERT, UPDATE, DELETE, and SELECT...FOR

UPDATE statement accessing one or more rows in the block. The space required for

transaction entries is operating system dependent; however, transaction entries in

most operating systems require approximately 23 bytes.

(free space也能够支持transaction entries。在数据块中每个insert,update,delete,select for update

语句访问一条或多条记录时transaction entries都有记录,分配的free space依赖于操作系统,在大多数操作系统上,

大约需要23bytes。)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值