首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >结构化消息压缩

结构化消息压缩
EN

Stack Overflow用户
提问于 2019-11-07 08:04:54
回答 1查看 91关注 0票数 1

是否有用于压缩结构化消息的库?(像protobufs)

我正在寻找比仅仅通过GZip传递序列化的流更好的东西。例如,如果我的消息存储了一个三角形网格,则相邻顶点的坐标将高度相关,因此智能压缩器可以存储增量而不是原始坐标,这将需要更少的位进行编码。

而一般的压缩器,对流结构一无所知,会寻找重复的字节序列,而在这样的数据中,不会有很多字节序列。

理想情况下,在提供模式后,这应该完全自动工作,但我不介意在模式中添加注释,如果到了那个地步。

EN

回答 1

Stack Overflow用户

发布于 2019-11-07 18:18:57

这里的主要问题是,在大多数情况下,编写某种模式所需的工作量与为数据编写预处理器的工作量相似。例如,对于您的三角形网格示例,重新排序数据或在坐标上执行增量可以非常容易地实现,并将很好地支持任何后续的压缩器。

在这个方向上运行的压缩器是ZPAQ。它可以使用为特定数据量身定做的配置文件( sample configuration site包括EXE、JPG、BMP配置以及一个专门的配置来压缩包含数学常数pi的文件)。缺点是这里使用的脚本语言(ZPAQL)使用起来相当复杂,而且您必须了解许多ZPAQ的内部结构。

较早版本的WinRAR使用了一个名为RarVM的虚拟机(虽然现在已被弃用),它允许使用类似汇编程序的代码进行自定义数据转换,在GitHub上有一个带有一些相关工具的open source project named rarvmtools

对于protobuf压缩,有一个Google project called riegeli可以进一步压缩它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58740146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档