runitfirst
runitfirst

Reputation: 323

Given a Document ID find the matching Document in Elasticsearch

I have indexed some articles in the Elasticsearch. Now suppose a user likes an article now i want to recommend some matching article to him. Assuming articles are precise and well written to the point. All articles are of same type.

I know it is like getting all the tokens related to that article and searching all other article on them. Is there anything in elastic search which does this for me...?

Or any other way of doing this..?

Upvotes: 1

Views: 61

Answers (1)

Pandawan
Pandawan

Reputation: 2027

You can use More Like This Query: From the doc it selects a set of representative terms of these input documents, forms a query using these terms, executes the query and returns the results. 

Usage:

{
    "query": {
        "more_like_this" : {
            "fields" : ["title", "description"],
            "like" : [
            {
                "_index" : "your index",
                "_type" : "articles",
                "_id" : "1" # your document id
            }
            ],
            "min_term_freq" : 1,
            "max_query_terms" : 12
        }
    }
}

Upvotes: 2

Related Questions