8

我正在使用 mongodb 使用 scrapy 框架存储网页的原始 HTML 数据。在一天的网络抓取中,25GB 的磁盘空间被填满。有没有办法以压缩格式存储原始数据。

4

3 回答 3

7

没有内置任何压缩功能。一些操作系统提供磁盘/文件压缩,但如果您想要更多控制,我建议您使用您正在使用的任何编程语言的库来压缩它并手动控制压缩。

例如,NodeJs 为此提供了简单的便捷方法:http ://nodejs.org/api/zlib.html#zlib_examples

3.0 更新

如果您选择切换到 3.0 附带的新存储引擎 WiredTiger,您可以在此处记录的几种压缩类型之间进行选择。当然,您需要在生产工作负载中测试这种变化,以确定额外的 CPU 利用率是否值得进行压缩。

于 2013-08-02T10:59:34.627 回答
7

2.8 版本的 Mongo 开始,您可以使用压缩。您将使用 WiredTiger 引擎 mmap 进行 3 级压缩(在 2.6 中默认不提供压缩):

下面是一个示例,您可以为 16 GB 的数据节省多少空间:

在此处输入图像描述

数据取自这篇文章。

于 2014-12-20T06:35:52.967 回答
0

你可以像这样存储你的字符串来压缩它:myhtml.encode('zlib')

于 2013-09-25T17:07:32.857 回答