0

我有一个 Postgresql 的自定义并行聚合扩展,我希望每次使用聚合函数时至少有 N 个工作进程执行聚合。

是否可以告诉 postgresql 始终使用至少 N 个工作人员来执行此功能?

4

1 回答 1

1

您可以做的是parallel_workers在表上设置存储参数。然后对该表的每次并行扫描都使用那么多工作人员。但它不能按函数完成,这是有道理的,因为并行性是否有用取决于表。

此外,您将永远无法保证始终使用一定数量的工作人员,因为集群范围内的并行工作人员最大值为max_parallel_workers,如果达到该限制,您将无法获得并行工作人员,即使优化器会喜欢并行化。

我会把这个决定留给优化器。

于 2020-10-21T06:34:14.947 回答