ITPub博客

首页 > 数据库 > Oracle > CLUSTER内部结构的总结(4)

CLUSTER内部结构的总结(4)

原创 Oracle 作者:litterbaby 时间:2007-06-04 10:37:41 0 删除 编辑
CLUSTER内部结构的总结(4)[@more@]

以下的部分就是数据的指针地址部分:

0x1a:pri[0] offs=0x1f83

0x1c:pri[1] offs=0x1f64

0x1e:pri[2] offs=0x1f45

0x20:pri[3] offs=0x1f26

以上是c_t的数据

0x22:pri[4] offs=0x1f79

0x24:pri[5] offs=0x1f5a

0x26:pri[6] offs=0x1f3b

0x28:pri[7] offs=0x1f1c

以上是t1的数据

0x2a:pri[8] offs=0x1f12

0x2c:pri[9] offs=0x1f08

0x2e:pri[10] offs=0x1efe

0x30:pri[11] offs=0x1ef4

以上是t2的数据

以下的部分就是数据的实现部分:

tab 0, row 0, @0x1f83 --第一个表的第一行,后面是偏移地址

tl: 21

这一行的长度(字节),但是这个在物理上并没有存储,不知道是怎么得到的,应该是计算出来的吧

fb: K-H-FL-- lb: 0x0 cc: 1 ――

K表示的是cluster键。而在下面会看到-CH-FL--,其中这个C是cluster的表成员。

curc: 2 comc: 2 pk: 0x0140000c.0 nk: 0x0140000c.0

这一部分应该说是比较复杂的东西,例如在这个块中存放的cluster的SIZE设置为10的话,但是块的空间是有限的,随着cluster的表的空间不断扩展,这个块就无法容纳这么多的行的数据,必然会产生连接,这一部分就是说明连接的位置信息的。当然由于连接必然会对性能产生不利的影响。

Curc : 当前在这个块上的这个键有多少行的计数。

Comc : 在这个块上的cluster键的提交的行数。

Pk:这个cluster键前一个块的地址ROWID

Nk:这个cluster键下一个块的地址ROWID

剩余的部分就和堆数据存储格式完全一样了

col 0: [ 1] 31

tab 0, row 1, @0x1f64

tl: 21 fb: K-H-FL-- lb: 0x0 cc: 1

curc: 2 comc: 2 pk: 0x0140000c.1 nk: 0x0140000c.1

col 0: [ 1] 32

tab 0, row 2, @0x1f45

tl: 21 fb: K-H-FL-- lb: 0x0 cc: 1

curc: 2 comc: 2 pk: 0x0140000c.2 nk: 0x0140000c.2

col 0: [ 1] 33

tab 0, row 3, @0x1f26

tl: 21 fb: K-H-FL-- lb: 0x0 cc: 1

curc: 2 comc: 2 pk: 0x0140000c.3 nk: 0x0140000c.3

col 0: [ 1] 34

tab 1, row 0, @0x1f79

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 0

col 0: [ 5] 74 31 31 31 31

tab 1, row 1, @0x1f5a

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 1

col 0: [ 5] 74 31 32 32 32

tab 1, row 2, @0x1f3b

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 2

col 0: [ 5] 74 31 33 33 33

tab 1, row 3, @0x1f1c

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 3

col 0: [ 5] 74 31 33 33 33

tab 2, row 0, @0x1f12

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 0

col 0: [ 5] 74 32 31 31 31

tab 2, row 1, @0x1f08

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 1

col 0: [ 5] 74 32 32 32 32

tab 2, row 2, @0x1efe

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 2

col 0: [ 5] 74 32 33 33 33

tab 2, row 3, @0x1ef4

tl: 10 fb: -CH-FL-- lb: 0x2 cc: 1 cki: 3

col 0: [ 5] 74 32 34 34 34

解释一下:

clusterde 一部分结构

flag

lb

cc

curc

comc

pk

nk

nk

length

data

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/222350/viewspace-917324/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    131
  • 访问量
    465725