【发布时间】:2021-09-03 07:05:30
【问题描述】:
我在 postgresql 中看到有两种单独的算法,称为外部排序和外部合并用于排序。我的印象是两者都是一样的。据我所知,外部排序是排序算法的集合,当整个批次无法在内存(RAM)中排序时处理大量数据的排序,并且有两个阶段,第一阶段是对小块数据进行排序并将其存储在临时文件中,第二阶段是合并所有这些子文件以获得最终的数据集。
我也知道外部归并排序算法是外部排序技术的一个例子。
所以在我的情况下,外部排序和外部合并不是几乎相同吗? 我想知道区别以及何时使用这些算法(在什么类型的数据上)。
PS:在相同类型的数据上,外部合并比外部排序花费的时间更长。ql
【问题讨论】:
-
您似乎在谈论使用 EXPLAIN ANALYZE 采取的一些查询计划,但我们看不到它们。请发布实际计划。事实上,这太模糊了,无法回答。
标签: sql database postgresql sorting external-sorting