我在Amazon EC2上托管CouchDB数据库,如果我使用支持压缩的文件系统,我想知道我是否可以拥有更好的I / O性能(当然还有更好的磁盘利用率).我记得在某个地方读过CouchDB的未来版本会支持数据压缩,我想知道如果我只是压缩我的文件系统,我现在是否可以获得该功能.我正在考虑使用小型实例,但大型实例也不是不可能的.我担心压缩会在这些实例上杀死cpu,但在测试之前我无法判断.
我听起来太疯了吗?有人试过了吗?
解决方法
我没有尝试过,基于KISS原则,但我认为你会看到一些性能提升.
CouchDB将使用谷歌的Snappy compression算法. Filipe Manana在问题跟踪器COUCHDB-1120中引入了该功能,并且已经将其提交到“trunk”(现在是Git迁移以来的“主”分支).它位于1.2.x分支中,因此当您看到CouchDB 1.2已经发布时,您就会知道它已经发布了.
与此同时,是的,CouchDB基本上只是b-tree查找.甚至Javascript“查询”(它们更像是索引定义)每个文档更新只运行一次.作为一个数据库,CouchDB喜欢良好的存储,您可能会过度配置cpu以满足您的存储需求.因此,看起来似乎有可能通过在压缩上花费更多cpu来获得提升,或者最坏的情况是没有净变化.
如果你做基准测试,我相信CouchDB社区会喜欢看到它们!随意发送到user list或只是推文提到CouchDB.祝好运!