压缩文档中的单个属性可以回收MongoDB中的空间吗?

压缩文档中的单个属性可以回收MongoDB中的空间吗?,mongodb,attributes,compression,document,Mongodb,Attributes,Compression,Document,我有一个MongoDB 3.0文档(配置了WiredTiger Snappy压缩),如下所示: annotPatch": { "_id":"1_789681__GGAATGGAAT", "ensemblVer": 87, "VEPCacheVer": 86, "compressed": 0, "ct" : [{"gn" : "RP11-206L10.9", "ensg" : "ENSG00000237491"}], "xrefs" : [{"id

我有一个MongoDB 3.0文档(配置了WiredTiger Snappy压缩),如下所示:

annotPatch": {
    "_id":"1_789681__GGAATGGAAT",
    "ensemblVer": 87,
    "VEPCacheVer": 86,
    "compressed": 0,
    "ct" :  [{"gn" : "RP11-206L10.9", "ensg" : "ENSG00000237491"}],
    "xrefs" : [{"id" : "ENST00000585745", "src" : "ensemblTranscript"}] 
}
annotPatch": {
    "_id":"1_789681__GGAATGGAAT",
    "ensemblVer": 87,
    "VEPCacheVer": 86,
    "compressed": 1,
    "compressData": "Compressed CT and xRef"
}
假设我压缩了数百万个文档中的某些属性,使它们看起来像这样:

annotPatch": {
    "_id":"1_789681__GGAATGGAAT",
    "ensemblVer": 87,
    "VEPCacheVer": 86,
    "compressed": 0,
    "ct" :  [{"gn" : "RP11-206L10.9", "ensg" : "ENSG00000237491"}],
    "xrefs" : [{"id" : "ENST00000585745", "src" : "ensemblTranscript"}] 
}
annotPatch": {
    "_id":"1_789681__GGAATGGAAT",
    "ensemblVer": 87,
    "VEPCacheVer": 86,
    "compressed": 1,
    "compressData": "Compressed CT and xRef"
}

执行上述操作会以任何有意义的方式回收磁盘空间吗

请在代码标签中添加您的代码,这有助于其他人更好地阅读您的问题谢谢,我已经更新了问题。网站编辑器在您的问题中有一个代码按钮,您最好使用它您使用的MongoDB服务器的特定版本,以及什么存储引擎?如果使用默认情况下压缩数据的存储引擎(例如WiredTiger),与默认配置相比,压缩值可能会增加磁盘空间。不管存储引擎如何,压缩一些嵌入式数据也会降低可用性(例如,如果不先检索压缩数据,就无法索引或搜索压缩数据)。谢谢你,Stennie!