我有一个充满大量 URL 的 sqlite 数据库,它占用了大量磁盘空间,访问它会导致许多磁盘搜索并且速度很慢。平均 URL 路径长度为 97 字节(主机名重复很多,所以我将它们移到外键表中)。有什么好的压缩方法吗?大多数压缩算法适用于大文档,而不是平均少于 100 字节的“文档”,但即使减少 20% 也会非常有用。任何可以工作的压缩算法?不需要什么标准。

最佳答案

使用压缩算法但使用共享字典。

在使用 Unix 压缩命令所使用的 LZC/LZW 算法之前,我已经做过类似的事情。

使用短字符串获得良好压缩的技巧是使用由您正在压缩的 URL 的标准样本组成的字典。

你应该很容易得到 20%。

编辑:LZC 是 LZW 的变体。您只需要 LZW,因为您只需要一个静态字典。 LZC 添加了对在字典/表变满时重置字典/表的支持。

关于sqlite - 如何压缩小字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/479218/

10-16 10:12