一. 高水位(HWM)及其产生原因
High Water Mark,HWM) 是Oracle(Segment)级别的概念。在仅有DML(比如delete,insert)操作时,高水位线只会增长,不会降低。具体来说,由于程序使用的delete语句不回收使用过的空间,数据虽然删除了,但是高水位线却没有降低,仍然处于之前的水位。
下图为一个Segment内高水位不断增长的示意图:
注:一个表在初次插入记录时,Oracle会为其分配Segment和block。
插入大量数据后,高水位线随之增长
当数据被删除(Delete)后,高水位线并未下降
数据block
已分配的block