排序后磁盘上压缩文件的大小会大量增加吗?

Size of compressed files on disk increases massively after I sort?

我有一个 pandas 数据框,我以 GZIP 格式存储在磁盘上。在 RAM 上它大约 90GB,当我使用 pandas.to_parquet 将它保存为 gzip 时,它压缩到大约 3GB。

我最近在不同的列上使用 pandas.sort_values 对其进行了排序,当我使用相同的方法保存它时,磁盘上的这个大小突然变成了 60GB。

为什么会发生这种情况,是否有不同的排序/保存方法来防止这种情况发生?

我不得不猜测您的文件之前是在不同的列上排序的,并且该列的内容与紧接在前的记录的匹配是压缩的重要部分。然后,当您对不同的列进行排序时,该列实际上是随机的,因此相似的值不再彼此接近。您排序的列可能比以前有更好的压缩,但与最初排序的列相比,这种影响很小。这就是杀死压缩的原因。