我有一张名为"lng_grid_test“的桌子,一开始大约有60万张左右。该表被定义为:
-- Table: public.lng_grid_test
-- DROP TABLE public.lng_grid_test;
CREATE TABLE public.lng_grid_test
(
gid integer NOT NULL DEFAULT nextval('lng_grid_test_gid_seq'::regclass),
geom geometry(LineString,4326),
CONSTRAINT lng_grid_test_pkey PRIMARY KEY (gid)
)
WITH (
OIDS=FALSE
);
ALTER TABLE public.lng_grid_test
OWNER TO postgres;
-- Index: public.lng_grid_test_idx
-- DROP INDEX public.lng_grid_test_idx;
CREATE INDEX lng_grid_test_idx
ON public.lng_grid_test
USING gist
(geom);我向这个表应用了删除请求,将行减少到大约490 000 000。在进一步处理之前,我认为执行真空是准确的。所以我现在在真空里,
INFO: exécution du VACUUM sur « public.lng_grid_test »
INFO: « lng_grid_test » : 3588177 versions de ligne supprimables, 485535819 non supprimables
parmi 5042516 pages
DETAIL: 0 versions de lignes ne peuvent pas encore être supprimées.
CPU 106.20s/230.72u sec elapsed 402.26 sec.你认为我应该停止整个真空过程,只是选择真空分析和冻结选项,还是我应该继续运行真空?而且,如果你认为我应该继续运行这个过程,那么完成真空所需的时间顺序是什么呢?因为我不能在桌子上工作,我也不知道完成吸尘器需要多少时间。谢谢!
发布于 2016-06-16 13:15:47
你永远都不应该停止真空过程。
一个vacuum full将完全重新创建该表,因此运行它所需的时间大约与创建和填充一个全新的表以及用所有490_000_000记录对其进行索引所需的时间一样长。
https://dba.stackexchange.com/questions/141416
复制相似问题