有几个因素需要考虑:

排序是一种N.log(N)操作。 14M行的排序很可能适合主内存;500M行的排序可能不适合,因此排序会溢出到磁盘,这会极大地减慢速度。

由于该因子的大小约为30,因此大数据集的标称排序时间约为50倍长-不到两个小时。但是,每个数据值需要8个字节,另外还有大约8个字节的开销(如果您更多地了解mySQL在索引中存储的内容,这是一种猜测)。因此,14M×16≈主存为220MB。而是500M×16≈8 GB主存。除非您的机器有那么多空闲内存(并且MySQL已配置为使用它),否则大排序将溢出到磁盘,这将占据剩余时间的大部分时间。