asm 在什么情况下进行rebalance操作.?
实际上,rebalance主要是在diskgroup中disk member发现变化时,比如add/drop/resize disk操作.
那么,asm diskgroup的rebalance操作,到底需要做什么呢 ?或者说包含了哪些步骤 ?
不同的oracle 版本,其实rebalance操作是有所差异的,在10g版本中,asm rebalance主要包含如下2个操作:
—planning—extent relocatyion
然而在oracle 11.1版本中,引入了asm fast rebalance特性,大概是是说可以将asm实例启动到Restricted mode然后去完成rebalance操作。
在11.2中又有所变化,引入了一个compact操作,所谓compact操作,其实就是数据重组。 也就是说在11.2版本中,rebalance操作应该包含如下几个步骤了:
1) planning2) extent relocation3) compacting
这里针对这几个步骤简单描述一下:
planning: 也就是说oracle会自己计算,绝对需要将那些extent进行relocation以及需要move到什么地方去,应该也是用的hash算法.
extent relocation:这个其实是根据前面planning的结果,将数据按照extent为