2015-04-01 81 views
2

我正在使用CouchDB 1.6.1。在蒲團,在概述配置,附件部分有一個字段:compression_level 8 這看起來像的zlib的緊縮給我,也看http://docs.couchdb.org/en/latest/config/misc.html#attachments附件中的CouchDB snappy

在CouchDB的部分,有現場:file_compression活潑

由於據我所知,附件是用zlib壓縮的,而實際的文件是用活潑的?

如果是這樣,有沒有辦法在CouchDB中使用snappy進行附件壓縮?

回答

3

這是正確的:附件只支持gzip壓縮,默認使用文檔和其他數據庫元信息(自1.3版本以來)。附件不支持snappy的原因很簡單 - snappy不是標準的content encoding algorithm,沒有瀏覽器支持它,而幾乎每個HTTP客戶端都廣泛支持gzip。

因此,如果CouchDB以快速壓縮的方式存儲附件,它必須解碼它們並使用gzip編碼,以便以保持廣泛兼容性的方式發送回客戶端。而這種解碼編碼操作相當昂貴。所有其他選項導致與HTTP客戶端不兼容或再次導致運營開銷。對於gzip編碼,CouchDB只是發送附件,因爲它們存儲在數據庫文件中,而無需對其內容進行任何其他操作。