用了Elasticsearch,一口气上5T

如何令Elasticsaerch中的IDF(逆文本频率)在所有fields上计算?

Elasticsearch | 作者 UnderDoge | 发布于2018年07月16日 | 阅读数:2394

在使用elasticsearch时发现,同一个词的IDF会发生变化,有时候还差挺多。

一开始以为是elasticsearch采用分布式分片的原因。默认情况下,它会在每一个分片上计算一个局部的IDF,当数据量不够大时,有可能会造成不同分片上IDF差距很大的情况。但我将所有数据都放在一个分片上,依然出现了这个情况。

经过进一步的排查发现,elasticsearch会在不同的字段上计算IDF,当文档中含有多个字段时,就会出现IDF不同的情况了。

所以我想请问有什么办法可以使elasticsearch在文档所有字段上计算IDF吗?小弟在此先谢过了Thanks♪(・ω・)ノ
已邀请:

code4j - coder github: https://github.com/rpgmakervx

赞同来自:

会不会是你禁用了某些字段的idf

rochy - rochy_he

赞同来自:

试一下在搜索的时候使用 dfs_search_then_query 的方式

要回复问题请先登录注册