发布于 2014-12-29 09:16:28
Postgres当前在执行单个查询时不使用并行性。对于每个查询,整个执行引擎都是单线程的(当然,您仍然可以并行执行多个查询)。缺乏“内部查询并行性”是运行Postgres或MySQL的最大缺点之一。基本上,这使得这些引擎不适合在大型数据集上使用。
要执行多线程Postgres,您需要自己将查询拆分为多个查询,或者运行Postgres兼容的变体,如Amazon或Greenplum (前者在代码库中添加了内部查询并行性,后者为您执行拆分)。
每当您觉得需要运行并行查询时,首先问自己:我可以添加没有并行性的索引吗?如果答案是“是”,那就先选择这个选项。不过,你经常需要暴力。当谈到蛮力,香草Postgres不幸不是一个特别好的数据库引擎。
https://dba.stackexchange.com/questions/86685
复制相似问题