Postgres : Table partitionated 和 Normal Table, Without conditional, 哪个更快?

Postgres : Table partitionated and Normal Table, Without conditional, which one is faster?

在 Postgres 中我有一个按日期分区的 table,我知道在内部按特定日期执行范围搜索时,Postgres 只会分析来自该范围的分区。

但是,如果我不再按日期搜索而是按另一列(例如 id)搜索,会发生什么情况,它是否与正常的 seq 扫描相同table?

我还有一个问题: 如果我有两个 tables 在两个

中具有相同的信息
Normal table : users
Partition table: users_partitioned

在性能层面,哪个更快?

  1. select * 来自用户
  2. select * 来自 users_partitioned

我的目的是想知道分区的tables是否在分区中并行搜索,从而提高响应速度

分区table上的查询会稍微慢一些,因为优化器和执行器都有更多的工作要做。开销应随分区数线性增加。

将不使用并行机制,因为并行工作者发现的行必须在并行领导进程中收集,而这种开销会使并行计划效率低下。