我正在使用mongodb来使用scrapy框架存储网页的原始HTML数据。在网络抓取的一天,25GB磁盘空间被填满。有没有办法以压缩格式存储原始数据。
答案 0 :(得分:6)
从2.8 version of Mongo, you can use compression开始。你将使用WiredTiger引擎进行3级压缩,mmap(默认情况下2.6不提供压缩):
以下是您可以为16 GB数据保存多少空间的示例:
数据来自this文章。
答案 1 :(得分:5)
没有内置压缩功能。有些操作系统提供磁盘/文件压缩,但如果你想要更多的控制,我建议你使用库来压缩它,无论你使用什么编程语言,并手动控制压缩。
例如,NodeJ为此提供了简单方便的方法:http://nodejs.org/api/zlib.html#zlib_examples
如果您选择切换到3.0附带的新存储引擎WiredTiger,您可以选择几种类型的压缩,如文档here所示。当然,您需要在生产工作负载中测试此更改,以查找额外的CPU利用率是否值得接收压缩。
答案 2 :(得分:0)
你可以像这样存储你的字符串来压缩它:myhtml.encode('zlib')