ElasticSearch:如果我只想返回一些字段,哪种方式更好



我只想在弹性搜索中从索引book返回一些字段(例如:pricepage(,以下两种方法中哪一种更好?欢迎任何意见。

第一种方式:

searchSourceBuilder.fetchSource(false);
searchSourceBuilder.docValueField("price");
searchSourceBuilder.docValueField("page");

第二种方式:

String[] includesField = {"price","page"};
searchSourceBuilder.fetchSource(includesField,null);

第一个选项将为您提供字段的文档值,即已分析和索引的实际标记。

第二个选项将返回您在源文档中看到的确切值。

所以这两种方法都是正确的。对于数值,两种方法都有效。对于文本值,它只是取决于您实际想要看到的内容。

最新更新