指数应该包括一个常数'柱?

时间:2015-06-02 18:25:09

标签: postgresql indexing partitioning

我在postgres db中进行分区。根表类似于kpis_weekly(date,personid,metric,value),分区表是kpis_weekly_yyyymmdd,它继承自kpis_weekly表。 我将子表的主键设置为(personid,metric),因为日期在同一分区表中始终相同。

这是正确的做法吗?或者我应该在(date,personid,metric)上创建主键,尽管日期是常数'在同一个分区表中。

我们通常在此表上运行的查询如下:

select * 
from kpis_weekly  
where date = '2011-02-20' 
and personid = 50

select * 
from kpis_weekly  
where date = '2011-02-20' 
and metric = 'centrality' 
and personid in ( 50, 82, 10, 14, 22, 36)

1 个答案:

答案 0 :(得分:0)

如果对人格 - 度量标准是唯一的,那么是的,基于这两列的主键更好。在任何情况下,主表的主键都不能传播到子表,因此包括键的日期是无用的。