Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
d46b1f90
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d46b1f90
编写于
2月 17, 2004
作者:
T
Tom Lane
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Minor editorializing on cost-based vacuum description.
上级
ee33fe88
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
39 addition
and
30 deletion
+39
-30
doc/src/sgml/runtime.sgml
doc/src/sgml/runtime.sgml
+39
-30
未找到文件。
doc/src/sgml/runtime.sgml
浏览文件 @
d46b1f90
<!--
$PostgreSQL: pgsql/doc/src/sgml/runtime.sgml,v 1.24
0 2004/02/17 06:28:05 neilc
Exp $
$PostgreSQL: pgsql/doc/src/sgml/runtime.sgml,v 1.24
1 2004/02/17 07:36:47 tgl
Exp $
-->
<Chapter Id="runtime">
...
...
@@ -995,24 +995,24 @@ SET ENABLE_SEQSCAN TO OFF;
<title>Cost-Based Vacuum Delay</title>
<para>
During the execution of <command>VACUUM</command>
,
<command>VACUUM FULL</command> and <command>ANALYZE</command>
,
the system mantains an internal counter that keeps track of the
cost of the various I/O operations that are performed. When the
accumulated cost reaches a limit
(specified by <varname>vacuum_cost_limit</varname>), the
backend performing
the operation will sleep for a while (specified by
During the execution of <command>VACUUM</command>
and <command>ANALYZE</command> commands
,
the system ma
i
ntains an internal counter that keeps track of the
estimated cost of the various I/O operations that are performed.
When the
accumulated cost reaches a limit
(specified by <varname>vacuum_cost_limit</varname>), the
process
performing
the operation will sleep for a while (specified by
<varname>vacuum_cost_naptime</varname>). Then it will reset the
counter and continue execution.
</para>
<para>
The intent of this feature is to allow administrators t
he
reduce
The intent of this feature is to allow administrators t
o
reduce
the I/O impact of these commands on concurrent database
activity. There are some situations in which it is not very
important that maint
aine
nce commands like
important that maint
ena
nce commands like
<command>VACUUM</command> and <command>ANALYZE</command> finish
quickly; however, it is usually very important th
ese
these
quickly; however, it is usually very important th
at
these
commands do not significantly interfere with the ability of the
system to perform other database operations. Cost-based vacuum
delay provides a way for administrators to achieve this.
...
...
@@ -1020,7 +1020,7 @@ SET ENABLE_SEQSCAN TO OFF;
<para>
This feature is disabled by default. To enable it, set the
<varname>vacuum_cost_naptime</varname> variable to a
reasonable
<varname>vacuum_cost_naptime</varname> variable to a
nonzero
value.
</para>
...
...
@@ -1029,7 +1029,7 @@ SET ENABLE_SEQSCAN TO OFF;
<term><varname>vacuum_cost_page_hit</varname> (<type>integer</type>)</term>
<listitem>
<para>
The cost for vacuuming a buffer found in the shared buffer
The
estimated
cost for vacuuming a buffer found in the shared buffer
cache. It represents the cost to lock the buffer pool, lookup
the shared hash table and scan the content of the page. The
default value is 1.
...
...
@@ -1041,7 +1041,7 @@ SET ENABLE_SEQSCAN TO OFF;
<term><varname>vacuum_cost_page_miss</varname> (<type>integer</type>)</term>
<listitem>
<para>
The cost for vacuuming a buffer that has to be read from
The
estimated
cost for vacuuming a buffer that has to be read from
disk. This represents the effort to lock the buffer pool,
lookup the shared hash table, read the desired block in from
the disk and scan its content. The default value is 10.
...
...
@@ -1053,7 +1053,7 @@ SET ENABLE_SEQSCAN TO OFF;
<term><varname>vacuum_cost_page_dirty</varname> (<type>integer</type>)</term>
<listitem>
<para>
The e
xtra cost add
ed when vacuum modifies a block that was
The e
stimated cost charg
ed when vacuum modifies a block that was
previously clean. It represents the extra I/O required to
flush the dirty block out to disk again. The default value is
20.
...
...
@@ -1065,7 +1065,7 @@ SET ENABLE_SEQSCAN TO OFF;
<term><varname>vacuum_cost_limit</varname> (<type>integer</type>)</term>
<listitem>
<para>
The accumulated cost that will cause the
backend
to briefly
The accumulated cost that will cause the
vacuuming process
to briefly
nap. The default value is 200.
</para>
</listitem>
...
...
@@ -1075,25 +1075,34 @@ SET ENABLE_SEQSCAN TO OFF;
<term><varname>vacuum_cost_naptime</varname> (<type>integer</type>)</term>
<listitem>
<para>
The length of time in milliseconds that a backend will nap
when the cost limit has been exceeded. There are certain bulk
operations that hold critical locks and should therefore
complete as quickly as possible. Because of that it is
possible that the cost actually accumulates far higher than
this limit. To compensate for this, the final naptime is
calculated as <varname>vacuum_cost_naptime</varname> *
<varname>accumulated_balance</varname> /
<varname>vacuum_cost_limit</varname> with a maximum of
<varname>vacuum_cost_naptime</varname> * 4.
</para>
<para>
The length of time, in milliseconds, that the process will nap
when the cost limit has been exceeded.
The default value is 0, which disables the cost-based vacuum
delay feature.
delay feature. Positive values enable cost-based vacuuming.
Note however that on many systems, the effective resolution
of sleep delays is 10 milliseconds; setting
<varname>vacuum_cost_naptime</varname> to a value that is
not a multiple of 10 may have the same results as setting it
to the next higher multiple of 10.
</para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>
There are certain bulk operations that hold critical locks and should
therefore complete as quickly as possible. Cost-based vacuum
delays do not occur during such operations. Therefore it is
possible that the cost accumulates far higher than the specified
limit. To avoid uselessly long delays in such cases, the actual
naptime is calculated as <varname>vacuum_cost_naptime</varname> *
<varname>accumulated_balance</varname> /
<varname>vacuum_cost_limit</varname> with a maximum of
<varname>vacuum_cost_naptime</varname> * 4.
</para>
</note>
</sect3>
</sect2>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录