Postgres哈希索引性能

时间:2012-10-02 18:34:43

标签: postgresql

我有一个包含1000万个条目的表,其中一个列是电子邮件地址。 我想在这个列上创建一个哈希索引,因为查询都是在相等比较上。

数据库:Postgres 8.3.3
机器:24GB Ram和16芯。

哈希索引创建大约需要51分钟,但是,如果我在电子邮件地址的小写字母上创建哈希索引,则只需不到3分钟!

示例:

  • create index xyz on table_xyz using hash(email):创建此索引需要51分钟
  • create index xyz on table_xyz using hash(lower(email)):创建此索引需要3分钟。

我的maintenance_work_mem设置为16MB。 shared_buffers = 1GB

是什么解释了这种行为?

0 个答案:

没有答案