标签: vacuum

由于VACUUM查询,Amazon Redshift磁盘使用率为100%

阅读Amazon Redshift documentatoin我在某个400GB的表上运行了一个VACUUM,之前从未进行过清理,以提高查询性能.不幸的是,VACUUM导致该表增长到1.7TB(!!)并使Redshift的磁盘使用率达到100%.然后我尝试通过在超级用户队列中运行CANCEL查询来停止VACUUM(通过运行"set query_group ='superuser';"输入它)但是虽然查询没有引发错误,但这对于继续运行的真空查询

我能做什么?

vacuum amazon-web-services amazon-redshift

9
推荐指数
3
解决办法
9832
查看次数

postgresql 中的真空表

使用,在这一刻上午发现的已经dead_tuples使用下面的查询

select relname from pg_stat_user_tables where n_dead_tup > 0
Run Code Online (Sandbox Code Playgroud)

这将重新调整表名,然后我将运行

VACUUM VERBOSE ANALYZE <table_name>
Run Code Online (Sandbox Code Playgroud)

这是一个好方法还是我需要改变它,如果是这样,请给我一些方法

谢谢

sql postgresql vacuum postgresql-performance

8
推荐指数
1
解决办法
1万
查看次数

Why does vacuum full wait after it is "done"?

I am running a vacuum on a very large table.

When I run it, it says:

bacula=# VACUUM FULL VERBOSE file_partition_19
bacula-# ;
INFO:  vacuuming "public.file_partition_19"
INFO:  "file_partition_19": found 16242451 removable, 21024161 nonremovable row versions in 900380 pages
DETAIL:  0 dead row versions cannot be removed yet.
CPU 5.14s/14.42u sec elapsed 19.61 sec.
VACUUM
Time: 163784.767 ms
bacula=# 
Run Code Online (Sandbox Code Playgroud)

When it does this, it shows up to the CPU line fairly quickly, then waits a long time before it shows the …

postgresql vacuum postgresql-9.3

8
推荐指数
1
解决办法
908
查看次数

为什么真空分析改变查询计划而分析没有?

我想在Postgres中利用仅索引扫描的强大功能,并尝试使用一个表:

CREATE TABLE dest.contexts
(
  id integer NOT NULL,
  phrase_id integer NOT NULL,
  lang character varying(5) NOT NULL,
  ranking_value double precision,
  index_min integer,
  index_max integer,
  case_sensitive boolean,
  is_enabled boolean,
  is_to_sync boolean NOT NULL DEFAULT true
);

insert into dest.contexts select * from source.contexts;

alter table dest.contexts
  add constraint pk_contexts primary key (id, phrase_id, lang);

 CREATE INDEX idx_contexts_
  ON dest.contexts
  USING btree
  (id, is_enabled, lang, phrase_id, ranking_value, index_min, index_max, case_sensitive);
Run Code Online (Sandbox Code Playgroud)

索引涵盖了我想在下一个查询中使用的所有列:

explain analyze
select ranking_value, index_min, index_max, case_sensitive
from dest.contexts
where …
Run Code Online (Sandbox Code Playgroud)

postgresql vacuum sql-execution-plan postgresql-9.4 autovacuum

8
推荐指数
1
解决办法
347
查看次数

当我在 sqlite3 中退出 VACUUM 时会发生什么?

我有一个 > 34 GB 的 sqlite3 数据库。VACUUM当我为此数据库执行显式命令时,该过程花费的时间太长。所以我想知道当我强迫它退出VACUUM任务时会发生什么。

可以认为VACUUM是原子事务吗?

sqlite vacuum

8
推荐指数
1
解决办法
870
查看次数

PostgreSQL:VACUUM FULL 持续时间估计

我在生产中继承了一个 PostgreSQL 数据库,其中有一张大小约为 250 GB 的表。它只有大约一万行,我估计不超过 20 MB。

AUTOVACUUM由于某个时间已关闭,该表变得如此大。(我知道为什么这样做。它将被重新激活,原始问题已得到解决,所以这不是问题的一部分。)

我们的问题是许多查询需要很长时间。例如,aSELECT count(*) FROM foo;大约需要 15 分钟。

现在,在考虑了其他选项之后,我想VACUUM FULL在桌面上运行一个。我尝试估计完成此操作所需的持续时间,以便我可以计划维护时段。

根据我的理解,VACUUM FULL创建一个新表,将所有活动元组复制到其中,并用此副本替换原始表。

我的估计是,这个过程不会比像上面这个表上的简单查询花费更长的时间,因为实时数据的总体大小和数量都非常小。

您是否同意我对“VACUUM FULL”的运行时间的期望在某种程度上是现实的?如果没有,为什么不呢?

是否有估计VACUUM FULL持续时间的最佳实践?

sql postgresql vacuum postgresql-10

8
推荐指数
1
解决办法
7490
查看次数

是否可以从psycopg2或sqlalchemy为PostgreSQL发出"VACUUM ANALYZE <tablename>"?

好吧,这个问题几乎总结了它.我的数据库活动非常密集,我想以编程方式发布真空分析.但是我收到一条错误,指出查询无法在事务中执行.还有其他方法吗?

python postgresql sqlalchemy psycopg2 vacuum

7
推荐指数
2
解决办法
2984
查看次数

使用索引转储postgres数据

我有一个Postgres 9.0数据库,我经常采用它的数据转储.

这个数据库有很多索引,每次我恢复转储postgres启动后台任务真空吸尘器(是吗?).该任务消耗大量处理时间和内存来重新创建已还原转储的索引.

我的问题是:

  1. 有没有办法转储数据库数据和该数据库的索引?
  2. 如果有办法,将值得努力(我的意思是倾销带有索引的数据将比真空吸尘器更好)?
  3. Oracle有一些"数据泵"命令可以更快地实现imp和exp.postgres有类似的东西吗?

谢谢,安德烈

postgresql indexing vacuum

7
推荐指数
2
解决办法
1万
查看次数

PostgreSQL - 查询以确定哪些表当前正在被清理?

我找到了一个查询来查看真空吸尘器运行的时间,但不是当前正在运行的真空吸尘器.(http://heatware.net/databases/postgres-tables-auto-vacuum-analyze/)

有没有要完成此任务的查询?我知道我可以点击pg_stat_activity,但有些真空吸尘器没有表名,而是有pg_toast.pg_toast_3621837,所以这不会100%有效.

postgresql vacuum postgresql-9.2

7
推荐指数
2
解决办法
1664
查看次数

PostgreSQL:如何启用autovacuum?

如何在PostgreSQL中启用autovacuum?我理解目的,我找不到关于如何启用它的简单答案.

postgresql database-administration vacuum autovacuum

7
推荐指数
1
解决办法
6980
查看次数