我的文档由使用各种fields
组成。现在给出一个输入文档,我想使用输入文档字段找到similar documents
。我怎样才能实现它?
答案 0 :(得分:1)
您还没有提到您的字段类型。一般方法是在copy_to查询中使用catch all字段(使用more like this)。
答案 1 :(得分:1)
{
"query": {
"more_like_this" : {
"ids" : ["12345"],
"fields" : ["field_1", "field_2"],
"min_term_freq" : 1,
"max_query_terms" : 12
}
}
}
您将获得与ID 12345类似的文档。在这里,您只需要指定ID和字段,如标题,类别,名称等,而不是它们的值。
这是另一个没有id的代码,但是你需要指定带有值的字段。示例:获取具有类似标题的类似文档: elasticsearch很快
{
"query": {
"more_like_this" : {
"fields" : ["title"],
"like" : "elasticsearch is fast",
"min_term_freq" : 1,
"max_query_terms" : 12
}
}
}
您可以添加更多字段及其值
答案 2 :(得分:0)
{
"query": {
"more_like_this" : {
"fields" : ["first name", "last name", "address", "etc"],
"like" : "your_query",
"min_term_freq" : 1,
"max_query_terms" : 12
}
}
}
将所有内容放入your_query
。您可以增加或减少min_term_freq
和max_query_terms