squence-ORACLE中的缓存

squence-ORACLE中的缓存,oracle,oracle10g,sequence,Oracle,Oracle10g,Sequence,缓存如何预分配该值,以及它如何受到前一个值的影响 它在几个条目之后显示不同的结果。具有缓存20设置的序列在每个实例上缓存20个值,因此RAC集群中的每个实例都从不同的缓存工作 我不太清楚你在几篇文章之后谈论不同的结果是什么意思。我的猜测是,您是说生成的值中存在间隙-这是预期的,Oracle序列将始终存在间隙。当序列具有缓存设置时,间隙的一个来源是,如果序列超出共享池或实例关闭,缓存的值将被丢弃。这不是间隙的唯一来源,因此将序列设置为NOCACHE不会消除间隙。它将以性能为代价消除这一特定的间隙源

缓存如何预分配该值,以及它如何受到前一个值的影响

它在几个条目之后显示不同的结果。

具有缓存20设置的序列在每个实例上缓存20个值,因此RAC集群中的每个实例都从不同的缓存工作

我不太清楚你在几篇文章之后谈论不同的结果是什么意思。我的猜测是,您是说生成的值中存在间隙-这是预期的,Oracle序列将始终存在间隙。当序列具有缓存设置时,间隙的一个来源是,如果序列超出共享池或实例关闭,缓存的值将被丢弃。这不是间隙的唯一来源,因此将序列设置为NOCACHE不会消除间隙。它将以性能为代价消除这一特定的间隙源。

具有缓存20设置的序列在每个实例上缓存20个值,因此RAC群集中的每个实例都从不同的缓存工作

我不太清楚你在几篇文章之后谈论不同的结果是什么意思。我的猜测是,您是说生成的值中存在间隙-这是预期的,Oracle序列将始终存在间隙。当序列具有缓存设置时,间隙的一个来源是,如果序列超出共享池或实例关闭,缓存的值将被丢弃。这不是间隙的唯一来源,因此将序列设置为NOCACHE不会消除间隙。它将以性能为代价消除这一特定的差距来源

start with 1
last value 1
increment by 1
cache 20