当前位置: 代码迷 >> DB2 >> db2中,一个表中的一条数据占几多空间取决于什么
  详细解决方案

db2中,一个表中的一条数据占几多空间取决于什么

热度:6126   发布时间:2013-02-26 00:00:00.0
db2中,一个表中的一条数据占多少空间取决于什么
前几天,在优化表的时候,同事说一个表的一条记录占多少空间是取决于pagesize的,相当于如果我创建库的时候设置的是32k的paagesize,那么A表中的一条数据就占32k了,是这样的嘛?
我想知道pagespace是不是可以单独指定pagesize,是不是A表中的没一条数据在库里面的是一page?
db2 优化

------解决方案--------------------------------------------------------
每个表空间是可以单独指定pagesize的。
如果你的表恰好已分配的空间用完了,这时插入一条数据,就会分配一个extent给这个表,这时看起来好像这条数据占用了整个extent,但后续插入的数据还是会继续放到这个extent的page中来,所以单条数据不会占用整个page,除非你的记录很长,一个page只放得下一条。
extent由n个page组成,DB2分配空间是每次分配一个extent,而不是一个page,extent包含多少个page每个表空间也可以在创建时单独指定。
------解决方案--------------------------------------------------------
一条记录不会暂用一个page的,除非是 一条记录很大 。另外,记录不能存储在两个页上,所以尽量要让page的大小和 记录数成正比,减少空间的消耗 。
  相关解决方案