我在twisted python中使用基于事件循环的服务器来存储文件,我希望能够根据文件的可压缩性对文件进行分类。
如果他们从压缩中受益的可能性很高,他们会去一个打开 btrfs 压缩的目录,否则他们会去其他地方。
我不需要确定——80% 的准确率就足够了,而且会节省大量的磁盘空间。但由于也存在 CPU 和 fs 性能问题,我不能只保存压缩的所有内容。
这些文件是低兆字节。如果不使用大量 CPU 并过度延迟事件循环或重构压缩算法以适应事件循环,我就无法测试压缩它们。
是否有任何最佳实践可以快速估计可压缩性?我想出的是从文件的开头获取一小块(几 kB)数据,测试压缩它(可能有一个可以容忍的延迟)并以此为基础做出决定。
有什么建议么?提示?我的推理和/或问题有缺陷吗?