分布式排序

分布式排序允许排序超过 query.max-memory-per-node 的数据。分布式排序通过 distributed_sort 会话属性或 distributed-sort 配置属性启用,该属性在协调器的 etc/config.properties 中设置。默认情况下启用分布式排序。

当启用分布式排序时,排序运算符将在集群中的多个节点上并行执行。然后,来自每个 Presto 工作节点的部分排序数据被流式传输到单个工作节点以进行最终合并。此技术允许利用多个 Presto 工作节点的内存进行排序。分布式排序的主要目的是允许对通常不适合单个节点内存的数据集进行排序。可以预期性能改进,但它不会随着节点数量的线性增加而线性扩展,因为数据需要由单个节点合并。