gpt4 book ai didi

c++ - 用于即时压缩和二进制搜索的最佳压缩库/格式?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:35:38 30 4
gpt4 key购买 nike

我正在寻找具有以下功能的压缩库/格式:

  1. 可以在我写入数据时压缩它。
  2. 将让我高效地对文件进行二进制搜索。
  3. 会让我高效地反向遍历文件。

上下文:我正在编写一个 C++ 应用程序来监听传入数据,对其进行规范化,然后需要将规范化的输出持久保存到磁盘。当我手动对文件运行 gzip 时,数据已经压缩得很好。但是,传入的数据量可能很大,我想即时进行压缩。文件中的每个条目都有一个与之关联的时间戳,我可能只对时间 X 和时间 Y 之间的数据 block 感兴趣,因此为了快速找到该 block ,我希望能够进行二进制搜索。如果可能,甚至反向迭代。是否有任何特定的压缩库/格式特别适合我的项目?我找到了满足 #1 的库,但通常没有记录 #2 或 #3 是否有效。

最佳答案

你可以一次只压缩几个 block ,这样你就可以分别解压它们,然后在压缩数据中的每个 block block 的开头保留一个(未压缩但很小的)索引。这将允许几乎随机访问 block ,并仍然按时间戳保持它们的顺序。对此的限制情况是单独压缩每个 block ,尽管这可能会损害您的压缩率。

关于c++ - 用于即时压缩和二进制搜索的最佳压缩库/格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4971033/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com