磁盘上压缩文件的大小在我排序后大幅增加



我有一个pandas数据帧,它作为GZIP存储在磁盘上。在RAM上,它大约是90GB,当我使用pandas.to_parquet将其保存为gzip时,它会压缩到3GB左右。

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

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

我不得不猜测,您的文件以前是在另一列上排序的,该列的内容与紧挨着的记录的匹配是压缩的重要组成部分。然后,当您对另一列进行排序时,另一列会被有效地随机化,这样类似的值就不再接近了。您排序的列可能会比以前有更好的压缩,但与最初排序的列相比,这种影响很小。这就是导致压缩的原因。

相关内容

最新更新