首页 > 解决方案 > 单独压缩每一行还是压缩整个文件更好?

问题描述

我的用例是我整天都在向文件写入条目。我可以将这些条目压缩写入,也可以在事后压缩整个文件。这些文件可能会变得相当大(约 10 GB 未压缩),我同时写入多个文件。其他一些考虑因素是我可以将文件拆分为更小的粒度,以解决每个文件压缩的​​缓冲区问题。对此可能没有明确的正确或错误答案,但只是看看是否还有其他需要考虑的因素。

压缩后,这些文件将被上传到某种存储介质,用于存档和可能的后续分析。

每行压缩

优点 缺点
写作时更节省空间 实施更复杂
阅读时更节省空间,因为我可以按每个条目的粒度解压缩 与压缩整个文件相比,磁盘空间使用效率较低

按文件压缩

优点 缺点
更好地压缩每个文件,因为有更多的数据可以压缩 在压缩之前需要更大的磁盘空间缓冲区来处理全天的写入
实现更简单,正常写入文件,然后使用简单的 linux 工具进行压缩

标签: performancefilearchitecturecompression

解决方案


除非你有非常非常长的行,否则你几乎不会在单行上得到压缩。你试过了吗?

您可以通过累积行来获得两全其美的效果,直到您有足够的压缩空间,然后将它们写入文件。gzlog 就是这样做的。


推荐阅读