基于开销的清理延迟

    在和VACUUM语句执行过程中,系统维护一个内部的记数器,跟踪所执行的各种I/O操作的近似开销。如果积累的开销达到了vacuum_cost_limit声明的限制,则执行这个操作的进程将睡眠vacuum_cost_delay指定的时间。然后它会重置记数器然后继续执行。

    这个特性是缺省关闭的。如需开启,需要把vacuum_cost_delay变量设置为一个非零值。

    vacuum_cost_delay

    参数说明:指定开销超过vacuum_cost_limit的值时,进程睡眠的时间。

    要注意在许多系统上,睡眠的有效分辨率是10毫秒。因此把vacuum_cost_delay设置为一个不是10的整数倍的数值与将它设置为下一个10的整数倍作用相同。

    此参数一般设置较小,常见的设置是10或20毫秒。调整此特性资源占用率时,最好是调整其他参数,而不是此参数。

    该参数属于USERSET类型参数,请参考中对应设置方法进行设置。

    默认值:0

    参数说明:清理一个在共享缓存里找到的缓冲区的预计开销。它代表锁住缓冲池、查找共享的Hash表、扫描页面内容的开销。

    该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

    取值范围:整型,0~10000。

    默认值:1

    vacuum_cost_page_miss

    参数说明:清理一个要从磁盘上读取的缓冲区的预计开销。它代表锁住缓冲池、查找共享Hash表、从磁盘读取需要的数据块、扫描它的内容的开销。

    该参数属于USERSET类型参数,请参考中对应设置方法进行设置。

    默认值:10

    参数说明:清理修改一个原先是干净的块的预计开销。它代表把一个脏的磁盘块再次刷新到磁盘上的额外开销。

    该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。

    取值范围:整型,0~10000

    默认值:20

    vacuum_cost_limit

    参数说明:设置清理进程休眠的开销限制。

    该参数属于USERSET类型参数,请参考中对应设置方法进行设置。

    默认值:200