MonetDb 的开发人员之前是否测试过任何其他压缩算法?
也许他们已经测试了其他压缩算法,但它确实对性能产生了负面影响。
那么为什么他们没有改进这个数据库的压缩性能呢?
我是来自中国的学生。MonetDb 对我来说真的很有趣,我想尝试提高它的压缩性能。
所以,我应该确保任何机构以前都这样做过。
如果您能回答我的问题,我将不胜感激。
那是因为我真的需要这个。
太感谢了。
MonetDb 的开发人员之前是否测试过任何其他压缩算法?
也许他们已经测试了其他压缩算法,但它确实对性能产生了负面影响。
那么为什么他们没有改进这个数据库的压缩性能呢?
我是来自中国的学生。MonetDb 对我来说真的很有趣,我想尝试提高它的压缩性能。
所以,我应该确保任何机构以前都这样做过。
如果您能回答我的问题,我将不胜感激。
那是因为我真的需要这个。
太感谢了。
MonetDB 仅使用字典压缩来压缩字符串(Varchar 和 char)类型,并且仅当列中唯一字符串的数量很少时。
集成任何其他类型的压缩(即使是简单的压缩,如前缀编码、运行长度编码、增量压缩……)都需要完全重写系统,因为必须使操作员具有压缩意识(这几乎意味着创建一个新的运算符)。
如果没有完全重写,唯一可行的方法是让专用的压缩操作员压缩/解压缩数据,而不是溢出到磁盘。但是,这将非常接近于 Mavericks 中实现的内存压缩苹果
MonetDB compresses columns using PFor compression. See http://paperhub.s3.amazonaws.com/7558905a56f370848a04fa349dd8bb9d.pdf for details. This also answers the your question about checking other compression methods.
The choice for PFOR is because of the way modern CPU's work, but really any algorithm that doesn't work with branches but with (only) arithmetics will do just fine. I've hit similar speeds with arithmetic coding in the past.