gpt4 book ai didi

elasticsearch - 如何防止单个字段存储在_source中

转载 作者:行者123 更新时间:2023-12-02 22:48:25 25 4
gpt4 key购买 nike

我有一个可以通过Hibernate Search 5.6.5和Elasticsearch 2.4.6进行搜索的模型。

@Entity
@Indexed
class Model {

@Field
String normalField;

@Field
@Lob
String reallyBigField;
}

我不希望Elasticsearch存储 reallyBigField。 Hibernate Search提供了 @Field(store = Store.NO)属性,但它是默认属性,并且看起来,Elasticsearch处理存储属性的方式与Lucene不同(Lucene不存储任何内容,Elasticsearch具有单独的源存储)。

最佳答案

使用Store.NO会在字段级别禁用存储。当前的Search 5.x Elasticsearch集成中并未真正使用的字段级存储。

没错,Elasticsearch将内容另外存储在一个单独的_source字段中,这是我们目前在Hibernate Search中用于投影的内容(由于Elasticsearch的某些限制-我们将来可能会做得更好)。

您可以通过修改映射https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html#include-exclude来禁用_source中的此特定字段。但是我们不开箱即用地支持它,因此您必须手动进行。

关于elasticsearch - 如何防止单个字段存储在_source中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52162534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com