网上很多文章都说字典管理导致的表空间碎片多,而本地管理的碎片少,是这样吗?
我们都知道ORACLE分配空间的最小单位是EXTEND,而EXTEND是有N个BLOCK组成的。
BLOCK是IO读写的最小单位。
之所以会导致碎片,就是因为引入了EXTEND这个东西,很多时候由于分散的BLOCK组成不了一个EXTNED,导致了这些快永远无法重用。即碎片。(分散的BLOCK可能是由于DROP一些操作引起),如果ORACLE分配空间的最小单位是BLOCK,那么也就不存在什么碎片了,因为块大小在绝大数情况下都是一样的(除非你自己定义了一些块大小)
我想问,EXTEND是物理连续的BLOCK吗?如果不是物理的,那么不论是本地管理还是字典管理都可能会重用到这些分散的块。
如果是物理连续的,那么本地管理和字段管理都可能永远不会重用这些块了。
因此我很质疑在碎片这个层面上说,本地管理比字典管理的好.
请高人回答?
我们都知道ORACLE分配空间的最小单位是EXTEND,而EXTEND是有N个BLOCK组成的。
BLOCK是IO读写的最小单位。
之所以会导致碎片,就是因为引入了EXTEND这个东西,很多时候由于分散的BLOCK组成不了一个EXTNED,导致了这些快永远无法重用。即碎片。(分散的BLOCK可能是由于DROP一些操作引起),如果ORACLE分配空间的最小单位是BLOCK,那么也就不存在什么碎片了,因为块大小在绝大数情况下都是一样的(除非你自己定义了一些块大小)
我想问,EXTEND是物理连续的BLOCK吗?如果不是物理的,那么不论是本地管理还是字典管理都可能会重用到这些分散的块。
如果是物理连续的,那么本地管理和字段管理都可能永远不会重用这些块了。
因此我很质疑在碎片这个层面上说,本地管理比字典管理的好.
请高人回答?
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22034023/viewspace-662239/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22034023/viewspace-662239/