部分索引创建会降低CPU的负担

时间:2015-11-09 15:24:27

标签: sql postgresql indexing cpu

我正在尝试在包含数百万个条目的表上创建索引。不幸的是,每当我尝试它时,CPU就会上升,我不得不将其杀死大约90%的CPU利用率,否则会损害生产。

然后我该怎么做才能创建索引?这是一个部分索引。我已将maintenance_work_mem设置为2GB。在数据库运行时,我无法真正更改checkpoint_segmentsCREATE INDEX CONCURRENTLY会更快地缩短数据库。

那我还能做什么呢?

1 个答案:

答案 0 :(得分:1)

创建索引肯定无法在现代多核系统上达到90%的CPU(主要是因为它仅使用一个核心)。您更有可能阻止针对该表的所有查询。请尝试构建索引CONCURRENTLYmanual)。