在elasticsearch中做两个相同的文档,将所需的磁盘空间加倍

时间:2014-12-23 17:47:12

标签: elasticsearch

例如,当我保存相同的文档10次时,它需要十倍的磁盘空间吗?或者,如果多个文档对于一个字段具有相同的值,则文档的单个字段是保存在索引中还是某些内容,并且文档仅引用此索引?

1 个答案:

答案 0 :(得分:2)

答案是肯定的,不是:)。 默认情况下,数据存储在称为lucene reverse index的聚合数据结构中。 除此之外,您为索引编制的数据也存储在名为_source的字段中。因此,我们可以安全地假设数据以两种不同的格式存储,我们只能使用反向索引进行搜索,但是为了检索实际数据,我们需要从_source获取数据。 因此,如果明确禁用_source,则不会看到磁盘大小的线性增长。 (鉴于段合并是针对单个段进行的)

如果没有禁用,那么数据必须存储在_source(作为原始JSON)和反向索引(数据被标记化然后存储)