One of the nice features in ElasticSearch is ‘The More Like This’ Query. ‘The More Like This’ Query finds documents that are "like" a given set of documents. In order to do so, MLT selects a set of representative terms of these input documents, forms a query using these terms, executes the query and returns the results.
An example:
The really important parameter is the Like() where you can specify free form text and/or a single or multiple documents.
More information: https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-mlt-query.html